Operating System(2)

进程

进程与线程

进程

进程是系统进行资源分配和调度的一个独立单位。
进程控制块(Process Control Block,PCB)描述进程的基本信息和活动过程,进而控制进程和管理进程。
特征:动态性、并发性、独立性、异步性。

线程

线程作为调度和分派的基本单位。
线程是进程的进一步划分,一个进程可以有多个线程,他们共享进程资源。

比较

  1. 进程是资源分配的基本单位,但是线程不拥有系统资源,仅有少量能保证独立运行的资源。(一些必备的寄存器,如程序计数器等)同时线程共享进程的资源。
  2. 进程的切换开销大,线程是独立调动的基本单位,切换线程的开销更小。

进程状态

五种状态转换

  • 就绪状态:资源已经准备好了,就差CPU调度
  • 阻塞状态:被某些事件给中断了,缺少必要的资源(除CPU时间)

挂起与激活

挂起与激活

  • 若进程处于就绪状态,挂起操作执行后,则由活动就绪转为禁止就绪
  • 若进程处于阻塞状态,挂起操作执行后,则由活动阻塞转为禁止阻塞

进程同步

1. 临界区

对临界资源进行访问的那段代码称为临界区。
为了互斥访问临界资源,每个进程在进入临界区之前,需要先进行检查。

2. 信号量

3. 管程