2025年操作系统基础(操作系统的基础)

操作系统基础(操作系统的基础)p id main toc p 操作系统 Operating System OS 负责管理和控制 计算机系统的硬件和软件资源 在计算机和用户之间起接口作用 操作系统的主要功能 处理机管理 进程管理 存储管理

大家好,我是讯享网,很高兴认识大家。



 <p id="main-toc"></p> 

讯享网


        操作系统(Operating System,OS)负责管理和控制 计算机系统的硬件和软件资源,在计算机和用户之间起接口作用。

操作系统的主要功能:(处理机管理)进程管理,存储管理,设备管理,文件管理,作业管理。


问:什么是进程?

答:指的是正在执行的程序的实例。是处理机管理中最基本的概念,是系统并发执行的体现 。它是操作系统分配资源(如CPU时间、内存等)和调度的基本单位。

进程的主要特点包括:

1. 独立性:每个进程都有自己的地址空间,进程之间的内存是相互独立的。

2. 并发性:多个进程可以并发执行,操作系统通过时间片轮转等调度算法来实现这一点。

3. 动态性:进程的状态会随着执行的进行而变化,主要有新建、就绪、运行、等待和终止等状态。

4. 资源管理:操作系统负责为进程分配和管理资源,确保进程能够有效地执行。

就绪状态:除CPU以外所有资源都准备好了,等待执行;多个进程同时就绪(就绪队列)

执行状态:进程已经获得处理机,正在执行。单处理机系统只能有一个进程处于执行状态。

阻塞状态:因某事件(请求IO,申请缓冲空间等)而暂停,执行受到阻塞,等待。

另外还有挂起状态:进程可以由自身挂起,也可以由用户或操作系统瓜子,其目的都在于阻止进程继续运行,被挂起的进程是只能用显式方式来激活,以便从挂起的状态中解脱出来。

进程的互斥与同步,互斥是要保证临界资源在某一时刻只被一个进程访问;同步是指多进程因相互制约而相互发送消息而互相配合,互相等待,按照一定的顺序和速度之星。

临界资源:一次只允许一个进程使用的资源。

临界区:一个进程访问临界资源的程序代码。

对互斥临界区管理的四条规则:

有空即进:当无进程处于临界区时,允许进程进入临界区;

无空则等:当有一个进程在临界区时,其他需要进入临界区的进程只能等待;

有限等待:对要求访问临界资源的进程,应保证进程等待有限时间后进入临界区,以免陷入“饥饿”状态;

让权等待:当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态。

低级通信方式:PV操作

信号量sem 有效的实现进程的同步好额互斥,sem是一个整数,大于等于0代表可供并发进程的资源数,小于0表示正在等待使用临界区的进程数。

P操作和V操作时原语,执行期间不允许中断发生。

P(sem)相当于sem–,此时sem&lt;0,调用P的进程暂停执行,直到另一个进程V操作

V(sem)相当于sem++.此时sem&lt;=0,从队列中选一个进程,唤醒他。

高级通信方式:直接通信,简介通信,管道通信

直接通信:发送进程直接把消息发动给接收进程,并将它挂在接收进程的消息缓冲队列上,接收进程从消息缓冲队列中取得消息。


讯享网

间接通信方式:发送进程吧消息发送到某个中间实体,接收进程从中间实体取得消息。

管道通信:消息传递的一种特殊的方式。“管道”,是指用于连接一个读进程和一个写进程以实现它们之间的通信的一个共享文件。


前驱图(Precedence Graph)是一种用于表示任务之间依赖关系的图形结构,通常用于调度、项目管理和并行计算等领域。在前驱图中,节点代表任务或活动,边表示任务之间的依赖关系。是理解和管理复杂任务依赖关系的重要工具。

每个节点的入度表示有多少个任务依赖于它,出度表示它依赖于多少个任务。

在项目管理中,前驱图可以帮助确定任务的顺序和时间安排,例如在关键路径法(CPM)和程序评审技术(PERT)中。

前驱图通常是一个有向无环图(DAG),因为任务之间的依赖关系不能形成循环。


圆圈:一个圆圈表示一个进程。

矩形:一个矩形表示一个资源。矩形中圆圈的数量表示这类资源的个数。

①表示进程向资源申请一个资源。

②表示资源分配一个资源给进程。

③表示资源向进程分配一个资源,进程向资源申请一个资源。注意一定是先分配后申请,资源先给进程分配资源,进程才向资源又申请资源。

非阻塞是可以化简的

④资源共有三个资源,分别给三个进程分配资源后没有剩余资源了,此时进程1又向资源申请资源,就会无法获得运行资源,就会进入等待态( 阻塞状态

例题:

假设系统中有三个进程P1、P2和P3,两种资源R1、R2。如果进程资源图如图①和图②所示,那么()

解析:

R1:已分配 2 个,剩余1个

R2:已分配 3 个,剩余0个

P1得到 1个R1,1个R2 得到满足,释放资源。

此时R1剩余2个,R2剩余1个

P2 请求2个R1 ,得到1个R2,满足释放

此时R1剩余2个,R2剩余2个

P3 请求1个R1

所以图一中进程皆不阻塞,可化简

R1:已分配 3 个,剩余0个

R2:已分配 2个,剩余0个

P1以获得一个R1 ,仍需要一个R2,R2资源不足,P1阻塞

P2以获得一个R1,一个R2,仍需要一个R1,资源不足,P2阻塞

P3以获得一个R1,一个R2,仍需要一个R2,资源不足,P3阻塞

所以图二中所有进程皆阻塞,无法化简


死锁 DeadLock指多个进程因竞争资源而造成的一种僵局Dead-Embrace,若无外力作用,这些进程都将永远不能再向前推进

死锁的原因主要有两点:竞争资源、进程推进顺序非法

产生死锁的4个必要条件是:

互斥条件、保持和等待条件

不剥夺条件、环路等待条件

处理死锁的方法:

预防死锁:打破四大条件(有序资源分配,静态资源分配)

避免死锁:银行家算法

检测死锁与解除:

对资源的分配不加限制,允许死锁产生。但系统定时运行一个死锁检测程序,如果检测到死锁则去解除

1.资源剥夺法:从一些进程那强行剥夺足够数量的资源分配给死锁进程

2.撤销进程法:根据某种策略逐个地撤销死锁进程,直到解除死锁为止

进程在等待一个不可能发生的事情,则进程就死锁了,而若多个进程产生死锁,就会造成系统死锁。

系统不可能发生死锁的最小资源数

(w-1)*m+1&lt;=n

进程 *(需要的资源-1)+1&lt;=n

每个进程都需要w个资源,一共m个进程,在极端情况下,每个进程都分配到了w-1个资源,所以都无法完成任务,则会死锁,再给其中任意一个进程分配1个资源,那么该进程拿到了w个资源,则可以完成任务,释放掉资源后,其它进程也可以依次拿到w个资源完成任务



系统级:用户需要注册登录,并配有口令。

用户级:对用户分类并限定各类用户对目录和文件的访问权限。

目录级:对目录操作权限限定,读R,写W,查找X

文件级:设置文件属性来控制用户对文件的访问,只读R,读写RW,共享Share,隐藏Hide

小讯
上一篇 2025-05-23 10:11
下一篇 2025-04-17 20:35

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/190667.html