接上篇“自考《操作系统概论》之引论
引论中简单提到了处理器,继续来重点学习它的管理。
一、多道程序设计系统
让多个计算题同时进入一个计算机系统的主存储器并行执行,这种程序设计方法称为多道程序设计,这样的计算机系统称为多道程序设计系统。现代计算机系统具有处理器与外围设备并行工作的能力。为了发挥这一能力,提高系统效率,才有了”多道程序设计技术“这个概念,让几个程序同时装入主存储器并行执行。那么就增加了单位时间内的算题量,但对每道程序来说可能延长了执行时间。
二、进程和线程
为了能正确反映程序执行时的活动规律和状态变化,我们要引进一个新概念——进程。把一个程序在一个数据集上的一次执行称为一个进程。程序是静止的,进程是动态的。可用一个铁路交通管理的例子来比喻程序和进程。为了对比说明,首先区分火车和列车。火车是一种可以载人或物的交通工具,而列车是指已经从某起点站始发但还没有到达终点站的正在行驶中的火车。
进程有四条属性:
1、进程是多态的,它包含了数据和运行在数据集上的程序。
2、多个进程可以含有相同的程序。
3、多个进程可以并发执行
4、进程有三种基本状态:等待态、 就绪态和运行态。
进程的延伸:进程多了会有很多缺点,占用空间、开销较大、传输速度慢、给调度和控制带来复杂性,所以引入线程技术。在现代操作系统中,把用户的一个计算问题或一个应用问题作为一个进程,把该进程中可以并发执行的各部分分别作为线程。
三、进程控制块
在多道程序设计中,存在很多许多不同的进程。怎样来区别它们呢?由此引入了进程控制块的概念。这好比多次列车始发时,为了保证列车的安全,在每次列车始发时调度室就要为该列车建立管理信息,记录该列车的车次、列车号、状态(行驶或停站)、目前从哪站出发正在行驶或停在什么地方,等等。调度室根据记录的情况进行调度且随着类车运行情况的变化不断地修改管理信息。当列车到达终点后,调度室就撤销该次列车的管理信息。在计算机系统中,进程控制块就是对进程进行管理和调度的信息集合。它包含四类消息:标识、说明、现场和管理信息。
四、进程队列
在多道程序设计系统中,往往会同时创建多个进程,这些被创建的的若干就绪进程可按一定次序排成队列(称为就绪队列)。
五、中断
在日常生活中常常会碰到中断现象,例如,当我在审阅书稿时,会被各种原因打断审阅工作。由于某些事件的出现,中止现行进程的运行,而由操作系统去处理出现的时间,待适当的时候让被中止的进程继续运行,这个过程称为中断。引起中断的事件称为中断源。对出现的事件进行处理的程序称为中断处理程序。
中断类型:
1、硬件故障中断
2、程序中断
3、外部中断
4、输入/输出中断
5、访管中断
无论发生哪类中断事件,都由硬件的中断装置暂停现行进程的运行,而让操作系统的中断处理程序占用处理器。这一过程称为中断响应。发生中断了,首先要分析引起中断的原因,然后对其进行处理。
六、处理器调度
在多道程序设计中,往往会有多个计算问题(作业)请求处理。它们都因要使用系统资源而会发生竞争。因此,如何对资源进行管理和分配是操作系统中的一个重要问题。由此引入处理器调度。分为两级调度。从输入井(在操作系统中,把磁盘上用来存放作业信息的专用区域)选取后备作业(在输入井中等待处理的作业)装入主存储器的工作称为作业调度。从就绪进程中选取一个进程,让它占用处理器的工作称为进程调度。
作业调度算法:
1、先来先服务算法
2、计算时间短的作业优先算法
3、响应比高者优先算法
4、优先级调度算法
5、均衡调度算法
进程调度算法:
1、先来先服务算法
2、最高优先级调度算法
3、时间片轮转调度算法
总结:处理器管理用在多道程序设计中,无论是进程、中断还是处理器调度都是为多道程序设计服务的。从刚开始的宏观认识然后精读逐步认识再到最后的找联系,宏观与细节并重。对知识的掌握能达到80%的程度。