本文概述
- 在进程控制块中保存了什么?
- 为什么我们需要计划?
在多程序系统中, 操作系统将CPU上的进程调度为具有最大利用率, 此进程称为CPU调度。操作系统使用各种调度算法来调度进程。
短期调度程序的任务是为CPU调度作业池中存在的进程数。每当正在运行的进程请求某些IO操作时, 短期调度程序都会保存该进程的当前上下文(也称为PCB), 并将其状态从运行更改为等待。在此期间, 进程处于等待状态;短期调度程序从就绪队列中选择另一个进程, 并将CPU分配给该进程。此进程称为上下文切换。
在进程控制块中保存了什么? 在进程的生存期内, 操作系统会维护进程控制块。当进程终止或终止时, 将删除进程控制块。以下信息保存在进程控制块中, 并随进程状态而变化。
文章图片
为什么我们需要计划? 在Multiprogramming中, 如果长期调度程序选择了更多的I / O绑定进程, 那么大多数时候CPU仍然是偶像。操作系统的任务是优化资源利用。
【系统CPU调度】如果大多数正在运行的进程将它们的状态从运行更改为等待, 那么系统中总会出现死锁的可能性。因此, 为了减少这种开销, OS需要调度作业以获取CPU的最佳利用率并避免死锁的可能性。
推荐阅读
- FCFS中的车队效应
- 计数信号量
- 磁盘的连续分配
- 内存压缩
- 动态分区的位图
- 二进制信号量或互斥量
- 贝拉迪异常(Belady’s Anomaly)
- 系统二进制地址基础
- 什么是文件(文件的属性)