计算机操作系统学习笔记_13_I/O管理 --I/O核心子系统

h1 { margin-bottom: 0.21cm; }h1.western { font-family: "Liberation Sans",sans-serif; font-size: 18pt; }h1.cjk { font-family: "微软雅黑"; font-size: 18pt; }h1.ctl { font-family: "AR PL UMing CN"; font-size: 18pt; }h2.western { font-family: "Liberation Sans",sans-serif; font-size: 16pt; }h2.cjk { font-family: "微软雅黑"; font-size: 16pt; }h2.ctl { font-family: "AR PL UMing CN"; font-size: 16pt; }p { margin-bottom: 0.25cm; line-height: 120%; }

I/O管理

--I/O核心子系统

一、I/O调度概念

操作系统开发人员通过为每个设备维护一个请求队列来实现调度。当一个应用程序运行阻塞I/O系统调用时,该请求就加到相应设备的队列上。

二、高速缓存与缓冲区

1.高速缓存

高速缓存是可以保留数据拷贝的高速内存。

主要是用来提高访问速度!实例:chrome浏览器第一次与第二次启动的速度差别!

2.缓冲区

缓冲区是用来保存在两设备之间或在设备和应用程序之间所传输数据的内存区域。缓冲技术可分为:

单缓冲:在设备和处理机之间只设置一个缓冲区,由输入设备和输出设备公用。

双缓冲:为输入和输出设备分配两个缓冲区,两个缓冲区交替使用。

循环缓冲:为I/O设备分别设置多个缓冲区,一部分专门用于输入,另一部分专门用于输出。

缓冲池:将多个缓冲区合并在一起构成公用缓冲池进行统一管理,池中的缓冲区可供多个进程共享。

【简而言之:匹配高速和低速设备之间的问题】

三、设备分配与回收

1.设备分配概述

设备分配的任务是按照一定的策略请求设备的进程分配合适的设备及相关的硬件。分为独占型设备、共享型设备和虚拟型设备三种。

p { margin-bottom: 0.25cm; line-height: 120%; }

2.设备分配用数据结构

设备的分配和管理是通过数据结构来进行的,通过它来描述系统的配置,I/O 设备的状态特性及当前的使用情况。如下图所示。虚线表示如果该设备存在的话。

设备分配的数据结构

比较重要的数据结构有:

(1)系统设备表SDT:整个系统一张系统设备表【在操作系统内部】。

(2)设备控制表DCT:系统为每一台物理设备配置一张DCT【在操作系统内部】。

(3)控制器控制表COCT:系统为每一个控制器设置一张COCT。

(4)通道控制表CHCT:只在通道控制方式的系统中存在,每个通道一张。

3.设备分配策略

(1)设备分配原则:设备分配的总原则既要充分发挥设备的使用效率。又要避免造成进程死锁。

(2)设备的分配方式:静态分配主要用于对独占设备的分配,它是在用户作业开始运行之前由系统一次分配该作业所要求的全部设备、控制器和通道,直到该作业被撤销才释放。动态分配是在进程运行过程中按需进行的,进程需要设备时,向系统提出请求,系统按照事先规定的策略给进程分配所需要的设备、控制器和通道,用完之后立即释放。

(3)设备的分配策略:常用的动态设备分配策略有先请求先分配(FIFO)、优先级高者先分配等。

四、假脱机技术(SPOOLing)【将独享设备转换为共享设备】

SPOOLing技术,即同时联机外围操作技术,又称假脱机技术,是指在多道程序环境下,利用多道程序中的一道或两道程序来模拟脱机输入输出中的外围控制机的功能,以达到“脱机”输入输出的目的。

SPOOLing系统的组成

(1)输入井和输出井:这是在磁盘上开辟的两个大存储空间。

(2)输入缓冲区和输出缓冲区:这是在内存中开辟的两个缓冲区。

(3)输入进程SP1和输出进程SP0:这是内存中的两个进程。

时间: 2024-10-23 02:28:48

计算机操作系统学习笔记_13_I/O管理 --I/O核心子系统的相关文章

