第2章 处理机管理
2.1概述
2.1.1多用户
(1)多用户: 多用户同时通过终端连接到计算机主机
(2)宏观:在同一个时间范围内独立地使用计算机系统
(3)微观:各用户程序并没有同时使用计算机的资源,共享只能是时间上的分割
2.1.2程序
(1)程序: 计算机处理的一系列的指令,按照一定的逻辑要求被划分成多个相关模块,这些模块必须顺序地执行
(2)程序顺序执行的特征:顺序性,封闭性,可再现性
(3)程序的并发执行的特征:间断性,失去封闭性,不可再现性
(5)并发程序三个特点:动态性,制约性,并行性
(6)并发程序:逻辑上并行,物理上串行
1)物理上的串行:CPU串行地执行着一定大小的程序片断
2)逻辑上的并行 :从宏观上看,在一个时间范围内,每一个程序都获得了运行
2.1.4Linux中的描述
(1)任务:Linux是一个多任务系统,程序的并行就是任务的并行,任务作为一个实体具有申请、占有、释放和抢占资源的资格
(2)进程:进程之间有一种隶属关系,除隶属关系外它们又是相互独立的,可以产生,也可以消亡
2.2进程及其状态
2.2.1进程的定义
(1)进程的引入:由于多道程序的特点,程序具有了并行、制约和动态的特征,就使得原来程序的概念已难以刻划和反映系统中的情况了
(2)定义:
1)进程是并发程序的一次执行过程
2)进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动
(3)进程:程序在并发环境下的执行过程
(4)本质:
1)进程的存在必然需要程序的存在
2)进程是系统中独立存在的实体
3)并发特性通过对资源的竞争来体现动态特性通过状态来描述
4)进程和数据相关
(5)进程与程序的主要区别:
1)程序是永存的,进程是暂时的
2)程序是静态的观念,进程是动态的观念
3)进程由三部分组成:程序+数据+进程控制块PCB(描述进程活动情况的数据结构)
4)进程和程序不是一一对应的:一个程序可对应多个进程即多个进程可执行同一程序 一个进程可以执行一个或几个程序
5)进程是一个独立的运行单位,能与其它进程并发(并行)执行。而程序则不可以并发执行。
6)进程是进行计算机资源分配的基本单位,也是进行处理机调度的基本单位
(6)进程特征:动态性、并发性、调度性、异步性、结构性
(7)进程的分类
系统进程:是执行操作系统核心代码的进程,起到对系统资源的管理和控制作用。
用户进程:主要是执行用户程序的进程。
系统进程和用户进程的区别:
1)系统进程可以独占分配给它们的资源,也能以最高优先级运行;而用户进程需要通过系 统服务请求(系统调用)的方式来竞争使用系统资源。
2)用户进程不能直接执行I/O操作,而系统进程可以。
3)系统进程在内核态(管态)下活动,而用户进程则是在用户态(目态)下活动。
2.2.2进程的状态及其转换
(1)进程基本状态:
1)运行态(Running):进程正在占用CPU;
2)就绪态(Ready):进程具备运行条件,但尚未占用CPU;
3)阻塞态(Blocked):进程由于等待某一事件不能享用CPU。
(2)进程状态的转换:
1)就绪态->运行态 2)运行态->就绪态 3)运行态->阻塞态 4)阻塞态->就绪态
(3) UNIX进程状态及转换
创建状态:进程刚被建立还没有被激活
内存就绪:进程的数据区处于内存并被激活
外存就绪:进程的数据区处于外存并被激活
核心运行:从内存就绪队列中调度一进程运行,处理机运行系统程序
用户运行: 当前运行的是用户程序
内存睡眠:处于核心运行态的进程申请某种资源而不能获得时,进程就变为内存睡眠状态
外存睡眠:进程处于睡眠状态并且数据区处于外存
被抢先:进程正从核心运行态向用户运行态转换时发生进程调度,它将处于被抢先状态
僵死状态:进程完成了它的所有任务将被撤销之前
(3) Linux