2025.10.18总结

news/2025/10/18 23:20:17/文章来源:https://www.cnblogs.com/zangbotao/p/19150294

今天继续学软考相关内容,看了操作系统一个章节进程管理的内容。
操作系统的定义:操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的划分,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件
操作系统的功能和目标:
1.作为系统资源的管理者
2.向上层提供方便易用的服务
3.作为最接近硬件的层次

操作系统的特征:
1.并发
2.共享
3.虚拟
4.异步

进程管理-状态转换图
1、进程正在被创建时,它的状态是“创建态”,在这个阶段操作系统会未进程分配资源、初始化PCB
2、当进程创建完成后,便进入就绪态,处于就绪态的进程已经具备运行条件,但由于没有空间CPU,就暂时不能运行。
3、如果一个进程此时就在CPU伤运行,那么这个进程处于运行态,CPU会执行该进程对应的程序(执行指令序列)。
4、在进程运行的过程中,可能会请求等待某个事件的发生(如等待某种系统资源的分配,或者等待其他进程的响应)。在这个事件发生之前,进程无法继续往下执行,此时操作系统就会让这个进程下CPU,并让它进入阻塞态,当CPU空闲时,又会选择另一个就绪态 进程上CPU运行
5、一个进程可以执行exit系统调用,请求操作系统终止该进程。此时该进程会进入 终止态,操作系统会让该进程下CPU回收内容空间等资源,最后还要回收该进程的PCB。当终止进程的工作完成之后,这个进程就彻底消失了
进程管理 前驱图
进程管理-进程同步机制
进程具有异步性的特征。异步性是指,各并发执行的进程以各自独立的、不可预知的速度向前推进

同步亦称直接制约关系,它是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调它们的工作次序而产生的制约关系。进程间的直接制约关系就是源于它们之间的相互合作。

进程管理-进程互斥机制
进程的并发需要共享的支持。各个并发执行的进程不可避免的需要共享一些系统资源(比如内存,又比如打印机、摄像头这样的额I/O设备)
我们把一个时间段内只允许一个进程使用的资源称为临界资源。许多物理设备(比如摄像头、打印机)属于临界资源。此外还有许多变量、数据、内存缓冲区等都属于临界资源。
对临界资源的访问,必须互斥地进行。互斥,亦称间接制约关系。进程互斥指当一个进程访问某临界资源时,另一个想要访问该临界资源地进程必须等待。当前访问临界资源地进程访问结束,释放资源之后,另一个进程才能去访问临界资源,

进程管理-信号量机制
用户进程可以通过使用操作系统提供一对原语来对信号量进行操作,从而很方便地实现了进程互斥、进程同步。
信号量其实就是一个变量(可以是一个整数,也可以是更复杂地记录型变量),可以用一个信号量来表示系统中某种资源地数量,比如:系统中只有一台打印机,就可以设置一个初值为1地信号量。
原语:是一种特殊地程序段,其执行只能一气呵成,不可被中断。原语是由关中断/开中断指令实现地。软件解决方案地主要问题是由 进入区地各种操作无法一气呵成,因此如果能把进入区、退出区地操作都用原语实现,使这些操作能 一气呵成 就能避免问题
一对原语 :wait(S)原语和signal(S)原语,可以把原语理解为我们自己写地函数,函数名分别为wait和signal,括号里地信号量S其实就是函数调用时传入地一个参数。
wait signal 原语常简称为P、V操作。因此,做题地时候常把wait(S)、signal(S)两个操作分别写为P(S)、V(S)
信号量机制
1.实现进程互斥
2.实现进程同步
3.实现进程地前驱关系
不要一头钻到代码里,要注意理解信号量背后地含义:一个信号量对应一种资源信号量地值等于这种资源地剩余数量
P(S) 申请一个资源S,如果资源不够就阻塞等待,即S-1
V(S) 释放一个资源S,如果有进程在等待该资源,则唤醒1一个进程,即S+1.

