92O设备的寻址 ■ⅣO设备寻址是解决外设与主机通信的一个 必要环节;让CPU能方便地找到要进行信息 交换的设备。 921操作系统在O中的作用 ◆操作系统使最终用户或用户程序只需通过一些简单 的命令或系统调用就能使用各种O设备,而无需了 解各种ⅣO设备的具体工作细节。 ◆操作系统把ⅣO软件组织成从高到低的四个层次, 层次越低越接近设备,而越远离用户程序。 ●用户层ⅣO软件 与设备无关的操作系统ⅣO软件 ●设备驱动程序 I/O中断处理程序
9.2 I/O设备的寻址 ■ I/O设备寻址是解决外设与主机通信的一个 必要环节;让CPU能方便地找到要进行信息 交换的设备。 9.2.1 操作系统在I/O中的作用 ◆ 操作系统使最终用户或用户程序只需通过一些简单 的命令或系统调用就能使用各种I/O设备,而无需了 解各种I/O设备的具体工作细节。 ◆ 操作系统把I/O软件组织成从高到低的四个层次, 层次越低越接近设备,而越远离用户程序。 • 用户层I/O软件 • 与设备无关的操作系统I/O软件 • 设备驱动程序 • I/O中断处理程序
◆四个层次的相应说明 通常把提出ⅣO请求的用户程序看成是用户层ⅣO软件。 操作系统中与设备无关的JO软件的基本功能是执行适用于 所有设备的常用ⅣO功能,向用户层软件提供一个统一的调用 接口。 设备驱动程序是与设备相关的ⅣO软件部分。每个设备驱动 程序只处理一种设备或一类紧密相关的设备。 中断处理程序用来对“外设完成任务”的事件进行处理。以 提高效率
◆ 四个层次的相应说明 • 通常把提出I/O请求的用户程序看成是用户层I/O软件。 • 操作系统中与设备无关的I/O软件的基本功能是执行适用于 所有设备的常用I/O功能,向用户层软件提供一个统一的调用 接口。 • 设备驱动程序是与设备相关的I/O软件部分。每个设备驱动 程序只处理一种设备或一类紧密相关的设备。 • 中断处理程序用来对“外设完成任务”的事件进行处理。以 提高效率
◆操作系统必须保证一个用户程序只能访问到 该用户有权限的JO设备部分;必须提供以 下几种信息通信: (1)操作系统必须能向ⅣO设备给出命令,这些命令不 仅包含象读、写等操作,而且包括对设备本身的 些操作,如:磁盘査找、定位等。 (2)当ⅣO设备已经完成了一个操作或遇到了一个错误,设备必 须能够通知操作系统,以便作适当处理。 (3)数据必须在存储器或CPU寄存器和ⅣO设备之间传输。 在进行指令系统的设计中,必须考虑提供某种能对ⅣO进行 访问的指令
(2) 当I/O设备已经完成了一个操作或遇到了一个错误,设备必 须能够通知操作系统,以便作适当处理。 (3) 数据必须在存储器或CPU寄存器和I/O设备之间传输。 • 在进行指令系统的设计中,必须考虑提供某种能对I/O进行 访问的指令。 ◆ 操作系统必须保证一个用户程序只能访问到 该用户有权限的I/O设备部分;必须提供以 下几种信息通信: (1) 操作系统必须能向I/O设备给出命令,这些命令不 仅包含象读、写等操作,而且包括对设备本身的一 些操作,如:磁盘查找、定位等
9,22IO端口的编址 ◆系统如何在ⅣO的指令中标识要访问的/O接 口中的某个寄存器的呢?这就是ⅣO端口的编 址问题。JO端口实际上就是ⅣO接口中的各 种寄存器; ◆给各个可访问的寄存器进行编址的两种方式 (1)独立编址方式:对所有的O端口单独进行编号,使它们成 为一个独立的ⅣO地址空间。 需要用专门的输入输出指令来访问O端口。输入输出指令 中地址码部分给出ⅣO端口号。 (2)统一编址方式:与主存地址空间统一编址,即:将主存地址 空间分出一部分地址给ⅣO端口进行编号。 ●无需设置专门的输入输出指令,只要用一般的访存指令就可 以存取JO端口
9.2.2 I/O端口的编址 ◆ 系统如何在I/O的指令中标识要访问的I/O接 口中的某个寄存器的呢?这就是I/O端口的编 址问题。I/O端口实际上就是I/O接口中的各 种寄存器; ◆ 给各个可访问的寄存器进行编址的两种方式 (1) 独立编址方式:对所有的I/O端口单独进行编号,使它们成 为一个独立的I/O地址空间。 • 需要用专门的输入输出指令来访问I/O端口。输入输出指令 中地址码部分给出I/O端口号。 (2) 统一编址方式:与主存地址空间统一编址,即:将主存地址 空间分出一部分地址给I/O端口进行编号。 • 无需设置专门的输入输出指令,只要用一般的访存指令就可 以存取I/O端口
◆两种编址方式比较 址处程晰寻 空理序’址 系统总线 主存单元 间器设便速|CP 0000 MEMR 还引计于度 需脚灵理快 MEMW 16 要数活解 AB 专增性和专 加差检用 DB FFFF 的 查 硬此 I/O端口 件外搖 8 保 护使焊使 IOR 制独较得 立复程 IOW 的杀序 地和清 图93独立编址方案
◆ 两种编址方式比较 CPU 主存单元 0000 FFFF I/O 端口 系统总线 MEMR MEMW 00 FF IOR IOW 16 8 8 AB DB 8 图9.3 独立编址方案 • 寻 址 速 度 快 ; 专 用I/O 指 令 , 使 得 程 序 清 晰 , 便 于 理 解 和 检 查 。 • 程 序 设 计 灵 活 性 差 些 ; 控 制 逻 辑 较 复 杂 和 处 理 器 引 脚 数 增 加 。 此 外 , 使 用 独 立 的 地 址 空 间 还 需 要 专 门 的 硬 件 保 护 机 制