文件与文件目录的逻辑结构

知识结构

  • 文件逻辑结构
    • 无结构文件
    • 有结构文件
  • 目录结构
    • FCB与索引节点
    • 单级、两级、多级目录
  • 文件共享
    • 硬链接
    • 软链接
  • 文件保护
    • 口令
    • 密码
    • 访问控制

文件的逻辑结构

文件的逻辑结构是从用户观点出发看到的文件的组织形式;指数据逻辑上怎么组织起来的

  • 无结构文件
  • 有结构文件

无结构文件(流式文件)

数据以字节流或字符流的逻辑形式体现;那些对基本信息单位操作不多的文件可采用这种结构;如源文件程序、目标代码文件;

有结构文件

  • 顺序文件:记录一般定长
    • 串结构:记录按存入时间先后排序
    • 顺序结构:所有记录按关键字顺序排列
  • 索引文件:由索引表指示逻辑文件
    • 可变长记录
    • 定长记录
  • 索引顺序文件:对记录分组
  • 直接文件或散列文件:给定记录的键值或通过散列函数转换的键值决定记录的物理地址

特点

  • 顺序文件:批量操作时效率最高
  • 索引文件:通过添加索引表增加检索速度,索引表本身是定长记录的顺序文件;如果记录很多,索引表可能会很大;
  • 顺序索引文件:记录分组,查找时,先查找组内第一个关键字,再在组内查找;最好情况查找 n \sqrt n n 次;提高了检索速度;和索引文件一样增加了索引表的存储空间;
  • 直接文件(散列文件):速度很高,但是可能出现冲突

文件目录的逻辑结构

即文件逻辑上如何被组织的

  • 文件控制块
  • 索引节点
  • 目录结构

文件控制块

FCB的有序集合成为文件目录,一个FCB就是一个文件目录项,它包含一下信息:

  • 基本信息:文件名、文件物理位置、文件逻辑结构、文件物理结构
  • 存取控制信息:文件存取权限
  • 使用信息:文件建立时间、修改时间

索引节点

检索目录时,只需要文件名,于是将文件名与文件描述信息分开放,文件描述信息单独形成一个索引节点;一个文件目录项指向一个索引节点

  • 磁盘索引节点:文件主标识符、文件类型、文件存取权限、文件物理地址、文件长度、文件链接计数、文件存取时间
  • 内存索引节点:在上面基础上额外增加:内存索引节点编号、状态(结点是否被上锁或修改)、访问计数、逻辑设备号、链接指针;

目录结构

  • 单级目录结构:实现了按名存取,查找速度慢,文件不允许重名,不便于文件共享、不适用于多用户os
  • 两级目录结构:可解决多用户之间的文件重名的问题,可以在目录上实现访问权限,缺乏灵活性,不能分类;
  • 多级目录结构:可以很方便的对文件分类,更有效地进行文件的管理和保护,但是增加了磁盘访问次数,不便于文件共享;为每一个共享节点设置一个共享计数器;
  • 无环图目录:可以实现文件共享,但是管理很复杂;

文件共享

  • 基于索引节点(硬链接):指向同一个索引节点
  • 符号链接(软链接):保存共享文件的路径名;需要根据路径查找目录,直到找到索引节点,因此开销大,访问磁盘次数增加,符号链接的索引结点也耗费磁盘空间

显然的,硬链接比软连接快

文件保护

  • 访问控制
  • 口令
  • 密码

特点:

  • 访问控制:由系统实现,可以使用复杂的访问方法,增加的访问控制信息长度无法估计,且能导致复杂的空间管理
  • 口令:用户请求访问时给出相应口令,时间空间开销不多,但口令存在系统内部,不安全;
  • 密码:用户对文件加密,访问时用密钥解密,保密性强,节省存储空间,但编码、译码需要一定时间

密码和口令都是防止用户文件被他人存取或窃取,没有控制用户对文件的访问类型;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值