操作系统作业答案:批处理系统与进程管理

需积分: 0 0 下载量 91 浏览量 更新于2024-08-05 收藏 361KB PDF 举报
"2019-2020-2A-OS答案1" 这篇资料主要涉及了操作系统领域的知识,特别是进程管理和调度算法。在描述中提到了两个具体知识点: 1. 进程与临界资源管理:问题描述了一个小和尚和老和尚取水倒水的场景,这是一个典型的多进程并发操作的问题。小和尚从井中取水,老和尚从缸中取水,水井和水缸都是临界资源,需要互斥访问。为解决这个问题,引入了互斥信号量`well`和`vat`,以及同步信号量`pail`、`empty`和`full`。这些信号量用于控制对资源的访问,避免竞态条件的发生。例如,`well`和`vat`确保一次只有一个进程可以访问水井或水缸,`empty`和`full`则用于控制水缸的满空状态,`pail`表示可用水桶的数量。 - 小和尚的算法:小和尚在取水前需等待水桶可用(`wait(pail)`),取水后释放水桶(`signal(pail)`),在访问水井和水缸时使用相应的互斥信号量。 - 老和尚的算法:老和尚在取水前需等待水缸有水(`wait(full)`),取水后释放水缸(`signal(full)`),同样需要等待水桶可用。 2. 批处理系统的作业调度:描述中提到了一个具有两道作业的批处理系统,使用抢占式优先级调度算法和短作业优先调度策略。具体事件如下: - 8:00,作业1到达,内存和CPU空闲,因此作业1立即被调入内存并执行。 - 8:20,作业2到达,内存还有一个空位,作业2被调入内存。由于作业2的优先级更高,它抢占了CPU。 - 8:30,作业3到达,但由于内存已满,作业3只能等待。 - 8:50,作业2执行完毕,作业3得以进入内存并开始执行。 这个场景展示了如何在有限的内存资源下,结合不同的调度策略来决定作业的执行顺序,同时也涉及到优先级抢占的情况,即高优先级作业可以中断正在执行的低优先级作业。 总结来说,这份资料涵盖了操作系统中的进程同步与互斥机制,以及批处理系统中的作业调度策略,是理解操作系统核心概念的重要实例。在实际的系统设计中,理解并合理运用这些机制对于优化系统性能、保障资源安全至关重要。