操作系统研讨课第三十一讲:Preemptive Kernel项目设计

需积分: 0 1 下载量 169 浏览量 更新于2024-07-01 收藏 254KB PDF 举报
操作系统研讨课讲义总结 在这节操作系统研讨课中,我们讨论了Preemptive Kernel的概念和实现方法。下面是本节课的知识点总结: 一、Preemptive Kernel的概念 Preemptive Kernel是操作系统中的一种调度机制,允许操作系统在执行任务时可以被中断,并且可以在适当的时候恢复执行任务。这种机制可以提高操作系统的响应速度和效率。 二、Project 3的需求 在Project 3中,我们需要实现一个Preemptive Kernel,要求支持以下功能: * 支持预emptive kernel * 编写一个 timer interrupt handler * 编写函数来支持阻塞睡眠 * 编写一个调度器来支持 round robin 和基于优先级的调度 三、非Preemptive kernel 在讨论Preemptive Kernel时,我们也讨论了非Preemptive kernel的概念。非Preemptive kernel是一种不允许中断的调度机制,会影响操作系统的throughput。 四、Interrupt、Exception和Trap 在操作系统中,interrupt、exception和trap是三种不同的事件处理机制。interrupt是指硬件或软件发出的一种信号,需要操作系统立即处理。exception是指操作系统在执行任务时出现的一种错误,需要操作系统处理。trap是指操作系统在执行任务时出现的一种事件,需要操作系统处理。 五、Interrupt处理机制 当interrupt发生时,操作系统需要suspend当前running任务,保存其状态,然后执行interrupt handler。interrupt handler会执行相应的处理操作,然后恢复执行任务。 六、Project 3的实现细节 在实现Project 3时,我们需要编写一个timer interrupt handler,用于处理timer interrupt事件。我们还需要编写函数来支持阻塞睡眠和调度器来支持round robin和基于优先级的调度。 七、注意事项 在实现Preemptive Kernel时,我们需要注意以下几点: * 需要编写一个timer interrupt handler * 需要编写函数来支持阻塞睡眠 * 需要编写一个调度器来支持round robin和基于优先级的调度 * 需要注意非Preemptive kernel的实现细节 本节操作系统研讨课中,我们讨论了Preemptive Kernel的概念和实现方法,并且讨论了非Preemptive kernel的概念和实现细节。同时,我们还讨论了interrupt、exception和trap的概念和处理机制。