进程管理-PV操作进程管理-什么是死锁进程管理——死锁产生的必要条件产生死锁必须同时满足以下四个条件,只要其中任一条件不成交,死锁就不会发生:1、互斥条件:只有对必须互斥使用的资源的争抢才会导致死锁(如哲学家的筷子、打印机设备)。像内存、扬声器这样可以同时让多个进程使用的资源是不会导致死锁的(因为进程不用阻塞等待这种资源)。2、不剥夺条件:进程所获得的资源在未使用完之前,不能由其他进程强行夺走,只能主动释放3、请求和保持条件:进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源又被其他进程占有,此时请求进程被阻塞,但又对自己已有的资源保持不放。4、循环等待条件:存在一种进程资源的循环等待链,链中的每一个进程已获得的资源同时被下一个进程所请求。进程管理——死锁的额处理策略1.预防死锁:破坏死锁产生的四个必要条件中的一个或几个。2.避免死锁:用某种方法防止系统进入不安全状态,从而避免死锁(银行家算法)。3.死锁的额检测和解除。允许死锁的发生,不过1系统会负责检测出死锁的发生,然后采取某种措施解除死锁。进程管理——银行家算法安全序列:就是指如果系统按照这种序列分配资源,则每个进程都能顺利完成。只要能找出一个安全序列,系统就是安全状态。当然,安全序列可能有多个。如果分配了资源之后,系统中找不出任何一个安全序列,系统就进入了不安全状态。这就意味着之后,可能所有进程都无法顺利的执行下去。如果系统处于安全状态,就一定不会发生死锁。如果系统进入不安全状态就没有安全序列,不安全状态未必就是发生了死锁,但发生死锁时一定是在不安全状态。因此可以在资源分配之前预先判断这次分配是否会导致系统进入不安全状态,以此觉得是否答应资源分配请求。这也是 银行家算法 的核心思想。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/939828.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++动态多态原理分析

class Animal { public:void speak() {cout << "Animal.speak()" << endl;} };class Cat :public Animal {void speak() {cout << "Cat.speak()" << endl;} }; void doW…

Java基础——初识Math类,基本运算符,自增自减运算符,逻辑运算符,位运算符,三元运算符

Java基础——初识Math类,基本运算符,自增自减运算符,逻辑运算符,位运算符,三元运算符初识Math类 Math.pow(2,3); //运用工具类进行次方运算基本运算符 1.算术运算符:+,-,,/,%(此前为二元运算符),++,--(一…

ENC28J60

