操作系统复习笔记(四)——设备管理

一、 I/O系统

I/O设备

类型

按传输速率高低
  • 低速设备:每秒几个字节至数百个字节。键盘、鼠标器、语音输入输出设备
  • 中速设备:每秒钟数千个字节至数万个字节。打印机、激光打印机
  • 高速设备:数百千个字节至数十兆字节。磁带机、磁盘机、光盘机
按信息交换单位
  • 块设备:磁盘。传输效率高,可寻址
  • 字符设备:用于数据输入输出。打印机、鼠标

系统总线

  • ISA总线
  • EISA总线
  • PCI总线:PCI既可以连接ISA,EISA等总线,又可支持pentium的64位系统 ,我们现在使用的PC基本都是PCI总线。最大传输速率4GB/sec

二、 I/O控制方式:

程序I/O方式

在该方式中,CPU不断地测试I/O设备的状态。由于CPU的高速性和I/O设备的低速性, 致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中,造成对CPU的极大浪费。就是因为在CPU中无中断机构。

中断驱动I/O控制方式

在I/O设备输入每个数据的过程中,由于无须CPU干预,因而可使CPU与I/O设备并行工作。仅当输完一个数据时,才需CPU花费极短的时间去做些中断处理。可见,这样可使CPU和I/O设备都处于忙碌状态.

直接存储器访问DMA I/O控制方式

仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。
① 数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块;
② 所传送的数据是从设备直接送入内存的,或者相反;
③ 仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。

三、 中断处理程序

  • 唤醒被阻塞的驱动程序进程
  • 保护被中断的CPU环境
  • 转入相应的设备处理程序
  • 中断处理
  • 恢复被中断的进程的现场

四、设备驱动程序

功能

(1) 接收由I/O进程发来的命令和参数.
(2) 检查用户I/O请求的合法性.
(3) 发出I/O命令,启动I/O设备去完成指定的I/O操作.
(4) 及时响应由控制器或通道发来的中断请求,并根据 其中断类型调用相应的中断处理程序进行处理。
(5) 对于设置有通道的计算机系统,驱动程序还应能够根据用户的I/O请求,自动地构成通道程序。

流程

五、与设备无关的I/O软件

设计目标

(1)与具体设备无关
(2)统一命名
(3)对错误的处理
(4)缓冲技术
(5)设备的分配和释放
(6)I/O控制方式

层次和功能

六、 磁盘存储器管理

磁盘性能简述

磁盘的类型

  • 固定头磁盘:这种磁盘在每条磁道上都有一读/写磁头,所有的磁头都被装在一刚性磁臂中。这种结构的磁盘主要用于大容量磁盘上。
  • 移动头磁盘:每一个盘面仅配有一个磁头,也被装入磁臂中。为能访问该盘面上的所有磁道,该磁头必须能移动以进行寻道。由于其结构简单, 故仍广泛应用于中小型磁盘设备中。

磁盘访问时间

  • 寻道时间(移动头磁盘):
    这是指把磁臂(磁头)移动到指定磁道上所经历的时间。该时间是启动磁臂的时间s与磁头移动n条磁道所花费的时间之和, 即
    Ts=m×n+s
    其中,m是一常数,与磁盘驱动器的速度有关,对一般磁盘, m=0.2;对高速磁盘,m≤0.1,磁臂的启动时间约为2 ms。 这样,对一般的温盘,其寻道时间将随寻道距离的增加而增大, 大体上是5~30 ms。
  • 旋转延迟时间:
    这是指定扇区移动到磁头下面所经历的时间。对于硬盘,典型的旋转速度大多为5400 r/min,每转需时11.1 ms,平均旋转延迟时间Tτ为6.55 ms;如果旋转速度为7200r/min,平均Tτ为4.16 ms。
  • 传输时间:
    这是指把数据从磁盘读出或向磁盘写入数据所经历的时间。 Tt的大小与每次所读/写的字节数B和旋转速度有关 .

磁盘调度

先来先服务(FCFS)

最短寻道时间优选(SSTF)

扫描算法(SCAN)

SSTF算法虽然能获得较好的寻道性能, 但却可能导致某个进程发生“饥饿”(Starvation)现象。因为只要不断有新进程的请求到达, 且其所要访问的磁道与磁头当前所在磁道的距离较近,这种新进程的I/O请求必须优先满足。对SSTF算法略加修改后所形成的SCAN算法, 即可防止老进程出现“饥饿”现象。


循环扫描算法

磁盘高速缓存

磁盘的告诉缓存形式

是指利用内存中的存储空间,来暂存从磁盘中读出的一系列盘块中的信息。因此,这里的高速缓存是一组在逻辑上属于磁盘, 而物理上是驻留在内存中的盘块。高速缓存在内存中可分成两种形式。

  • 在内存中开辟一个单独的存储空间来作为磁盘高速缓存,其大小是固定的,不会受应用程序多少的影响;
  • 把所有未利用的内存空间变为一个缓冲池,供请求分页系统和磁盘I/O时(作为磁盘高速缓存)共享。此时高速缓存的大小不再是固定的。当磁盘I/O的频繁程度较高时,该缓冲池可能包含更多的内存空间;而在应用程序运行得较多时,该缓冲池可能只剩下较少的内存空间。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容

  • 一、概要 1、操作系统的内核。 2、操作系统的五大管理功能:进程管理、存储管理、...
    _Jason___阅读 999评论 0 3
  • 输入输出系统 ——I/O系统 I/O系统的组成 包括: 需要用于输入、输出和存储信息的设备; 1、需要相应的设备控...
    一萌新一阅读 1,201评论 0 1
  • 设备管理 设备管理的主要对象是I/O设备以及设备控制器和I/O通道,主要任务是:完成用户提出的I/O请求,提高I/...
    颜洛滨阅读 1,063评论 0 3
  • 从这一章开始,我们探讨的话题就会与前面的话题稍有不同——我们将开始探讨操作系统对于设备的管理以及它为用户程序提供服...
    夏威夷的芒果阅读 1,394评论 0 0
  • 1. I/O系统组成 包括: 需要用于输入、输出和存储信息的设备; 需要相应的设备控制器; 控制器与CPU连接的高...
    小公举凡阅读 430评论 0 0