文件管理
1.文件管理
1.1一个文件有哪些属性?
文件名:由创建文件的用户决定文件名,主要是为了方便用户找到文件,同一目录下不允许有重名文件。标识符:一个系统内的各文件标识符唯一,对用户来说毫无可读性,因此标识符只是操作系统用于区分各个文件的一种内部名称。
类型:指明文件的类型
位置:文件存放的路径(让用户使用)、在外存中的地址(操作系统使用,对用户不可见)
大小:指明文件大小创建时间、上次修改时间文件所有者信息
保护信息:对文件进行保护的访问控制信息
无结构文件(如文本文件)——由一些二进制或字符流组成,又称“流式文件”。
有结构文件(如数据库表)——由一组相似的记录组成,又称“记录式文件”。
记录是一组相关数据项的集合
数据项是文件系统中最基本的数据单位。
1.2文件内部的数据应该怎样组织起来
用户可以自己创建一层一层的目录,各层目录中存放相应的文件。系统中的各个文件就通过一层一层的目录合理有序的组织起来了。
目录其实也是一种特殊的有结构文件(由记录组成)
1.3操作系统应该向上提供哪些功能
可用几个基本操作完成更复杂的操作,比如:“复制文件”:先创建一个新的空文件,再把源文件读入内存,再将内存中的数据写到新文件中
读/写文件之前,需要“打开文件”
读/写文件结束之后,需要“关闭文件”
1.4从上往下看,文件应如何存放在外存
操作系统以“块”为单位为文件分配存储空间,因此即使一个文件大小只有10B,但它依然需要占用1KB的磁盘块。外存中的数据读入内存时同样以块为单位
类似于内存分为一个个“内存块”,外存会分为一个个“块/磁盘块/物理块”。每个磁盘块的大小是相等的,每块一般包含2的整数幂个地址(如本例中,一块包含2^10个地址,即1KB)。同样类似的是,文件的逻辑地址也可以分为(逻辑块号,块内地址),操作系统同样需要将逻辑地址转换为外存的物理地址(物理块号,块内地址)的形式。块内地址的位数取决于磁盘块的大小
与内存一样,外存也是由一个个存储单元组成的,每个存储单元可以存储一定量的数据(如1B)。每个存储单元对应一个物理地址
1.5其他需要由操作系统实现的文件管理功能
文件共享:使多个用户可以共享使用一个文件
文件保护:如何保证不同的用户对文件有不用的操作权限