3:操作系统--3.1操作系统概述,3.2:进程管理

本文详细介绍了操作系统中的关键知识点,包括操作系统功能、进程与线程概念、进程状态、信号量与PV操作、死锁问题、进程资源图分析等,旨在帮助理解进程管理的核心原理及避免死锁的发生。

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

课程内容提要

 3:知识点考点详解

3.1操作系统概述

考点1:操作系统的功能

[操作系统的功能]

管理系统的硬件、软件、数据资源

控制程序运行

人机之间的接口.

应用软件与硬件之间的接口

[操作系统的任务]

进程管理

存储管理

文件管理

作业管理

设备管理

考点2:特殊的操作系统. 

 

3.2:进程管理

考点1:进程与线程的概念

1、进程是程序在-个数据集合上运行的过程,它是系统进行资源分配和调度的-一个独立单位。它

由程序块、进程控制块(PCB)和数据块三部分组成。

2、PCB: PCB是进程存在的唯一标志。内容包含进程标识符、状态、位置信息、控制信息、队列

指针(链接同一状态的进程)、优先级、 现场保护区等。

3、进程与程序的区别:进程是程序的- -次执行过程,没有程序就没有进程。

 程序是一个静态的概念,而进程是一个动态的概念, 它由创建而产生,完成任务后因撤销而消亡:进程是系统进行资源分配和调度的独立单位,而程序不是。

4、进程的2个基本属性:可拥有资源的独立单位;可独立调度和分配资源的基本单位。

5、同一个进程当中的各个线程,可以共享该进程的各种资源,如内存地址空间、代码、数据、文

件等,线程之间的通信与交流非常方便。

对于同一个进程当中的各个线程来说,它们可以共享该进程的大部分资源。每个线程都有自己独立的CPU运行上下文和栈,这是不能共享的。

 考点2:进程的状态

[三态模型]

 运行:当一个进程在CPU.上运行时。

(单处理机处于运行态的进程只有一个)

就绪:一个进程获得了除CPU外的一切所需资源,- 旦得到处理机即可运行。

阻塞:阻塞也称等待或睡眠状态,一个进程正在等待某一事件发生(例如请求I/O、等待I/O完成

等)而暂时停止运行,此时即使把CPU分配给进程也无法运行,故称进程处于阻塞状态。

思考:

"等待某个事件发生"和"等待事件发生",二者有什么区别?

【五态模型】

挂起原因:

(1)进程过多,主存资源不足,此时必须将某些进程挂起,放到磁盘对换区,暂时不参与调度,以

平衡系统负载;

(2)系统出现故障,或者是用户调试程序,也可能需要将进程挂起检查问题。 

考点3:信号量与PV操作

[进程的同步与互斥]

临界资源:诸进程间需要互斥方式对其进行共享的资源。

(进程中访问临界资源的那段代码称为临界区)

注:临界资源同一时刻只允许-一个进程使用, 共享资源同-时刻允许多个进程同时使用。

[PV操作]

信号量:是一种特殊的变量。

信号量可以表示资源数量;

信号量为负数时还可以表示排队进程数。

P是荷兰语的Passeren表示锁定资源资源数-1,

V是荷兰语的Verhoog表示释放资源资源数+1. 

P操作:

S=S-1,申请并锁定资源;

S<0,判断资源是否足够,如果不够则将进程送到阻塞队列,如果足够则执行该进程后续代码。

V操作:

S=S+1,释放资源并解锁资源;

S<=0,判断是否有进程排队,如果有则唤醒排队进程。思考:假设用S表示打印机资源,现有2台

打印机,3个进程要互斥使用打印机。模拟整个PV过程,信号量S的初值为多少?取值范围是多

少?

[PV操作与互斥模型]

多个进程共享一台打印机问题(互斥模型) :

P(S);

使用打印机;

V(S);

后续代码;

斥信号量S的初值为1。

注:

互斥信号量S的初值一般为非0。

访问权是一类特殊的互斥资源, 同一时刻仅允许1个人用,则信号量初值为1。

分析技巧:互斥模型中同-信号量的PV操作-般成对出现在同一个进程内。

[PV操作与同步模型]

单缓冲区生产者、消费者问题(同步模型) :

 生产者:

生产-一个产品;

P (S1) ;

送产品到缓冲区;

V (S2) ;

消费者:

P (S2) ;

从缓冲区取产品;

V (S1) ;

消费产品:

S1初值为1,S2初值为0。注: 同步信号S的初值一般为0。

分析技巧:同步模型中同一信号的PV操作一般成对出现在 不同的进程内。

考点4:前趋图与PV操作

A、绞肉        B、切葱末        C、切姜末

D、搅拌        E、包饺子

Sa=0; Sb=0; Sc=0; Sd=0; 

技巧:

并发图中某活动有后继就有v操作释放资源,有前趋就有p操作消耗资源。

实现并发的信号量初值一般为0。 有几个箭头就有几个信号量。 

考点5、死锁问题

所谓死锁,是指两个以上的进程互相都要求对方已B经占有的资源导教无法继续运行下去的现象,

进程管理是操作系统的核心,但如果设计不当,就会出现死锁的问题。如果进程在等待一件不可能

发生的事,则进程就死锁了。而如果多个进程产生死锁,就会造成系统死锁。

【死锁资源数计算】

系统不可能发生死锁的最小资源数(w-1)*m+1<=n

注:m表示进程总数,w表示每个进程需要的资源数,n表示系统中该类资源的总数。

例:系统有5个进程:A、B、C、D、E。这5个进程都需要4个系统资源。如果系统至少有多少个资

源,则不可能发生死锁。 

考点6、进程资源图 

分析思路: 

先分析资源分配情况,列出剩余可用资源:此时已分配1个R1给进程P,剩余1个R1可用。

再判断申请后进程是否能够执行: P进程申请1个R1,系统有1个R1可用,P进程可成功执行,执行后

释放占用的2个R1。

思考:什么样的结点会阻塞?什么样的结点不会阻塞?

阻塞结点:当前资源不足以支撑执行的进程结点。

非阻塞结点:当前资源足够支撑执行的进程结点。

可化简:非阻塞结点执行后会释放所占据的资源,此时图示可化简,可以重新判断资源分配情况。

死锁:无论怎样调整分配顺序,都无法执行完所有进程的图示情况,就是死锁情况。

[不可化简的图示-定死锁的,目前软设考试中可化简的图示通常是非死锁的。] 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值