ENC28J60ENC28J60 是在嵌入式开发、物联网、单片机联网中常见的一种芯片。 我们来从硬件、软件、应用三个角度讲清楚它。🧩 一、基本定义ENC28J60 是 Microchip(微芯科技) 公司生产的一款 独立的以太网控制器芯片(…

第七章 常见攻击事件分析--钓鱼邮件

第七章 常见攻击事件分析--钓鱼邮件 1、请分析获取黑客发送钓鱼邮件时使用的IP,flag格式: flag 将文件下来到虚拟机解压有个钓鱼邮件.eml 查阅的时候觉得这里很奇怪,这里跟其他的不大一样,这里对来源进行了base64的…

10月18日日记

1.今天放假出去吃饭 2.明天准备去图书馆 3.编写怎样的代码更有利于JIT优化?

第九章-实战篇-运维杰克

第九章-实战篇-运维杰克 1、攻击者使用的的漏洞扫描工具有哪些(两个) flag 我们首先先去 /var/log下面看一下 发现这个网站中间件是apach 逛了一圈没有发现什么东西, 但是先统计一下在日志里面哪些ip访问的数量最多,…

AntennaPod - 开源Android播客管理器

AntennaPod是一款易于使用、功能灵活的开源Android播客管理器。支持自动下载、播放控制、多平台同步等特性,提供无广告的纯净播客收听体验,让您自由管理个人播客订阅。AntennaPod - 开源Android播客管理器AntennaPod…

硬件基础知识

1. 关于串口电平和 RS232 、RS485、RS422 的引脚接线 串口常用的电平标准有如下三种:TTL电平:+5V表示1,0V表示0RS232电平:-3~-15V表示1,+3~+15V表示0RS485电平:两线压差+2~+6V表示1,-2~-6V表示0(差分信号) 引…

第三章 权限维持-linux权限维持-隐藏

第三章 权限维持-linux权限维持-隐藏 1、黑客隐藏的隐藏的文件 完整路径md5 使用命令查看隐藏文件 find / -type f -name .*这个文件看着有点可疑临时性:将文件放在 /tmp 目录下表明这些文件可能是临时的。系统重启后…

第五章 linux实战-黑链

第五章 linux实战-黑链 1、找到黑链添加在哪个文件 flag 格式 flag 什么是黑链?在网络安全领域,黑链(Blacklink 或 Badlink)一般指那些用于 恶意目的的链接。这些链接通常不是合法或正常的网站地址,而是被攻击者利…

AI元人文:价值原语化——在创新与传承间搭建文明桥梁

AI元人文:价值原语化——在创新与传承间搭建文明桥梁 当我们深耕价值语义的原语化,实则是启动了一项宏大的文明工程:为流动的价值经验建造可传承、可演化的语言载体。这不仅是方法论的创新,更是对文明传承模式的深…

Channel小结

一:channel的一些特性 1.尽量避免使用锁来解决临界资源安全问题 2.通道的角色必须在两个及以上 3.chan,必须要作用在两个以上的goroutine 二:通道的声明点击查看代码 func main() {//声明+赋值var c chan intc = ma…

线段树历史值学习笔记

(先单开出来,后面准备合并到线段树 trick 里) (好像合并不了了) 历史和指的是线段树维护的序列 \(a\),我们再开一个序列 \(b\),每次修改 / 查询后进行 \(\forall b_i \leftarrow b_i + a_i\) 操作,\(b\) 称作 …

连续两行fastq、连续两行MD5值如何转换为每行一个fastq一个MD5格式

001、shell实现(base) [b20223040323@admin2 test]$ ls a.txt (base) [b20223040323@admin2 test]$ cat a.txt ## 测试数据 SRR5534377_1.fastq.gz SRR5534377_2.fastq.gz d27d0b0f0bb9cae5dc52dc934384699b 1139…

bridge 一般是 网络桥接模块。

bridge 一般是 网络桥接模块。bridge 一般是 网络桥接模块。 在 Linux 网络栈中,Bridge 就是用来实现 “二层转发(L2 switch)” 的:让两个网络接口互通(比如 eth0 ↔ wlan0);常用于路由器的 AP 模式;也可能是 …

深入解析密码库低级lowlevel抽象层接口与高级highlevel抽象层接口 - 实践

深入解析密码库低级lowlevel抽象层接口与高级highlevel抽象层接口 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family:…

abc428

AC 4 (ABCE), Score 1125, Penalty 42:25(1), Rank , Ranting .4 题遗憾离场/ll C 删字符的时候忘记删字符的,罚时 +1 D 怎么这么困难,跳了。 E 大水题换根 dp 板子。 罚坐 1h,F 以为自己会了的时候发现读错题了,纠…

周六训练-1018

C Cut 我的质因数分解不是在杨老师这里学的,所以我写挂了,杨老师好闪拜谢杨老师 #include <iostream> #define int long longusing namespace std;const int MaxN = 1e5 + 10;int f[MaxN][20], mn[MaxN][20], …

23-网关选型

网关选型指南:支持多协议的统一流量入口摘要:本文档全面分析了支持HTTP/1.1、WebSocket、gRPC和gRPC-Web协议的统一网关选型方案,通过对比Nginx、Envoy、Kong、APISIX和Spring Cloud Gateway等主流解决方案,为不同…

Python 爬虫实战:手把手教你抓取网页数据

在当今数字化时代,网络爬虫已成为数据采集的重要工具。通过爬虫,我们可以从互联网上获取大量有价值的信息,用于数据分析、研究或其他目的。今天,就让我们通过一个简单的实战案例,手把手教你如何使用 Python 抓取网…