在操作系统中有好多细节的知识,同时这些知识需要多方面的对比。所以在这里简单整理几个操作系统考试中容易出现的简答题。
1. 分页与分段的区别
- 页是信息的物理单位,分页是为了系统管理内存的方便而进行的,故对用户而言,分页是不可见的,是透明的
段是信息的逻辑单位,分段是作业逻辑上的要求,对用户而言,分段是可见的。 - 页的大小是固定的,由系统决定;段的大小是不固定的,由用户作业本身决定。
- 从用户角度看,分页的地址空间是一维的(页号),而段的地址空间是二维的(段名+偏移量)。
2. 死锁产生的4个必要条件是什么?它们是彼此独立的吗?
- 互斥,请求和保持,不剥夺,环路等待。
- 不是相互独立的,前三个条件是必要条件,而环路等待实际上是在前三者基础上的一种可能的结果,是死锁的一种现象。
3. 当系统中的地址空间非常大时(例如32位),会给页表的设计带来什么问题?请给出一个方案并分析其优缺点
- 会导致页表过长从而很难找到一块连续的存储空间存放页表,此外如果页表中的行不连续也会加大访问页表的查找时间。
- 可以用多级页表解决这个问题,将页表分页,离散地存储在不同区域,同时建立另一张页表映射原来页表的每一页。优点是不需要大块的连续空间,但并没有减少页表的空间,同时也增加了访存次数。
4. 文件在磁盘上存放的形式有几种?它们与存取方法有何关系?
| 顺序结构 | 链式结构 | 索引结构 |
|---|---|---|
| 顺序 | 顺序 | 顺序 |
| 随机 | 随机 |
5. 请说明中断驱动I/O方式和DMA方式有什么不同?
- 中断频率。在中断方式中,每当输入数据缓冲寄存器中装满输入数据或将输出数据缓冲寄存器中的数据输出之后,设备控制器便发生一次中断。由于设备控制器中配置的数据缓冲寄存器通常较小,因此中断比较频繁;而DMA方式下,在DMA控制器的控制下,一次能完成一批连续数据的传输,并在整批数据传送完后才发生一次中断,因此可大大减少CPU处理I/O中断的时间。
- 数据的传送方式。在中断方式下,由CPU直接将输入数据写入控制器的数据缓冲寄存器供设备输出,或在中断发生后直接从数据缓冲寄存器中取出输入数据供进程处理,即数据传送必须经过CPU;而在DMA方式中,数据的传输在DMA控制器的控制下直接在内存和I/O设备间进行,CPU只需将数据传输的磁盘地址、内存地址和字节数传给DMA控制器即可。
6. 试述缺页中断与一般中断的主要区别。
- 在指令执行期间和处理中断信号
- 一条指令执行期间可能产生多次缺页中断
本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!