1. 操作系统系统基础知识
- 初识文件
- 文件的定义:一组有意义信息的集合
- 文件的属性
- 文件名,标识符,类型,大小,创建时间,修改时间,保护信息等。
- 无结构文件=流式文件,由二进制文件流组成
- 有结构文件=记录式文件,
- 顺序文件:文件中的记录一个接一个顺序排列,定长或变长,可以顺序存储或者链式存储
- 链式存储:无法随机存取,从第一个往后查找
- 顺序存储按照是否与关键字顺序有关,可以分为串结构和顺序结构
- 串结构:记录之间的顺序与关键字无关
- 顺序结构:记录之间的顺序与关键字有关
- 索引文件:索引表本身是定长的顺序文件
- 索引顺序文件:多级索引表嵌套查找
- 顺序文件:文件中的记录一个接一个顺序排列,定长或变长,可以顺序存储或者链式存储
- 文件目录
- 文件控制块(FCB)(实现文件目录关键数据结构)
- 实现文件名和文件地址之间的映射
- 一个文件对应一个FCB,一个FCB就是一个目录项,多个FCB组成文件目录
- 搜索、创建文件、删除文件、显示目录、修改目录、文件名,文件存储物理地址
- 目录结构
- 单级目录结构
- 按名存储,不允许重名
- 两级目录结构
- 主文件目录(MFD)+用户文件目录(UFD)
- 可以重名,但不可以文件分类
- 多级目录结构(树形目录结构)
- 从根目录出发的路径为绝对路径
- 从当前目录出发的路径为相对路径
- 当代操作系统采用方法、不便于文件共享,不方便多个用户间共享
- 无环图目录结构
- 可以共享
- 共享文件不同于复制文件,各个用户指向同一个文件,某一个用户修改了文件数据,其他用户都可以看到
- 单级目录结构
- 索引节点(FCB的改进)(对文件控制块的优化)
- 压缩FCB的大小,只存储文件名,其他信息放到索引节点中,每个磁盘模块可以放更多的目录项,减少磁盘的I/O次数
- 文件控制块(FCB)(实现文件目录关键数据结构)
- 文件的物理结构(文件分配方式)(重要,常考)
- 对非空闲磁盘块的管理
- 连续分配
- 连续分配方式要求每个文件在磁盘上占有一组连续的块,
- 缺点:对文件的拓展不方便,空间利用率低,有很多磁盘碎片。
- 优点:连续分配的文件在顺序读/写的时候最快
- 链接分配
- 隐式分配
- 采用链接分配方式的文件,只支持顺序访问,不支持随机访问,方便拓展,不会有磁盘碎片问题。
- 显式分配
- 把用于链接各物理块的指针显式的存放在一张表中,即文件分配表
- 一个磁盘只会对应一张文件分配表,开机的时候读入内存,常驻内存
- 优点:方便拓展,不会有磁盘碎片问题,支持随机访问
- 缺点:文件分配表会占一定的存储空间
- 对比隐式分配,优点:地址转换时不需要访问磁盘,因此文件访问效率更高
- 隐式分配
- 索引分配
- 索引分配允许文件离散地分配在各个磁盘块中,系统会为每个文件建立一张索引表,索引表记录了文件的各个逻辑块对应的物理块。
- 支持随机访问
- 文件分配方式
- 链接方案
- 多层索引
- 混合索引
- 连续分配
- 对空闲磁盘块的管理
- 存储空间分为目录区,文件区
- 存储空间管理
- 空闲表法
- 为文件分配连续的存储空间,可以采用首次适应,最佳适应,最坏适应等算法来决定要为文件分配那个区间。
- 回收时注意修改表项合并问题
- 空闲链表法
- 空闲盘块链
- 以盘块为单位组成一条空闲链
- 空闲盘区链
- 以盘区为单位组成一条空闲链
- 多个连续的盘块组成盘区
- 空闲盘块链
- 位示图法
- (字号,位号)=(i,j),n表示字长,
- 对应的盘块号
- 字号
- 位号
- 成组链接法
- 空闲表法
- 对非空闲磁盘块的管理
- 文件的基本操作
- 创建文件(create系统调用)
- 1、在外存中找到文件所需的空间
- 2、创建该文件对应的目录项
- 删除文件(delete系统调用)
- 1、找到文件名对应的目录项
- 2、回收文件占用的磁盘块
- 3、删除文件对应的目录项
- 打开文件(open系统调用)
- 1、找到文件名对应的目录项
- 2、将目录项复制到内存中的“打开文件表”中,打开计数器count加1
- 关闭文件(close系统调用)
- 1、将进程的打开文件表相应表项删除
- 2、回收分配给该文件的内存空间等资源
- 3、系统打开文件表的打开计数器count减1,若count等于0,则删除对应表项
- 读文件(read系统调用)
- 根据读指针、读入数据量、内存位置将文件数据从外存读入内存
- 写文件(write系统调用)
- 根据写指针、写出数据量、内存位置将文件数据从内存写出外存
- 创建文件(create系统调用)
- 文件共享
- 基于索引结点的共享方式(硬链接)
- 直接指向文件的索引节点
- 基于符号链的共享方式(软链接)
- 相当于Windows的“快捷方式”
- 基于索引结点的共享方式(硬链接)
- 文件保护
- 口令保护
- 加密保护
- 优点:保密性强,不需要在系统中存储“密码”
- 缺点:编码/译码,需要花费一定时间
- 访问控制
- 在每个文件的FCB中增加一个访问控制表(ACL),该表记录了各个用户可以对该文件执行哪些操作
- 交换机
- 把多个节点连接起来,组成一个计算机网络
- 工作在数据链路层
- 路由器
- 把多个计算机网络连接起来,组成一个互连网
- 工作在网络层
- 互联网
- **互联网:由各大ISP(互联网提供商,电信,移动)和国际机构组建的,覆盖全球范围的互连网(internet)
- **互联网必须使TCP/IP协议通信,互连网可使用任意协议通信
- 现代计算机采用分组交换方式
- 从逻辑角度看
- 资源子网
- 计算机网络中运行应用程序,向用户提供可共享的硬件、软件和信息资源的部分。
- 主要由连接到互联网上的主机组成
- 通信子网
- 计算机网络中负责计算机间信息传输的部分。即把计算机和其他用户装置互连在一起的所有通信设备和介质的总称。
- 主要由通信链路+通信设备+协议 构成
- 注:主机内部实现信息传输的网络适配器层,底层协议 属于通信子网的范畴
- 资源子网
- OSI模型
- 应用层
- 传输单位:报文
- 表示层
- 数据格式转换
- 会话层
- 会话管理
- 传输层
- 端到端的通信,复用和分用,差错控制,流量控制,连接建立,可靠传输管理
- 传输单位:报文段
- 网络层
- 路由选择,分组转发
- 传输单位:数据报
- 数据链路层
- 差错控制,流量控制
- 物理层
- 定义电路接口参数、信号的含义/电气特性
- 传输单位:比特
- 记忆:物联网叔会使用
- 应用层
- TCP/IP模型
- 应用层
- 传输层
- 网络层
- 网络接口层
- 记忆:接网叔用
- 常见的网络设备功能层次
- 物理层
- 集线器
- 中继器
- 数据链路层
- 交换机
- 网桥
- 网络层
- 路由器
- 物理层
- 127开头属于A类地址
- 熟知端口号
- FTP:21
- TELNET:23
- SMTP:25
- HTTP:80
- SNMP:161
- HTTP采用TCP作为运输层协议,但HTTP协议本身是无连接的(通信双方在交换HTTP报文之前不需要先建立HTTP连 接)。