上一篇大概的介绍了下操作系统的总体轮廓
下面就详细的说下操作系统的具体细节
首先说下设备的管理
设备管理
设备
设别功能 :
实现外围设备启动
外围设备的分配和回收
磁盘的驱动调度
外围设备的中断事件
实现虚拟设备
设备分类
独占设备
地址的转换
共享设备
虚拟设备实现独占设备
联机同时外围设备操作
由预输入程序和换输出程序
设备的启动和I/O中断处理
通道的出现
外围设备启动
cpu启动
通道执行
磁盘调度
移臂调度
先来先服务
最短时间
电梯调度
旋转调度
进程切换的原因
进程工作完成被取消
由运行态转为等待状态
由等待状态编程就绪状态
由运行态转为就绪状态
设备管理中旋转调度的问题
有三种情况分别是
若干请求者访问同一磁头下的不同扇区
访问不同磁头下的不同编号扇区
访问不同磁头下的相同扇区
对于1,2两种情况,旋转调度总是先到达读写磁头位置下的扇区进行传送,
对于3的情况,是请求置顶的扇区会同时达到磁头下,根据磁头可从中任意选择一个磁头进行读写操作。
虚拟设备,利用通道和中央处理器的并行工作能力,就可以使用一台计算机完成上述三台计算机的任务
操作系统设计两个程序,预输入程序和缓输出程序
代替上述两台外围计算机的工作
磁盘上开辟出输入井和输出井
分别存放作业信息和作业执行结果
存储管理
用户调用设备使用的是设备的设备相对号
然后转换为设备的绝对号
文件的存储是磁盘
磁盘的结构如下
柱面
磁头
扇区
磁头是沿着径向的走动
移臂是沿着切向的
磁道是一圈一圈的,有外向里的
一个盘面上有很多的磁道,
而扇区是由多个磁道组成的一个弧形
磁头是从上到下的进行编号的
柱面是由多个盘面上的磁道进行组合的
文件的存储是有两种结构
按用户的文件逻辑存储结构和按磁盘的文件存储结构
文件存储结构的类型
顺序
连接
索引结构
在磁盘中是按
文件目录 |
|
文件分配表 |
分配表中放着文件的具体地址 |
存放的
如果查找则按
文件链接结构和索引结构进行查找
'文件链接结构是快的末尾放着下一个快的地址,
最后一个块的末尾是0
索引结构是
为每一个文件建立一个表,指出每个文件的存放地址.
需要的时候检索引表就可以知道该文件的位置.同时在索引表中登录记录的存放地址
然后磁盘就进行具体的读取文件
读取文件的方式如何呢
这里就用到了磁盘的驱动调度
首先是进行移臂调度
然后是旋转调度
移臂调度是寻找时间
角度调度是延迟事件
传送时间是读写信息的时间
移臂调度的三种方式
先来先服务
最短寻找时间优先
和电梯调度
处理器作业调度问题
作业调度的计算方法有三种
先来先服务算法
计算时间短的作业
响应比高者优先算法
对各算分分析如下
先来先服务算法
如
作业 |
进入时间 |
需要时间 |
开始时间 |
完成时间 |
周转时间 |
|
1 |
8.0 |
2 |
8.0 |
10.0 |
2 |
|
2 |
8.5 |
0.5 |
10.0 |
10.5 |
2 |
|
3 |
9.0 |
0.1 |
10.5 |
10.6 |
1.6 |
|
分别列出这三种算法管理下各个作业的开始时间、完成时间和周转时间。(注意:忽略系统开销。)如果给出了主存
控空间,那么就要按照主存控件分配计算
这里没有主存空间,可以依次计算
作业执行时一次一个的计算,不能一次执行多个,所以上一个作业的结束时间就是下一个作业的开始时间
作业的周转时间是作业的结束时间 ---作业的进入时间
计算时间最短优先算法
由于作业是一次进入输入井的,所以该算法仍将依次把作业装入主存储器,当A执行完成时,这时候已经装入了B和
C。这个时候就得按照时间短的作业优先算法了
作业 |
进入时间 |
需要时间 |
开始时间 |
完成时间 |
周转时间 |
|
1 |
8.0 |
2 |
8.0 |
10.0 |
2 |
|
2 |
8.5 |
0.5 |
10.1 |
10.6 |
2.1 |
|
3 |
9.0 |
0.1 |
10.0 |
10.1 |
1.1 |
|
作业的平均周转时间是
(2+2.1+1.1)/3=1.7小时
响应比高者优先算法
响应比=等待时间/计算时间
高的先进入
作业 |
进入时间 |
需要时间 |
1 |
8.0 |
2 |
2 |
8.5 |
0.5 |
3 |
9.0 |
0.1 |
作业调度时间是9:00,
计算作业的被选中的次序是怎样的
作业1等待时间60分钟,2是30分钟,3是0分钟
响应比是
1为 60/120=0.5
2为 0.5/0.5=1
3为0
所以2先执行
然后执行完后在重新就算
1为 90/120
3为 30/30=1
所以3先执行
以上为操作系统的简单的几个章节 说明,后面会再进行具体的说明的