一、电脑启动
引导程序在加电或重启时加载。
通常存储在 ROM 或 EEPROM 中,一般称为固件。
初始化系统的所有方面。
加载操作系统内核并开始执行。
二、计算机系统组织
电脑系统操作: 一个或多个 CPU、设备控制器通过公共总线连接,提供对共享内存的访问。
我们希望 I/O 设备和 CPU 能够同时执行: CPU 不应该等待慢得多的 I/O 设备
I/O 设备在准备好时发出中断信号。
当中断发生时,操作系统必须: ① 将控制权转移到适当的中断处理程序。 ② 由于设备不止一个,所以我们使用中断向量。
三、中断:控制器与处理程序
设备控制器(硬件/固件)负责在媒体和它自己的本地寄存器之间移动数据。
中断处理程序(软件)负责在控制器寄存器和内存之间移动数据(因此它可以被用户程序访问): 由于有多种类型的中断,因此每种类型都有一个处理程序。
四、处理中断
用户程序具有控制权。
会发生 I/O 中断。 例如。磁盘控制器发出数据读取操作完成的信号。
CPU 不再处理用户程序: 当前位置被保存(程序计数器),并且中断被禁用。
控制转移到中断处理程序: 保存代表当前状态的 CPU 寄存器。
数据从控制器传输到内存或从内存传输到控制器取决于是输入还是输出操作。
CPU 寄存器已恢复。
控制权返回给用户程序: ① 中断重新使能。 ② 保存的程序计数器恢复。
五、输入输出结构
CPU 和设备控制器并行运行。
两种类型的 I/O 操作: ① 同步:用户程序等待 I/O 操作完成。 ② 异步:I/O 操作正在进行时允许用户程序继续。
异步性对于多道程序设计至关重要。
程序 A 的异步 I/O 允许 CPU 将控制转移到另一个程序 B,直到 A 的 I/O 完成。
六、I/O 结构 – 设备状态表
设备状态表跟踪哪些设备忙碌,它们正在为哪些程序做什么,以及哪些程序正在等待访问设备。
七、I/O 结构 - 直接内存访问 (DMA)
用于能够以接近内存速度传输信息的高速 I/O 设备。
设备控制器将数据块从缓冲存储器直接传输到主存储器,无需 CPU 干预。
每个块只生成一个中断,而不是每个字节一个。
תגובות