精华内容
下载资源
问答
  • 我经常倾向于直接在Photoshop中工作,在已经存在情况下复制和粘贴图,并在需要时即时创建。 我通常最终会得到一个巨大混乱图像文件,其中包含很多重复。 然后,我通常要做是一遍一遍地挑瓷砖...
  • 三、如果是第一次注册创建项目时,会提示你配置SSH Keys,我这里已经配置过,所以提示语句是蓝色方块内容,如果不配置不能从项目中拉取和下载项目,在这里我会简单介绍怎么配置SSH Keys。 1、下载Git,汉化成功...

    一、注册GitLab账号,点击Projects中的New project。

     

    二、输入项目名称、描述、访问权限,点击Create project。

     

    三、如果是第一次注册创建项目时,会提示你配置SSH Keys,我这里已经配置过,所以提示语句是蓝色方块内容,如果不配置不能从项目中拉取和下载项目,在这里我会简单介绍怎么配置SSH Keys。

    1、下载Git,汉化成功(可不汉化),点击Show SSH Key,然后再点击Generate Key,生成私钥,保存下来,第二步配置GitLab需要用到。

     

    2、找到Settings中的SSH Keys,将保存下的SSH私钥填入保存,就可以了。

     

    四、删除项目

    1、找到Settings中的General,点开Advanced。

     

    2、点开Advanced之后,界面拉到最下面,点击Remove project,输入项目名称,点击Confirm就可删除成功。

     

    其实到这里为止,简单的创建/删除项目已经完成了,但是这只是一个空的壳子,想要在里面放置项目等等,我们需要通过Git命令来操作,在下一篇中我会在文章说明,如何去使用Git命令去上传分支、切换分支、查看当前分支、合并分支、删除分支等。

     

    今天就和大家先说到这里,

    在下Apollo,一个爱分享Java、生活的小人物,

    咱们来日方长,有缘江湖再见,告辞!

    展开全文
  • 在创建自定义镜像的过程中,ECS 会为实例的每磁盘自动创建一个快照,这些快照组合起来构成一个自定义镜像,如下图所示:实例及其所创建的自定义镜像属于同一个地域。例如,实例所在地域为华东 1,则使用它创建的...

    昨天我们已经知道了阿里云 ECS 自定义镜像有什么用,那么我们如何通过阿里云服务器实例来创建自定义镜像呢?在创建自定义镜像的过程中,ECS 会为实例的每块磁盘自动创建一个快照,这些快照组合起来构成一个自定义镜像,如下图所示:

    阿里云服务器如何使用实例创建自定义镜像? - 第1张 - boke112联盟(boke112.com)

    实例及其所创建的自定义镜像属于同一个地域。例如,实例所在地域为华东 1,则使用它创建的自定义镜像也位于华东 1 地域。如果您需要在其他地域使用该镜像,需要先复制该镜像到目标地域(详见『如何将阿里云自定义镜像复制到同账号不同区?』)。

    操作须知

    • 请将实例中的敏感数据删除之后再创建自定义镜像,避免数据安全隐患。
    • 无需停止实例即可创建自定义镜像。创建镜像过程中,不能改变实例的状态,不要停止、启动或者重启实例,避免创建失败。
    • 创建自定义镜像所需的时间,取决于实例磁盘的大小。
    • 使用带数据盘快照的自定义镜像创建实例时,默认根据镜像创建数据盘;如果创建实例的同时创建了数据盘,则默认根据挂载点情况使用该镜像的数据盘快照创建实例的数据盘。
    2020阿里云双十一活动开场啦!新老用户同享“开上云宝箱,领亿元津贴”,爆款S6云服务器100%性能,1核2G低至0.7折仅需84.97元/1年和254.92元/3年,2核4G3M低至295.20元/1年和664.20元/3年,立即前往双11主会场新用户专场拼团专场了解选购;或前往 云小站领取代金券及了解更多活动!

    使用实例创建自定义镜像的操作步骤

    1、打开阿里云官网 >> 登录进入到控制台 >> 在实例列表页面顶部选择目标实例所在的地域 >> 点击左侧导航栏中的实例 >> 找到想要创建自定义镜像的实例 >> 点击该实例右侧对应“更多”>> 磁盘和镜像 >> 创建自定义镜像。具体如下图所示:

    阿里云服务器如何使用实例创建自定义镜像? - 第2张 - boke112联盟(boke112.com)

    2、输入自定义镜像的名称和描述信息后点击【创建】按钮,具体如下图所示:

    阿里云服务器如何使用实例创建自定义镜像? - 第3张 - boke112联盟(boke112.com)

    注意:

    1、创建镜像的同时系统默认会创建相关快照,当前阿里云快照已经商业化,保有镜像会产生一定的快照费用。

    2、请您在使用 linux 系统创建自定义镜像时,注意不要在/etc/fstab 文件中加载数据盘的信息,否则使用该镜像创建的实例无法启动。

    3、您可以对当前 ECS 实例做个完整的镜像模板,包含该实例下的所有磁盘。该实例的每块磁盘会新增一个快照,可以在快照列表中查询。需要等待每块磁盘的快照创建完成,镜像才能可以使用,期间不要更改实例状态,如停止或重启实例,请耐心等待。

    3、稍等片刻,具体等待时间跟实例磁盘数据大小有关,我们可以点击左侧导航栏中的快照和镜像 >> 镜像中看到当前所创建的自定义镜像进度如何,等到进度为 100%的时候,状态就会显示为“可用”。具体如下图所示:

    阿里云服务器如何使用实例创建自定义镜像? - 第4张 - boke112联盟(boke112.com)

    至此,我们已经成功使用阿里云实例创建了一个自定义镜像,接下来我们就可以通过该自定义镜像创建实例,或复制镜像到其他地域,或共享镜像给其他阿里云用户使用了。

    本答案内容是根据阿里云文档进行实际操作,想了解更多内容请移步『使用实例创建自定义镜像』。

    阿里云ECS老用户升级限时特惠,ECS实例规格变配或升级或带宽升级或云盘扩容或实例续费,享6.5折升级折扣!
    展开全文
  • 那么磁盘上文件是如何创建删除如何根据文件名就能找到文件内容? 简单文件系统如下图所示: super block(超级):存放文件系统本身结构信息; inode bitmap:标记inode区中哪些inode块已经被占用; ...

    使用ls -l命令可以查看文件的信息
    这里写图片描述
    ls -l读取的是磁盘上的文件信息,再显示出来。那么磁盘上的文件是如何创建,删除,如何根据文件名就能找到文件内容?

    简单的文件系统如下图所示:
    super block(超级块):存放文件系统本身的结构信息;
    inode bitmap:标记inode区中哪些inode块已经被占用;
    block bitmap:标记block区中哪些block块是空闲的;
    inode区:存放文件属性,如:文件大小,文件所有者,文件最后修改时间等;
    block区:存放文件的内容;
    这里写图片描述
    磁盘上创建新文件
    1.存储属性
    内核现在inode bitmap中找为0的比特位N,将对应比特N上的数据由0变1,在inode区中将第N个inode节点分配,存储文件属性;
    2.存储内容
    从block bitmap中找为0的比特位M,将对应比特位M上的数据由0变1,在block区中将第M个block块分配,存储文件内容;
    3.记录分配情况
    将创建的新文件所用的block块号写进inode节点中,将inode节点与block块关联起来;
    4.添加文件名到目录
    将文件名和inode号的对应关系添加到目录的block块中。

    磁盘上查看文件
    在Linux下一切皆文件,目录也属于文件有block区,目录的block区存储的是文件名和inode号的对应关系;可以在文件所属目录底下通过文件名找到其inode号,查看文件属性;再根据inode和block块的对应关系,查看文件的内容

    磁盘上删除文件
    1.将文件在inode bitmap中对应的inode的比特位由1置为0,再将inode对应的block块的比特位由1置为0;
    2.删除文件所在目录block区中inode和文件名的对应关系。

    展开全文
  • 那么我疑问就来了,hypef是不是已经发展成为有记忆框架了 . 我很悲伤 另外,请注意看我上面"再分别打开新项目和老项目进行测试" 是加粗了,而且强调了两个项目端口不同 第二个现象来了. 当我同时开启...
  • 如何将PPT转word

    2011-12-10 22:58:29
    我们通常用Word来录入、编辑、打印材料,而有时需要将已经编辑、打印好材料,做成PowerPoint演示文稿,以供演示、讲座使用。如果在PowerPoint中重新录入,既麻烦又浪费时间。如果在两者之间,通过一块块地复制、...
  • 如果你是个新手,那绝对在此书会找到很多你感兴趣东西,如果对于 DirectX 你已经足够 了解但就是不知从何开始,这本书可以整理你思路,带你走出山谷奔向另一座高峰。 大概因为作者是一名老师缘故,论述有些...
  • 在演示算法之前,需先在弹出小窗口中输入线性表数据元素及算法参数 i(插入或删除的位置)和 b(被插数据元素)值。顺序表图示窗口在演示屏上方,链表图示窗口在左侧。 2. 有序表操作 算法演示屏...
  • 5.2.2 控制索引创建的并行执行计划 176 5.2.3 在索引创建过程中允许用户表访问 176 5.3 索引选项 177 5.3.1 使用索引INCLUDE 177 5.3.2 使用PAD_INDEX和FILLFACTOR 178 5.3.3 禁用页和/或行索引锁定 178...
  • 你必须知道495个C语言问题

    千次下载 热门讨论 2015-05-08 11:09:25
    3.7 是否可以安全地认为,一旦&&和||左边表达式已经决定了整个表达式结果,则右边表达式不会被求值? 3.8 为什么表达式printf("%d%d",f1(),f2());先调用了f2?我觉得逗号表达式应该确保从左到右求值顺序...
  • 其实也可以使用Profiler理解文件,对于很长不是自己创建的M文件,或者其他不熟悉的M文件,可以使用Profiler查看M文件是如何工作的,用详细报表查看隔行的实际调用情况。 3. 使用Profile函数 Profiler的运行是基于...
  • 尽我所知,除了文中特别加以标注和致谢地方外,论文中不包含其他人已经发表或撰写过研究成果,也不包含为获得东南大学或其它教育机构学位或证书而使用过材料。与我一同工作同志对本研究所做任何贡献均已...
  • 本章讨论如何创建多文件程序,介绍分配内存各种方式、管理内存各种方式以及作用域、链接、名称 空间,这些内容决定了变量在程序哪些部分是可见。 第10章:对象和类 类是用户定义类型,对象(如变量)是...
  • 本章讨论如何创建多文件程序,介绍分配内存各种方式、管理内存各种方式以及作用域、链接、名称 空间,这些内容决定了变量在程序哪些部分是可见。 第10章:对象和类 类是用户定义类型,对象(如变量)是...
  • 31、EJB包括(SessionBean,EntityBean)说出他们生命周期,及如何管理事务?  SessionBean: Stateless Session Bean 生命周期是由容器决定,当客户机发出请求要建立一个Bean实例时,EJB容器不一定要创建...
  • 本章讨论如何创建多文件程序,介绍分配内存各种方式、管理内存各种方式以及作用域、链接、名称 空间,这些内容决定了变量在程序哪些部分是可见。 第10章:对象和类 类是用户定义类型,对象(如变量)是...
  • 本章讨论如何创建多文件程序,介绍分配内存各种方式、管理内存各种方式以及作用域、链接、名称 空间,这些内容决定了变量在程序哪些部分是可见。 第10章:对象和类 类是用户定义类型,对象(如变量)是...
  • 文件:进程创建的信息逻辑单元,文件是对磁盘的建模,可以把文件看成地址空间。 进程可以读取文件,也可以新建文件。文件存储的信息是持久的,不受进程的创建与终止影响。文件只能在其所有者明确删除它情况下才会...

    为什么需要『文件系统』

    • 能够存储大量信息
    • 信息能够脱离进程存在
    • 多个进程能够并发访问有关信息

    磁盘:能够长期存储,广泛使用。不过固态硬盘已经逐渐流行(好像没几年前那么贵了),磁盘支持两种基本操作读块 k,写块 k

    有三个问题

    • 如何找到信息
    • 如何防止一个用户读取另一个用户数据
    • 如何知道哪些块是空闲的

    文件:进程创建的信息逻辑单元,文件是对磁盘的建模,可以把文件看成地址空间。

    进程可以读取文件,也可以新建文件。文件存储的信息是持久的,不受进程的创建与终止影响。文件只能在其所有者明确删除它情况下才会消失。

    文件系统:文件受到操作系统管理,操作系统中处理文件的部分称为『文件系统』。

    本章前两节介绍文件和目录的用户接口,后面讨论文件系统实现。

    4.1 文件

    4.1.1 文件命名

    文件命名规则:在不同系统中不同,有些区分大小写。

    本章后面讨论没有指明文件系统,默认『FAT 文件系统』

    许多操作系统支持文件名用原点隔开两部分,后半部分称为『文件扩展名』,通常表示文件一些信息。

    某些系统(如 UNIX 所有版本),文件扩展名只是约定,并不强迫采用它。但某些处理文件的程序可能关心。

    4.1.2 文件结构

    UNIX 和 Windows 都采用『无结构的字节序列』,文件内容含义只在用户程序中解释。

    字节序列好处是,提供最大的灵活性。用户程序可以任意加入内容,任意命名,操作系统不会提供帮助也不会构成障碍。

    第二种、第三种文件结构看了一眼没必要增加笔记长度。

    4.1.3 文件类型

    目录:管理文件系统结构的系统文件,将在以后章节讨论

    字符特殊文件:与输入输出有关,用来串行 I/O 类设备。

    块特殊文件:用于磁盘类设备

    普通文件:包含有用户信息的文件,一般分为 ASCII 文件和二进制文件。

    ASCII 文件每行结束符在不同类型系统中表达可能不同,优势可以显示和打印,还可以用任何文本编辑器编辑。

    二进制文件:打印出来无法理解,有一定内部结构,使用该文件的程序才了解这种结构。

    魔数:在文件头,表明该文件是一个可执行文件

    4.1.4 文件访问

    顺序访问:从头按顺序读取文件的全部字节

    随机访问文件:以任何次序读取文件中的字节或记录

    两种方法可以指示从何处开始读取文件

    • 每次 read 操作给出开始读文件位置
    • 用一个 seek 操作设置当前位置,seek 操作后从当前位置开始顺序读文件(UNIX 和 Windows 使用该方法)

    4.1.5 文件属性

    文件属性(元数据):操作系统还会保存文件一些相关信息如,文件创建日期时间、文件大小、创建者、所有者。

    4.1.6 文件操作

    使用文件的目的是存储后方便检索。存储和操作不同的系统提供不同的操作,下面是一些常见系统调用。

    • create:创建不包含数据的文件,并设置文件一些属性
    • delete:删除文件,释放磁盘空间
    • open:打开文件,把文件属性和磁盘地址表装入内存,便于后续调用
    • close:关闭文件以释放内部表空间

    4.1.7 使用文件系统调用的一个示例程序

    文件描述符:打开一个文件时返回的一个小整数

    看看过,不记录了

    4.2 目录

    文件系统通常提供『目录』或『文件夹』用于记录文件的位置,很多操作系统中目录本身也是文件

    4.2.1 一级目录系统

    一个目录中包含所有文件

    设计简单,快速定位文件

    4.2.2 层次目录系统

    树形结构的目录

    4.2.3 路径名

    绝对路径名:从根目录到文件的路径组成,以『/』开始

    工作目录(当前目录):当前工作所在的目录,每个进程都有自己的工作目录,对进程而言切换工作目录是安全的

    相对路径名:不以『/』开始,前缀加上工作目录

    『.』:当前目录

    『…』当前目录的父亲目录(根目录还是指向根)

    4.2.4 目录操作

    不同系统中管理目录的系统调用差别比管理文件的系统调用差别大。下面部分系统调用

    • link:链接技术,允许多个目录中出现同一个文件,增加该文件的『i 节点计数器』(记录包含该文件的目录项数),有时称为硬链接
    • unlink:删除目录项,如果目标文件只出现在一个目录中,将它从文件系统中删除,否则只删除指定目录名的连接

    链接文件的一种不同想法『符号链接』(软链接),通过一个文件名指向另一个文件的小文件,文件系统通过沿着路径找到最终文件名,再用源文件操作

    优点是跨磁盘界限,甚至命名远程计算机文件,缺点实现不如硬链接那样有效

    结合别的博客资源等我的理解大概。硬链接直接指向磁盘;软连接指向另个文件,通过另个文件访问磁盘。具体细节后面章节可能会提到。

    4.3 文件系统的实现

    • 文件和目录如何存储
    • 磁盘空间怎么管理
    • 怎么使系统有效可靠地工作

    4.3.1 文件系统布局

    文件系统存放在磁盘上。(毕竟换个电脑插也要有用)

    多数磁盘划分成一个或多个分区,每个分区中有一个独立的文件系统。

    主引导记录(MBR):磁盘的 0 号扇区,用来引导计算机

    块(通过其他博客总结):文件系统中最小单元

    引导块:活动分区第一个块。为统一起见,每个分区都从一个引导块开始,即使不含有可启动操作系统。

    计算机被引导(应该差不多是开机)BIOS 读入并执行 MBR,MBR 确定活动分区,读入引导块,引导块中程序装载该分区中的操作系统。

    超级块:包含文件系统的所有关键参数,计算机启动或文件系统首次使用时,超级块被读入内存。

    4.3.2 文件的实现

    文件存储实现的关键问题:记录各个文件分别用到哪些磁盘块

    1. 连续分配

    最简单分配方案,每个文件作为一连串连续数据块存储在磁盘上。

    优点:实现简单(只需记住磁盘地址和文件块数)、读操作性能号好

    缺点:磁盘会变得零碎

    2. 链表分配

    每个块的第一个字作为指向下一块的指针,其他部分存放数据

    优点:充分利用每一个块,不会因为磁盘碎片而浪费存储空间;目录项只需存储第一块的磁盘地址。

    缺点:读慢,指针占去一些字节,每个磁盘块存储数据字节不再是 2 的整数次幂,降低系统运行效率

    3. 采用内存中的表进行链表分配

    内存分配表(FAT):取出每个磁盘块的指针放入内存的一个表中,这表称为『内存分配表』

    优点:解决了第二种的缺点

    缺点:整张表需要存入内存,磁盘太大内存也需要很大。FAT 不好扩展并应用于大型磁盘 Windows 能够支持。

    4. i 节点

    i 节点:一种数据结构,列出文件属性和文件块的磁盘地址,给定 i 节点就能找到文件所有块。

    优点:对应节点打开时,i 节点才能在内存中。通常比 FAT 所占据空间小,因为这种方法正比于打开文件,FAT 正比于磁盘大小。

    问题:文件所需磁盘块数目超过 i 节点容纳数怎么办?

    一种解决方法,i 节点中最后一个磁盘地址不指向数据块而是指向符加磁盘地址的磁盘块。

    4.3.3 目录的实现

    目录系统主要功能,把 ASCII 文件名映射成定位文件数据所需要的信息。

    还有个密切相关问题,何处存放文件属性

    目录项:描述文件或文件夹的属性、大小、创建时间、修改时间等

    目录项列表两种实现:

    • 简单实现,目录项组成目录项列表,每个文件对应一个目录项
    • 对于 i 节点系统还有一种方法,文件属性存放在 i 节点中,这种方法比上面的好

    怎么实现可变长度的文件名?(笔记只写最后一种)

    固定目录项长度,将文件名放置在目录后面的堆中。需要对堆进行管理,而且处理文件名时缺页中断仍旧会发生。

    怎么快速查找文件名?

    • 线性对目录搜索一遍,慢。
    • 每个目录中使用散列表(hashmap)
    • 将查找结果存入高速缓存,先查询目标是否在高速缓存中

    个人感觉可以整个字典树,想不到缺点。

    4.3.4 共享文件

    问题:B、C 共享文件,B 修改文件,C 的目录如何更新?

    这里没看懂,前面看到这一直认为目录已经在内存中了,通过共享内存就同步了。

    两种解决方案

    • 磁盘块不列入目录,目录指向 i 节点。缺点无法全部删除,(我寻思前面讲硬链接不是说了,删完指向 i 节点的目录项才删除文件,有点迷现在。。不管了快点看。。
    • 通过符号链接,符号链接需要额外的 i 节点(路径长度决定是否有额外磁盘块),优点可以跨磁盘界限

    链接带来一个新问题,文件复制可能多次复制一个被链接文件。

    4.3.5 日志结构文件系统

    日志结构文件系统(LFS)出现原因,未来多数的磁盘访问是写操作,这样一些文件系统中使用的提前读机制,并不能获得更好的性能。

    因为寻道和旋转延迟写操作慢,零碎写操作没有效率。创建 i 节点需要些操作,操作过程死机会导致文件系统严重不一致性,i 节点写操作需要快速完成。

    LFS 设计成即使面对一个大部分由零碎的随机写操作组成任务,同样能够充分利用磁盘的带宽。

    基本思想:将整个磁盘结构化为一个日志,每个一段时间或特殊需要,被缓存在内存的所有未决写操作被放入一个单独的段,作为日志末尾的一个领接段写入磁盘。

    不知道怎么合在一起写就快,大小相同,写的迟了反而快了。。

    有点没看懂算了跳过,这想法由于和现有文件系统不匹配没有广泛应用。

    4.3.6 日志文件系统

    日志文件系统:保存一个用于记录系统下一步将要做什么的日志,即使电脑崩溃,可以通过日志重新完成。

    这个系统已被实际应用。

    考虑一个问题:移除文件,在 UNIX 中需要三步完成

    • 在目录中删除文件
    • 释放 i 节点到空闲的节点池
    • 将磁盘块归还给空闲磁盘块池

    当存在系统崩溃,会造成资源浪费。不管那种在第一步执行都会有严重问题。

    日志文件系统则先写一个日志项,列出要完成的动作,写入磁盘(可能从磁盘读会验证),当日志项被写入磁盘,这些操作才可以进行,操作全部成功后擦除日志项。如果途中系统崩溃,将检查日志查看是否存在未完成操作,有则继续执行。

    需要写入日志的操作是『幂等』的,运行多次和运行一次效果相同。

    原子事务:要么已经完成,要么完全没动(感觉书上这里用『之间』存在歧义,是这两个选项之间,还是时间层面上的之间)

    4.3.7 虚拟文件系统

    同一个操作系统下都会使用很多不同文件系统。

    Windows将不同的文件系统拆分为不同的盘,所以不需要整合统一。

    现代 UNIX 系统尝试将多种文件系统整合到一个统一的结构中。

    绝大多数 UNIX 操作系统都使用『虚拟文件系统』(VFS)概念将多种文件系统统一成一个有序的结构。

    下面介绍一种普遍关于 UNIX 下文件系统的描述。

    POSIX:可移植操作系统接口

    大概就是通过 POSIX,将多个文件系统整合多一起,然后展现给用户。

    VFS 如何工作,一个例子。

    系统启动,根文件系统在 VFS 中注册,装载其他文件系统时,它们也必须在 VFS 中注册。注册就是提供 VFS 需要的信息,装载文件系统后就可以使用了。

    4.4 文件系统管理和优化

    4.4.1 磁盘空间管理

    几乎所有文件系统都把文件分割成固定大小的块存储,块之间不一定相邻。

    1. 块大小

    块大小应该是多少?块大浪费空间,块小降低性能。

    根据调查,详细数据不放了。小文件多,但是大文件占据了大多数磁盘。

    算了跟我没什么关系。

    2. 记录空闲块

    两种方法被广泛采用。

    • 磁盘块链表,用空闲块存放空闲表。
    • 位图,n 个块的磁盘用 n 位位图,用 0/1 表示状态。如果空闲块趋近于连续,也可以记录连续分块状态,而不是单个分块状态。

    空闲表(应该是说内存里的,上面两个应该是磁盘里的),只需内存中保存一个指针块。创建文件取出指针,删除文件添加指针,指针不够读入指针。

    某些情况产生不必要的磁盘 I/O。一个解决方法,指针块满了不是将全部指针写入,而是写入一半。

    对于位图,在内存中只保留一个块是有可能的。通过位图在单一块上处理还有符加好处,磁盘块紧密,减少磁盘臂移动。

    3. 磁盘配额

    多用户操作系统中,防止有人占用太多磁盘空间。

    4.4.2 文件系统备份

    人们往往使用『增量转储模式』

    海量数据可以压缩,但是磁盘上单个坏点就能破坏解压缩算法。

    修改转储算法,记下文件系统的瞬时快照,复制关键的数据结构,然后需要把将来对文件和目录的修改复制到块中。留待空闲时再备份

    越看越觉得和我关系不大跳

    4.4.3 文件系统的一致性

    系统崩溃可能会产生文件系统处于不一致状态。(不是有日志文件系统了吗。。)

    接下来介绍 UNIX 的 fsck 程序。系统崩溃后重新启动可以运行该程序。

    所有文件系统检验程序可以独立地检验每个文件系统(磁盘分区)的一致性。

    一致性检查分为两种:『块的一致性检查』和『文件的一致性检查』

    容我先跳过此节QWQ。

    4.4.4 文件系统性能

    访问磁盘慢,需要优化

    1. 高速缓存

    缓冲区高速缓存(块高速缓存):用来减少磁盘访问次数。

    本书中,高速缓存指一系列块,逻辑属于磁盘,被保存在内存中。

    管理高速缓存有不同的算法,常见算法:检查全部读请求,查看高速缓存中是否有需要块,存在无须访问磁盘,不存在读到高速缓存再复制到需要的地方。

    需要一种快速判断所需块是否存在的方法,比如 hashmap

    如果高速缓存已满,与分页置换类似。

    一个问题,高速缓存如果很久才放回磁盘中,更容易出现修改数据未保存系统崩溃后数据丢失。

    UNIX 中有个系统调用 sync,强制把全部修改过的块立即写入磁盘。系统启动时后台运行一个通常名为 update 的程序每隔一段时间调用一次 sync。

    Windows,有个等价 sync 的系统调用 FlushFileBuffers,不过区别有如果高速缓存中有块被修改立即写回磁盘。

    2. 块提前读

    顺序读取文件,可以提前将块写入高速缓存

    3. 减少磁盘臂运动

    输出文件让输出的块更接近,读的时候磁盘臂运动少点。

    磁盘中部存放 i 节点,减少平均寻道时间。

    算了这部分看看也没必要笔记感觉。

    4.4.5 磁盘碎片整理

    通过移动文件,整理磁盘随便释放一个连续的块空间。

    4.5 文件系统实例

    4.5.1 MS-DOS

    4.5.2 UNIX V7 文件系统

    第十章讨论更新的 UNIX 文件系统。看了一眼不做笔记

    4.5.3 CD-ROM 文件系统

    应该就是光盘,一次性的写。放弃看还挺长。

    4.6 有关文件系统的研究

    4.7 小结

    文件系统是一组文件和目录,以及对文件和目录的操作。

    文件系统设计者需要考虑:

    • 存储区如何分配
    • 系统如何记录哪个块分给了哪个文件:i 节点等
    • 磁盘空间管理:空闲表等
    • 文件系统可靠性:日志文件系统等
    • 文件系统性能:高速缓存、预读取等
    展开全文
  •  第3章 有米之炊——数据库的创建删除  3.1 创建数据库  3.1.1 数据库创建概述  3.1.2 Solaris下用DBCA创建数据库  3.1.3 DIY——Solaris下手工创建数据库  3.1.4 数据库创建疑难解析  3.2 删除...
  • 3.7 是否可以安全地认为,一旦&&和||左边表达式已经决定了整个表达式结果,则右边表达式不会被求值? 36  3.8 为什么表达式printf(%d %d, f1(), f2()); 先调用了f2?我觉得逗号表达式应该确保从左到右求...
  • 新版本的针式PKM总是兼容旧版的知识库,即旧版软件创建的知识库可以自动升级到新版,无需任何转换。 2.Windows平台支持 支持从Windows XP、Win7、Win8、Windows Server2003/2008/2012等 3.Office支持 支持OfficeXP...
  • 《你必须知道495个C语言问题》

    热门讨论 2010-03-20 16:41:18
    3.7 是否可以安全地认为,一旦&&和||左边表达式已经决定了整个表达式结果,则右边表达式不会被求值? 36  3.8 为什么表达式printf("%d %d", f1(), f2()); 先调用了f2?我觉得逗号表达式应该确保从左到右...
  • 4.4.2 创建删除备份表 131 4.4.3 导出、导入、获取和设置操作 132 4.4.4 日志 132 4.5 小结 133 第5章 配置查询优化器 134 5.1 配置还是不配置 134 5.2 配置路线图 135 5.3 设置正确参数 136 ...
  • 3: 在文档中画一个黑色圆, 删除边线, 并按F8创建元件, 然后分别画上各个肢体,如图; 4: 按Ctrl+A全选, 然后右键- 分散到图层. 5: 开启[紧贴至对象]功能, 组合人物并进行造型修改, 以达到良好比例. ...
  •  第3章 有米之炊——数据库的创建删除  3.1 创建数据库  3.1.1 数据库创建概述  3.1.2 solaris下用dbca创建数据库  3.1.3 diy——solaris下手工创建数据库  3.1.4 数据库创建疑难解析  3.2 删除...
  • 目前大部分(70%)数据都是基于关系型数据库进行存储,关系型数据库在操作上,需要实时高速数据读取和存储,一般数据库都采用“”(Block)方式进行数据传输,这样NAS就无法进行数据应用主流:数据库...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 187
精华内容 74
关键字:

如何删除已经创建的块