第二章 进程管理
1.什么是进程?
1.1 进程的概念
进程(Process),是一个具有一定独立功能的程序关于某个数据集合的一次运行活动,是系统进行『资源分配和调度』的一个独立单位。
几个要点
进程是『程序』的『一次执行』an instance of a computer program that is being executed
进程是一个程序及其数据在处理机上顺序执行时所发生的『活动』
进程是程序在一个『数据集合』上运行的过程
进程是系统进行『资源分配和调度』的一个『独立』单位(或者说基本单位)
1.2 进程的结构和特征
进程的结构
控制块(PCB)
数据段
程序段
进程的特征
动态性:由创建而生,由撤销而亡
并发性:多个进程同时运行
独立性:独立资源分配
异步性:相互独立、互不干扰
1.3 进程与线程
什么是线程?
Thread,进程的轻型实体,也叫“轻量级进程”,是一系列活动按事先设定好的顺序依次执行的过程,是一系列指令的集合
是一条执行路径,不能单独存在,必须包含在进程中
线程是OS中运算调度的最小单位
为什么引入线程?
提高OS的并发性
进程与线程比较
调度
拥有资源
并发性
系统开销
地址空间和其它资源
通信
重点:线程相对于进程,大大降低了创建、撤销和切换可执行实体的成本和难度。
线程的实现方式
用户级线程(ULT)
User Level Thread
内核级线程(KLT)
Kernel Level Thread