计算机操作系统学习笔记_2_进程管理 --进程与线程(上)

h3.western { font-family: "Liberation Sans",sans-serif; }h3.cjk { font-family: "微软雅黑"; }h3.ctl { font-family: "AR PL UMing CN"; }h2.western { font-family: "Liberation Sans",sans-serif; font-size: 16pt; }h2.cjk { fon

计算机操作系统学习笔记_4_进程管理 --处理机调度

h3.western { font-family: "Liberation Sans",sans-serif; }h3.cjk { font-family: "微软雅黑"; }h3.ctl { font-family: "AR PL UMing CN"; }h1 { margin-bottom: 0.21cm; }h1.western { font-family: "Liberation Sans",sans-serif; f

计算机操作系统学习笔记_12_I/O管理 --I/O管理概述

h1 { margin-bottom: 0.21cm; }h1.western { font-family: "Liberation Sans",sans-serif; font-size: 18pt; }h1.cjk { font-family: "微软雅黑"; font-size: 18pt; }h1.ctl { font-family: "AR PL UMing CN"; font-size: 18pt; }h2.western { fon

计算机操作系统学习笔记_8_内存管理 --虚拟内存管理

td p { margin-bottom: 0cm; }h2.western { font-family: "Liberation Sans",sans-serif; font-size: 16pt; }h2.cjk { font-family: "微软雅黑"; font-size: 16pt; }h2.ctl { font-family: "AR PL UMing CN"; font-size: 16pt; }h1 { margin-botto

计算机操作系统学习笔记_7_内存管理 --内存管理基础

h2.western { font-family: "Liberation Sans",sans-serif; font-size: 16pt; }h2.cjk { font-family: "微软雅黑"; font-size: 16pt; }h2.ctl { font-family: "AR PL UMing CN"; font-size: 16pt; }h1 { margin-bottom: 0.21cm; }h1.western { fon

计算机操作系统学习笔记_5_进程管理 -- 同步与互斥

h3.western { font-family: "Liberation Sans",sans-serif; }h3.cjk { font-family: "微软雅黑"; }h3.ctl { font-family: "AR PL UMing CN"; }h2.western { font-family: "Liberation Sans",sans-serif; font-size: 16pt; }h2.cjk { fon

计算机操作系统学习笔记_6_进程管理 --死锁

一.死锁的概念 1.死锁的概念 系统中两个或两个以上的进程无限期地相互等待永远不会发生的条件,系统处于一种停滞状态,这种情况称为死锁. 2.死锁产生的原因 (1)进程推进顺序不当 (2)对互斥资源的分配不当[并不是资源不足,但是剩余资源不足是有可能产生死锁的]. 必须要指出的是,系统资源不足并不是产生死锁的原因,进程资源如果不足则进程就不会被创建,只有在资源部分分配以后,剩余的资源不能满足某些个进程的请求,造成进程集无法推进的现象才是死锁. 3.产生死锁的四个必要条件[必须满足四个条件,才有可能

计算机操作系统学习笔记_1_操作系统概述

操作系统概述 一.操作系统的概念.特征.功能和提供的服务 1.操作系统的概念     操作系统是计算机系统中最重要.最基本的系统软件,操作系统位于硬件和用户程序之间.    对于用户来讲:它能向用户提供使用计算机的接口;    从资源管理角度来看:它能管理计算机软硬件资源,提高其利用率;    再者,利用虚拟机技术(如WMWare,VirtualBox,Java虚拟机等),扩展了计算机的功能和使用范围.     因此,操作系统的定义为:操作系统是控制和管理计算机软.硬件资源,以尽可能合理.高效的

计算机操作系统学习笔记_11_文件管理 --磁盘组织与管理

h2.western { font-family: "Liberation Sans",sans-serif; font-size: 16pt; }h2.cjk { font-family: "微软雅黑"; font-size: 16pt; }h2.ctl { font-family: "AR PL UMing CN"; font-size: 16pt; }h1 { margin-bottom: 0.21cm; }h1.western { fon