操作系统原理:进程调度与多道程序设计
需积分: 9 136 浏览量
更新于2024-08-25
收藏 738KB PPT 举报
"进程调度-操作系统(第二版)"
操作系统是计算机系统的核心组成部分,它对硬件设施进行管理和优化,提供用户友好的环境和系统调用,以扩展机器功能。操作系统的主要功能包括处理机管理、存储管理、设备管理、文件管理和网络通信管理。其中,处理机管理是操作系统的重要任务之一,它涉及进程调度,即控制和协调进程对CPU的使用,按照预定的调度算法从就绪队列中选择一个进程执行。
进程调度的目标是确保公平且高效地分配CPU时间。调度程序的任务是在进程就绪队列中选择一个进程,并为其分配CPU资源,使得系统资源得到充分利用,提高系统吞吐量和响应时间。在多道程序设计中,多个进程可以同时存在于内存中,它们的执行不是连续的,而是以时间片轮转的方式交替进行,这就是并发性的体现。
多道程序设计引入了并发执行的概念,从宏观上看,多个程序看似同时运行;从微观上看,实际上是由CPU快速切换执行不同的进程。这样做的好处在于提高了CPU的利用率,减少了系统的空闲时间,并且可以更好地满足用户的需求,例如在等待I/O操作时,CPU可以切换到其他进程,避免了资源的浪费。
操作系统有四个主要特性:
1. 并发性:多个任务可以在同一时间段内执行,但不一定是真正的同时。
2. 共享性:资源可以被多个进程共享,例如内存和硬件设备。
3. 异步性:进程的执行顺序不可预测,因为它们依赖于调度和外部事件。
4. 虚拟性:通过资源的抽象和模拟,使得用户感觉拥有了比实际更多的资源。
操作系统根据其特征可分为不同类型:
- 批处理系统:主要用于批量处理大量任务,用户提交作业后离线等待结果。
- 分时系统:允许多个用户同时在线交互,每个用户可以获得一定的时间片来执行自己的任务。
- 实时系统:强调响应时间,保证在规定时间内完成特定任务,常见于控制系统和嵌入式系统。
当CPU接收到磁盘I/O中断时,中断处理的主要过程包括:
1. 处理器完成当前指令的执行。
2. 接受中断信号,保存当前的程序状态字(PSW)和程序计数器(PC)到系统堆栈。
3. 根据中断类型加载新的PC值,开始执行中断处理程序。
4. 中断硬件保存CPU的其余状态信息。
5. 中断处理程序执行,完成相应操作。
6. 恢复CPU状态信息,从系统堆栈恢复原PSW和PC寄存器,继续之前的程序执行。
引入进程的原因是为了更好地管理内存中的多个程序,记录和控制每个程序的执行状态。进程之间可能存在竞争关系,如共享资源的互斥访问,或者协作关系,如同步操作。一个进程由程序段、数据段和进程控制块(PCB)组成,具有动态性、并发性、独立性和异步性等特征。进程有三种基本状态:就绪、运行和等待,它们在执行过程中会相互转换,以适应系统的需求和资源的分配。
2020-08-19 上传
2010-06-01 上传
2022-05-07 上传
2013-12-25 上传
2009-12-06 上传
192 浏览量
2015-03-12 上传
点击了解资源详情
猫腻MX
- 粉丝: 19
- 资源: 2万+
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章