用 PV 操作实现进程的同步与互斥
为更好的阐述 PV 操作,首先引入进程的概念,首先进程定义:“进程”是操
作系统的最基本、最重要的概念之一。但迄今为止对这一概念还没有一个确切
的统一的描述。
进程管理的任务有四个:进程的建立和撤消;进程状态的转换。系统应能
使进程从阻塞变为就绪,把活动进程挂起或把挂起的进程激活;进程调度。进
行处理机的重新分配;控制进程的并发执行。保证进程间的同步,实现相互协
作进程间的通信。
资源管理中的基本操作包括对时钟、I/O 设备和存储器管理的基本操作。
执行过程不允许被中断的程序段,或者说其执行过程不可分割。我们把这样的
程序段叫原语。用于进程控制的原语有:创建原语、撤消原语、阻塞原语、唤
醒原语、挂起原语、解挂(激活)原语、改变进程优先级进程间的通信
进程的同步与互斥一般来说同步反映了进程之间的协作性质,往往指有几
个进程共同完成一个任务时在时间次序上的某种限制,进程相互之间各自的存
在及作用,通过交换信息完成通信。进程互斥体现了进程之间对资源的竞争关
系,这时进程相互之间不一定清楚其它进程情况,往往指多个任务多个进程间
的通讯制约。
临界区系统中一些资源一次只允许一个进程使用,这个资源称为临界资源。
而在进程中访问临界资源的那一段程序称为临界区。系统对临界区的管理原则:
(1)有空既进:没有进程在临界区时,允许一个进程立即进入临界区。(2)
无空则等:若有一个进程已经在临界区,其他要求进入临界区的进程必须等待。