计算机操作系统第二章 进程的描述与控制

本文围绕操作系统中进程与线程展开。介绍了前驱图和程序执行方式,包括顺序与并发执行;阐述进程的定义、特征、状态转换及管理数据结构;说明了进程控制的创建、终止等操作;还讲解了进程通信类型和实现方式,以及线程的概念、实现方式等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录

2.1 前驱图和程序执行

2.1.1 前驱图

2.1.2 程序顺序执行

2.1.3 程序并发执行

2.2 进程的描述

2.2.2 进程的定义与特征

2.2.2 进程的基本状态与转换

2.2.3 挂起操作和进程状态的转换

2.2.4 进程管理中的数据结构

2.3 进程控制

2.3.1 进程的创建

2.3.2 进程的终止

2.3.3 进程的阻塞与唤醒

2.3.4 进程的挂起与激活

2.4 进程通信

2.4.1 进程通信的类型

2.4.2 消息传递通信的实现方式

2.5 线程的概念

2.5.1 线程的引入

2.5.2 线程与进程的比较

2.5.3 线程状态和线程控制块

2.6 线程的实现

2.6.1 线程的实现方式

2.6.2 线程的具体实现

2.1 前驱图和程序执行

在单道批处理系统和早期未配置OS的计算机系统中,程序的执行方式是顺序执行,即在内存中仅装入一道程序,由它独占系统的所有资源;在多道程序系统中,由于内存中可以同时装入多个程序,它们可以共享系统资源、并发执行,这显然可以克服上述缺点

2.1.1 前驱图

所谓前趋图(precedence graph),是指一个有向无环图(directed acyclic graph,DAG),它用于描述进程之间执行的先后顺序。图中的每个节点均可用于表示一个进程或一段程序,甚至是一条语句,节点间的有向边则表示两个节点之间所存在的偏序(partial order)或前趋关系(precedence relation)

  • 有向无循环图,用于描述进程之间执行的先后顺序
  • 结点表示进程或程序段,有向边表示前趋关系

2.1.2 程序顺序执行

1、程序顺序执行的特征

程序顺序执行的顺序性、封闭性和再现性给程序的编制、调试带来很大方便,其缺点是 计算机系统效率不高。

2.1.3 程序并发执行

1、程序并发执行的定义

一组在逻辑上互相独立的程序或程序段在执行过程中,其执行时间在客观上互相重叠,即一个程序段的执行尚未结束,另一个程序段的执行已经开始执行;或一个程序未执行完,将开始执行另一个程序。

2、程序并发执行的例子
3、程序并发执行的特征
  • 间断(异步)走走停停,一个程序可能走到中途停下来,失去原有的时序关系;
  • 失去封闭性共享资源,受其他程序的控制逻辑的影响。如:一个程序写到存储器中的数据可能被另一个程序修改,失去原有的不变特征。
  • 失去可再现性:失去封闭性 ->失去可再现性;外界环境在程序的两次执行期间发生变化,失去原有的可重复特征。并发程序执行的结果与其执行的相对速度有关,是不确定的。

2.2 进程的描述

2.2.2 进程的定义与特征

1、进程的引入

为了使多道程序能够并发执行,且为了能对并发执行程序加以描述和控制,以提高资源利用率和系统效率。

2、进程的定义

  • 进程是具有独立功能的程序关于某个数据集合在计算机系统中的一次执行过程。
  • 系统进行资源分配和调度的、一个可并发执行的独立单位。
  • 进程是程序的一个实例,是程序的一次执行

进程和程序的比较

  • 程序是静态的,在外存中,进程是动态的,在内存中
  • 程序可长期保存;而进程是有生命周期的。
  • 程序是指令的有序集合;而进程则是由程序、数据和进程控制块三部分组成。
  • 进程和程序之间不是一一对应的:一个进程可以执行一个或多个程序,一个程序可以同时被多个进程执行。
  • 进程是一个独立运行的单位,也是系统进行资源分配和调度的独立单位,能与其他进程并发执行;而程序不能并发执行。

3、进程的特征

  • 结构特征:由程序段、数据段及进程控制块PCB)三部分构成,总称进程映像
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值