1.操作系统中任务资源共享的情况
- 临界资源:在一段时间内只允许一个任务访问的资源。诸任务间应采取互斥方式,实现对资源的共享
eg:多线程访问临界资源,使用互斥量和读写锁 - 共享资源:允许多个任务同时访问同一种资源的多个实例,这是一种资源实例计数和分配的机制
2.信号量
(1)信号量一般分为三种类型
-
互斥信号量:任务之间互斥访问临界资源
-
计数信号量:任务之间竞争访问共享资源
-
二值信号量:任务之间的同步机制,eg:进程间通信的信号量集。
信号量集可以实现两个任务或多个任务的同步互斥,任务可以是进程,也可以是线程 -
信号量是操作系统提供的管理资源共享的有效手段
-
信号量作为操作系统核心代码执行,其地位高于任务,任务调度不能终止其运行