操作系统是计算机系统资源的管理者,其主要任务是对系统中的硬件、软件资源实施有效的管理,以提高系统资源的利用率。操作系统的主要功能包括处理机管理,内存管理,设备管理,文件管理以及方便用户而提供的友好的用户接口。
1.2.1 处理机管理
处理机是计算机系统中的核心资源,对处理机管理的好坏直接关系到系统的整体性能。处理机管理完成对处理机的分配调度与运行管理等功能。在传统的操作系统中,处理机的分配调度是以进程(Process)为单位,因此处理机管理最终归为对进程的管理。现代操作系统中,都引入了线程(Thread),处理机管理还需包含对线程的管理。进程管理主要包括:
1、进程控制
在传统的多道程序环境下,要使作业运行,必须先为它创建一个或者几个进程,并为之分配必要的资源。进程运行结束时,立即撤销该进程,以便能及时回收该进程所占用的各类资源。进程控制的主要功能是为作业创建和撤销进程,控制进程在运行过程中的状态转换(如阻塞与唤醒进程,挂起与激活进程)。
在引入线程的操作系统中,进程控制还应具有为一个进程创建若干个线程的功能和撤销已完成任务的线程的功能以及其他控制功能。
2、进程同步
进程同步的主要任务是协调多个并发执行的进程(线程)之间的推进步骤。为使多个进程能有条不紊地并发执行,系统中必须设置进程同步机制。
进程同步有两种协调方式:
1)进程互斥方式。这是指诸进程(线程)在对临界资源进行访问时,应采用互斥方式。
2)进程同步方式。指在相互合作完成共同任务的诸进程(线程)间,由同步机构对他们的执行次序加以协调。
为了实现进程同步,系统中必须设置进程同步机制。最简单的用于实现进程互斥的的机制是为每一个临界资源配置一把锁,当锁打开时,进程(线程)可以对该临界资源进行访问;而当锁关上时,则禁止进程(线程)访问该临界资源。信号量机制是各个操作系统采用的行之有效的同步机制。
3、进程通信
进程通信的任务是用来实现在相互合作的进程之间的信息交流。通过进程之间的信息交换,来协调合作进程间的推进关系。