
需要用于输入、输出和存储信息的设备;
需要相应的设备控制器;
控制器与CPU连接的高速总线;
有的大中型计算机系统,配置I/O通道;
I/O系统的基本功能
1)主要功能:
1.隐藏物理设备细节,方便用户
用户使用抽象的I/O命令即可
2.实现设备无关性,方便用户
用户可用抽象的逻辑设备名来使用设备,同时也提高了OS的可移植性和易适应性。
3.提高处理机和设备的并行性,提高利用率:缓冲区管理
4.对I/O设备进行控制:控制方式、设备分配、设备处理
5.确保对设备正确共享:虚拟设备及设备独立性等
6.错误处理
I/O系统的层析结构和模型
层次结构:系统中的设备管理模块分为若干层次
层次间 *** 作:下层为上层提供服务,完成输入输出功能中的某些子功能,并屏蔽功能实现的细节。
I/O软件系统的层次
.中断处理程序:处于IO系统的底层,直接与硬件交互
.设备驱动程序:
处于底层,是进程和控制器之间的通信程序
功能:将上层发来的抽象IO请求,转化为IO设备的具体命令和参数,并把它装入寄存器中
.设备独立性软件
I/O系统接口:块设备接口,流设备接口,网络通信接口
设备控制器
设备并不直接与CPU通信
计算机中的一个实体——“设备控制器”负责控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。
控制器是CPU与I/O设备之间的接口,作为中间人接收从CPU发来的命令,并去控制I/O设备工作,以使处理机脱离繁杂的设备控制事务。
常作成接口卡插入计算机
可编址,不同类:控制一个设备时只有一个地址,若连接多个设备则含有多个设备地址;管理的复杂性因设备而异,分为字符设备控制器、块控制器
基本功能
1.接收和识别CPU命令(控制寄存器:存放命令和参数)
2.标识和报告设备的状态(状态寄存器)
3.数据交换(数据寄存器)
4.地址识别(控制器识别设备地址、寄存器地址。地址译码器)
5.数据缓冲(协调I/O与CPU的速度差距)
6.差错控制
I/O逻辑
通过一组控制线与处理机交互
cpu要启动一个设备时,将启动命令发送给控制器;
同时通过地址线把地址发送给控制器
控制器的I/O逻辑对收到的地址和命令进行译码,再根据所译出的命令选择设备进行控制。
实现CPU与设备控制器之间的通信(共有三类信号线)
数据线:数据线通常与寄存器相连(数据寄存器,控制/状态寄存器)
地址线
控制线
I/O通道
当设置通道后,CPU只需要向通道发送一条I/O指令即可不在干预后续 *** 作,通道形成通道程序,执行I/O *** 作,完成后向CPU发中断信号。
主要目的:
建立更独立(数据传送的独立,I/O *** 作的组织、管理及结束也尽量独立)的I/O *** 作,解放CPU。
实际上I/O通道是一种特殊的处理机(指令类型单一,只用于I/O *** 作,通道没有内存,他与CPU共享内存)
通道类型
根据其控制的外围设备的不同类型,信息交换方式也可分为:
字节多路通道。数组选择通道。数组多路通道
瓶颈问题:由于通道价格昂贵,致使数量较少使它成为I/O系统的瓶颈,进而造成系统吞吐量的下降
字节多路通道
一个通道常通过多个子通道连接多个设备控制器
多个设备,通过非分配型子通道以字节为单位交叉轮流使用主通道传输自己的数据。
在一般的计算机系统中,设备管理的主要功能包括:作业管理、文件管理、存储管理、设备管理、进程管理。
1、作业管理
包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等。
2、文件管理
又称为信息管理。主要涉及文件的逻辑组织和物理组织,目录的结构和管理。就是 *** 作系统中实现文件统一管理的一组软件、被管理的文件以及为实施文件管理所需要的一些数据结构的总称。
3、存储管理
实质是对存储空间的管理,主要指对主存的管理。它的主要功能包括分配和回收主存空间、提高主存利用率、扩充主存、对主存信息实现有效保护。
4、设备管理
实质是对硬件设备的管理,其中包括对输入输出设备的分配、启动、完成和回收。设备管理的首要任务是为了这些设备提供驱动程序或控制程序,以使用户不必详细了解设备及接口的技术细节,就可方便地对这些设备进行 *** 作。
5、进程管理
实质上是对处理机执行时间的管理,即如何将CPU真正合理地分配给每个任务。进程是正在运行的程序实体,并且包括这个运行的程序中占据的所有系统资源,比如说CPU(寄存器),IO,内存,网络资源等。
扩展资料:
计算机系统文件管理的功能:
① 集中存储,统一的文档共享;
②权限管理,可针对用户、部门及岗位进行细粒度的权限控制,控制用户的管理、浏览、阅读、编辑、下载、删除、打印、订阅等 *** 作;
③ 全文索引,可以索引Office、PDF等文件内容,快速从海量资料中精准查找所需文件;
④ 文档审计,描述了文档生命周期全过程中的每一个动作,包括 *** 作人、动作、日期时间等信息,通过审计跟踪您可以全局掌握系统内部所有文件的 *** 作情况;
⑤ 版本管理,文档关联多版本,避免错误版本的使用,同时支持历史版本的查看、回退与下载。
⑥ 自动编号,可自由组合设计编号规则;
⑦ 锁定保护,文档作者和管理权用户可将文档锁定,确保文档不被随意修改。当文档需要修改或删除时,可以解锁,保证文档的正常 *** 作;
⑧ 规则应用,系统支持为目录设定规则,指定动作、条件和 *** 作,当动作触发符合设定的条件,系统则自动执行规则的 *** 作;
⑨ 存储加密,文件采用加密存储,防止文件扩散,全面保证企业级数据的安全性和可靠性;
⑩数据备份,支持数据库备份和完整数据备份双重保护,全面保障系统内部数据安全性,用户可自行设定备份时间及位置,到达指定时刻,系统自动执行备份 *** 作。
I/O系统不仅包括 各种I/O设备 ,还包括与设备相连的 设备控制器 ,有些系统还配备了专门用于输入/输出控制的专用计算机( 通道 ),此外: I/O系统要通过总线与CPU、内存相连 。
I/O系统的结构分为两大类:
CPU与内存之间可以直接进行信息交换,但是 不能直接与设备进行信息交换 ,必须经过 设备控制器 。
主机I/O系统采用四级结构,包括: 主机、通道、设备控制器和设备 。
一个通道可以控制多个设备控制器。
一个设备控制器可以控制多个设备。
设备控制器是 CPU与I/O设备之间的接口 ,接收I/O命令并 控制设备 完成I/O工作。
设备控制器是一个 可编址设备 ,链接多个设备时可有多个设备地址。
一种特殊的处理机,它具有执行I/O指令的能力,并通过执行通道程序来控制I/O *** 作。
大型主机系统中 专门用于I/O的专用计算机 。
引入通道能够使CPU从控制I/O *** 作的任务中解脱,使 CPU与I/O并行工作 ,提高CPU利用率和系统吞吐量。
目的:尽量 减少 主机对输入/输出控制的 干预 , 提高 主机与输入/输出的 并行程度 。
工作流程:
缺点:
使CPU经常处于 循环检测状态 ,造成 CPU的极大浪费 ,影响整个进程的 吞吐量 。
现在计算机系统广泛采用中断控制方式完成对I/O控制。
工作流程:
优点:
使CPU和I/O设备在某些时间段上 并行工作 ,提高 CPU利用率 和 系统吞吐量 。
DMA控制器结构:
DMA控制器中的寄存器:
工作流程:
缓冲区是用来 保存两个设备之间或设备与应用程序之间传输数据的内存区域 。
由于CPU的速度远远高于I/O设备,为了 尽可能使CPU与设备并行工作 ,提高系统的性能,通常需要 *** 作系统在设备管理软件中提供缓冲区管理功能。
在数据到达速率与数据离去速率不同的地方,都可以引入缓冲区。
引入缓冲的原因:
引入缓冲的主要作用:
最简单 的缓冲类型,在主存储器的系统区中 只设立一个缓冲区 。
用户进程发出I/O请求时, *** 作系统为该 *** 作分配一个位于主存的缓冲区。
当一个进程往这一个缓冲区中传输数据(或从这个缓冲区读取数据)时, *** 作系统正在清空(或填充)另一个缓冲区,这个技术称为双缓冲(Double Buffering),或缓冲交换(Buffering Swapping)。
在数据到达和数据离去的速度差别很大的情况下,需要增加缓冲区的数量。
多个缓冲区:
多个指针:
Getbuf过程:
Releasebuf过程:
进程使用完缓冲区后,使用Releasebuf过程 释放缓冲区 ;
公共缓冲池中设置多个可供若干进程共享的缓冲区,提高缓冲区的利用率。
缓冲池的组成:
支持设备分配的数据结构需要记录设备的状态(忙或空闲)、设备类型等基本信息。
系统为每个设备建立一张设备控制表,多张设备控制构成设备控制表集合。
每张设备控制表,包含:
系统为每个控制器设置一张 用于记录该控制器信息 的控制器控制表。通常包含:
系统为每个通道设备设一张通道控制表,通常包含:
记录了 系统中全部设备 的情况,每个设备占一个表目,其中包括:
关键点:是否具备 “请求和保持” 的条件。
基本含义: 应用程序独立于具体使用的物理设备
应用程序中,使用 逻辑设备名称 来请求使用某类设备。
系统在实际执行时,必须使用 物理设备名称 。
实现设备独立性 带来的好处 :
设备独立软件的功能:
独占设备的分配程序:
在多道程序环境下,利用 一道程序 来模拟 脱机输入 时的 外围控制机 的功能,把低速I/O设备上的数据传送到高速输出磁盘上,再利用 另一道程序 来模拟 脱机输出 时 外围控制机 的功能,把数据从磁盘传送到低速输出设备上。
这种在 联机情况下实现的同时外围 *** 作 称为SPOOLing。
SPOOLing的 组成 :
利用SPOOLing技术 实现共享打印机 :
SPOOLing的 特点 :
输入输出软件总体目标是 将软件组织成一种层次结构 。
低层软件 用来屏蔽硬件的具体细节。
高层软件 则主要是为用户提供一个简洁、规范的界面。
设备管理的4个层次:
将发出I/O请求而被阻塞的进程唤醒。
设备驱动程序是 I/O进程与设备控制器之间的通信程序 ,其主要任务接受上层软件发来的抽象的I/O请求,如 read 和 write 命令,把它们转换为具体要求后,发送给设备控制器启动设备去执行。
磁盘存储器不仅 容量大,存取速度快 ,而且可以实现 随机存取 ,是存放大量程序和数据的理想设备。
磁盘管理的 重要目标 :提高磁盘 空间利用率 和磁盘 访问速度 。
一个物理记录存储在一个扇区上,磁盘存储的物理记录数目是由 扇区数、磁道数 及 磁盘面数 决定的。
磁盘类型:
磁盘访问时间:
磁盘调度的一个重要目标是 使磁盘的平均寻道时间最少 。包括有:
最简单 的磁盘调度算法。
根据进行 请求访问磁盘的先后顺序 进行调度。
优点:公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况
缺点:平均寻道时间较长
该算法选择的进程:其 要求访问的磁道 与 当前磁头所在的磁道 距离 最近 ,以使每次的寻道时间最短。
优点:每次的寻道时间最短
缺点:可能导致某个进程发生 饥饿 现象
又叫 电梯调度算法 ,不仅考虑到要访问的磁道与当前磁道的距离,更优先考虑磁头当前的移动方向。
优点:有较好的寻道性能,防止 “饥饿” 现象
缺点:有时候进程请求被大大推迟
在扫描算法的基础上,规定磁头是单向移动的。将最小磁道号紧接着最大磁道号构成循环,进行循环扫描。
NStepSCAN :FCFS + SCAN
FSCAN :
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)