The-Review-of-OS

 · 2019-12-9 · 次阅读


Chapter 1

###操作系统引论###
什么是OS(Operating Systems)?
操作系统是用来组织和管理计算机的软件和硬件资源,合理的对各类作业进行调度,方便用户使用的程序的集合。
OS的目标?
方便性,有效性,可扩充性,开放性
研究OS作用的几种角度(OS的作用)
资源管理的角度—OS是计算机资源的管理者
用户的角度——是用户的接口
机器扩充的角度—虚拟机
经OS提供的资源管理功能和各种服务功能把裸机改造成为功能更强使用更方便的机器,称为虚拟机。
再多用户系统中,对每一位用户而言都独占一台处理机。

操作系统发展的动力

提高计算机资源利用率
方便用户
器件的不断更新换代
计算机体系结构的不断发展
不断提出新的应用需求

操作系统的发展过程

无操作系统的计算机系统
人工操作方式
批处理系统
单道批处理系统
多道批处理系统
分时系统
实时系统
微机操作系统
多处理机操作系统
网络操作系统
分布式操作系统
嵌入式操作系统
。。。。。。
早期计算机系统(手工操作–人机矛盾)

脱机输入/输出方式(缓和了人机矛盾)

晶体管批处理系统

多道程序系统(多道批处理系统)

吞吐量:单位时间(1小时)内系统所处理的作业个数
周转时间:从作业进入系统到作业退出系统所有的时间
平均周转时间:同时参与系统运行的几个作业的周转时间的平均值

分时系统(Time-Sharing System)
分时系统的产生
>推动分时系统形成和发展的主要动力是用户的需求
>人机交互
>共享主机
>便于用户上机

实时系统:计算机能及时响应外部事件的请求,在规定的时间内对该事件的处理,并控制所有实时设备和实时任务协同一致的运行
>按是否呈现周期性分为
>周期性和非周期性
>对截止时间的要求划分
>硬实时任务和软实时任务
实时系统的功能要求
>实时时钟管理 定时任务,延迟任务
>连续人–机对话
>过载的保护
>高可靠性
现代OS的特征和服务
并发
>并发性
在一段时间内,有多道程序在宏观上同时执行,多道程序设计导致多个程序并发执行
>并行性(多处理机的情况下发生)
共享
>多道程序,多个用户作业共享有限的计算机系统资源
虚拟(Virtual)
>把物理上的一个变成逻辑上的多个或扩大容量
>常见OS中的虚拟技术
虚拟处理机,虚拟内存,虚拟外部设备,虚拟信道等
>虚拟的主要实现方法
分时使用
异步性
>在OS控制下的多个作业的执行顺序和每个作业的执行顺序时间是不确定的。而不是OS本身的功能不确定或用户程序的结果不确定。
OS的功能

处理机管理
存储管理
设备管理
信息管理
用户接口
OS的层次模型
用户接口(命令接口、程序接口、图形用户接口)
对对象操纵和管理的软件集合(处理机管理软件、存储器管理软件、设备管理软件、文件管理软件)
操作系统对象(处理机、存储器、设备、文件)

微内核OS结构
>采用基于客户/服务器模式的微内核结构
>操作系统被分为:微内核和多个服务器两部分
>足够小的内核:微内核并非是一个完整的OS而是将操作系统最基本的部分放入微内核
>与硬件紧密相关的部分
>一些较基本的功能
>客户与服务器之间的通信
微内核的基本功能
>进程管理
>低级存储器管理
>中断和陷入处理
微内核操作系统的优点
>提高系统的可扩展性
>增强了系统的可靠性
>可移植性强
>提供分布式系统的支持
>融入了面向对象技术
存在的问题
>增加了上下文切换次数0

Chapter8 磁盘存储器的管理

外存分配方法
连续分配(为每个文件分配一组相邻接的盘块,这种文件叫物理上的顺序文件)

外存的链接分配分为显示链接与隐式链接
>隐式链接:在文件的目录项中记录该文件的第一和最后一个盘块的指针,每个块中的指针指向文件的下一物理块号
>改进:将几个盘块组成簇,以簇为单位分配

>显示链接:将链接文件各物理块的指针显示地放在内存的一一张链接表中,该表再整个磁盘仅有一张。在FCB的物理地址中填写其首指针所对应的盘块号。
>FAT(File Allocation Table):文件分配表,整个磁盘设置一张,放在内存中,在FAT表中有所有盘块的记录项,在每个记录项末尾记录有下一个盘块在FAT表中的位置。
>缺点:不能直接存取;FAT占较大内存空间。

文件分配表空间开销计算(FAT12)
FAT表中最多允许4096个表项
每个盘块的大小为512字节
磁盘分区的总量4096*512B=2MB
一个磁盘支持4个逻辑分区,所以磁盘最大容量为:8MB
不再以盘块进行分配,而是以簇为基本单位。簇是一组连续的扇区,在FAT中,簇的大小一般为2n个盘块。
同理FAT16与FAT32分别最大表项数目是2的16次个

NTFS(new technology file system)
特点:
>使用64位磁盘地址
支持长文件名,单个文件名限制在255个字节,全路径名为32767个字节
具有系统容错功能
提供了数据的一致性
还提供了文件加密、文件压缩等功能
索引组织方式
索引文件:要求为每一文件建立一张索引块(表),其中记录了分配给该文件的所有盘块号。
两级/多级索引分配
>两级索引、盘块大小1KB、盘块号占4B
则一个索引块可含 1KB/4B=256个盘块号,于是两级索引最多可含256×256 = 64K个盘块号,允许文件最大长度为64MB

文件存储空间管理
空闲表法,属于连续分配方式,适用于对换空间,对于文件系统,当文件较小时(1~4个盘块),对于多媒体文件,为了减少磁头寻道时间,也采用连续分配方式。
空闲盘区的分配
首次适应算法
循环首次适应算法
最佳适应算法
最坏适应算法

>空闲盘块链:将磁盘上所有空闲空间,以盘块为单位拉成一条链。
>分配和释放顺序:从头分配,从尾回收。

位示图
利用位示图(即二维数组Map[m,n])的一位(0/1)来表示磁盘中的一个盘块的使用情况,磁盘上所有盘块都与一个二进制位相对应

盘块的分配

Var Map: array [1..m, 1..n] of bit; 顺序扫描位示图,找出一个或一组其值均为空闲的二进制位 将所找到的一个或一组二进制位Map[i, j]的行/列号转换为与之对应的盘块号b:b = n(i-1) + j 按盘块号分配盘块,同时修改位示图,令map[i,j]=1

盘块的回收

将回收盘块的盘块号b转换为位示图中的行号i和列号j: i = (b-1) DIV n + 1; j = (b-1) MOD n + 1; 按盘块号回收盘块 根据回收盘块对应二进制位的行/列号修改位示图,令map[i,j]=0 提高磁盘I/O速度的途径 (1)改进文件的目录结构以及检索目录的方法来减少对目录的查找时间 (2)选取好的文件存储结构,以提高对文件的访问速度 (3)提高磁盘的I/O速度,能将文件中的数据快速地从磁盘传送到内存中,或者相反。 虚拟盘:RAM盘