第七章 设备管理

转载 2007年09月29日 19:02:00

第七章 设备管理
 
7.1  I/O系统组成

7.2  I/O控制方式

7.3  缓冲管理

7.4 设备分配

7.5  设备处理

 7.1  I/O系统组成

7.1.1 I/O系统的结构

一、微型机I/O系统——总线I/O系统结构

二、  主机I/O系统——通道I/O系统结构

 
7.1.2 I/O设备

一、I/O设备的类型

1.按传输速率分

低速设备——几个~数百个 B/S

中速设备——数K~数十KB/S

高速设备——数百K~数MB/S

2.按信息交换的单位分类

块设备——用于存储信息,信息的存取以数据块为单位。特征:传输速率较高;可寻址;采用DMA方式

字符设备——用于数据的输入和输出,基本单位是字符。特征:传输速率较低;不可寻址;采用中断驱动方式。

3.按设备的共享属性分类

独占设备——一段时间内只允许一个用户(进程)访问的设备。

共享设备——一段时间内允许多个进程同时访问的设备。

虚拟设备——通过虚拟技术将一台独占设备变换为若干台逻辑设备。
 
二、设备与控制器之间的接口

数据信号;控制信号;状态信号

 
7.1.3 设备控制器

一、设备控制器的功能

1.接收和识别命令

2.数据交换

3.设备状态的了解和报告

二、设备控制器的组成

1.设备控制器与处理机的接口

2.设备控制器与设备的接口

3.I/O逻辑

7.1.4 I/O通道

一、通道设备的引入

二、通道类型

1.字节多路通道(Byte Multiplexor Channal)

2.数组选择通道(Block Selector Channal)

3.数组多路通道

三、“瓶颈”问题

7.2  I/O控制方式

(学生自行阅读,着重介绍通道方式)

一、程序I/O方式

二、中断驱动I/O控制方式

三、  直接存储器访问DMA控制方式

1.  DMA控制方式的引入

2.  DMA控制器的组成

命令/状态寄存器CR、内存地址寄存器MAR、数据寄存器DR、数据计数器DC

3.  DMA工作过程

四、I/O通道控制方式

1.  I/O通道控制方式的引入

2.  通道程序
 

7.3  缓冲管理

1.缓冲的引入

缓和CPU和I/O设备速度不匹配的矛盾;

减少对CPU的中断频率,放宽对中断响应时间的限制;

提高CPU和I/O设备之间的并行性。

2.单缓冲

3.双缓冲

4.  循环缓冲

⑴组成——多个缓冲区、多个指针

⑵缓冲区的使用——Getbuf过程、Releasebuf过程

⑶进程同步——Nexti指针追上Nextg指针、Nextg指针追上Nexti指针

5.  缓冲池

   ⑴缓冲池的组成——空缓冲队列emq、输入队列inq、输出队列outq

   ⑵Getbuf过程和Putbuf过程

   ⑶缓冲区的工作方式——收容输入工作方式、提取输出工作方式、收容输出工作方式、提取输出工作方式
 

7.4设备分配

1.设备分配中的数据结构

逻辑设备表(LUT)→系统设备表(SDT)→设备控制表(DCT)→控制器控制表(COCT)→通道控制表(CHCT)

2.设备分配时应考虑的若干因素

⑴考虑设备的固有属性

  独享设备、共享设备、虚拟设备

⑵设备分配算法:

  先来先服务、优先级高者优先

⑶设备分配的安全性

  安全分配方式

  不安全分配方式

3.设备独立性

⑴设备独立性

  设备独立性概念:应用程序独立于具体使用的物理设备

  设备独立性优点:设备分配时的灵活性;易于实现I/O重定向

 ⑵设备独立性软件

  完成功能:执行所有设备的公有操作;向用户层(或文件层)软件提供统一的接口

 ⑶逻辑设备名到物理设备名映射的实现

  逻辑设备表(LUT);LUT的设置问题——整个系统设置一张LUT、每个用户设置一张LUT

4.独占设备的分配程序

   ⑴基本的设备分配程序

     分配设备

     分配控制器

     分配通道

   ⑵设备分配程序的改进

     增加设备的独立性

     考虑多通路情况

5.SPOOLING技术

⑴什么是SPOOLING——(Simultaneous Peripheral Operations On-Line)假脱机操作

⑵SPOOLING系统的组成

  输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程

⑶共享打印机

⑷SPOOLING系统的特点

  提高了I/O速度、将独占设备改造为共享设备、实现了虚拟设备功能

 

7.5  设备处理

1.设备驱动程序的功能和特点

  ⑴设备驱动程序的功能

  ⑵设备处理方式

  ⑶设备驱动程序的特点

2.设备驱动程序的处理过程

将抽象要求转换为具体要求;

检查I/O请求的合法性;

读出和检查设备的状态;

传送必要的参数;

方式的设置;

启动I/O设备。

3.中断处理程序的处理过程

唤醒被阻塞的驱动程序进程;

保护被中断进程的CPU环境;

分析中断的原因、转入相应的设备中断处理程序;

进行中断处理;

恢复被中断进程的现场。 

操作系统--设备管理

设备管理概述: 设备管理的主要功能: 设备分配 设备映射 设备驱动 I/O缓冲区的管理 设备分配 多道程序系统中,设备不允许用户直接使用,而是由操作系统统一调度和控制。设备分配功...
  • daiyibo123
  • daiyibo123
  • 2015年06月07日 10:40
  • 1717

推荐:简单易用的iPhone iPad苹果设备管理工具itools

几个特性:UI简洁iOS设备不需要越狱正版应用下载安装媒体管理视频转换带目录的文件管理iPad桌面投影到PC 桌面,方便我做客户演示参考:官网:http://www.itools.cn/feature...
  • berryreload
  • berryreload
  • 2013年09月05日 06:50
  • 2517

iOS设备管理

这篇博客是转载自 http://ios.jobbole.com/86828/ 里面的具体内容看原作者的信息吧,有一点小问题这里提一下:提示: 在使用这个`struct utsname systemI...
  • zhuzhiqiang_zhu
  • zhuzhiqiang_zhu
  • 2017年04月18日 13:18
  • 453

2014-04-19 设备管理之设备模型

Linux内核在2.6版时,增加了对设备模型的
  • u011708432
  • u011708432
  • 2014年04月19日 11:18
  • 442

解决“设备管理设置中不允许在此台iPhone上。。。。”的问题

xcode7真机调试出现这么个问题:应该装到手机上了,却打不开,因为我是用的个人账号,而且是没有经过开发者认证的账号 2 解决办法很简单:跟着下面的步骤执行 3 ...
  • u010105969
  • u010105969
  • 2016年03月04日 17:16
  • 6474

RT-thread内核之IO设备管理系统

RT-Thread系统的IO设备管理模块为上层应用提供了一个对设备进行访问的通用抽象接口,而对于下层设备来说则提供了底层设备驱动框架,并通过定义的数据结构对设备信息和底层设备驱动进行管理。从系统整体位...
  • jxgxlm2008
  • jxgxlm2008
  • 2016年07月04日 14:36
  • 381

flask web开发第七章如何创建项目中的数据库

很简单 1. $ python manage.py db init 2. $ python manage.py shell >>> db.create_all() 完成----...
  • clean_water
  • clean_water
  • 2016年12月27日 19:27
  • 502

《python核心编程第二版》第七章练习解析

1.字典方法。哪些字典方法可以把两个字典合并到一起? 有个update()方法,不过如果key相同的话,会用后者的key-value覆盖前者的 2.略 3.字典和列表的方法。 (a) 建一...
  • u013938528
  • u013938528
  • 2015年05月01日 10:49
  • 833

C++Primer 中文版 第五版 第七章课后习题答案

//7.1 #include #include using namespace std; struct Sales_data { string bookNo; unsigned unit...
  • Little_boy_z
  • Little_boy_z
  • 2016年06月08日 20:07
  • 1709

操作系统实验六 设备管理

实验六 设备管理一、实验目的1、 理解设备管理的概念和任务。2、 掌握独占设备的分配、回收等主要算法的原理并编程实现。二、实验内容与基本要求1、 在Windows系统中,编写程序实现对独占设备的...
  • u011303443
  • u011303443
  • 2015年12月15日 12:57
  • 1740
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第七章 设备管理
举报原因:
原因补充:

(最多只允许输入30个字)