操作系统
文章平均质量分 67
StudyWinter
持续学习
展开
-
3.1.2 操作系统内存管理管些什么?
1 操作系统负责内存空间的分配和回收;2 操作系统需要提供某种技术从逻辑上对内存空间进行扩充;3 操作系统需要提供地址转换功能,负责程序的逻辑地址与物理地址的转换; 4 操作系统需要提供内存保护功能,保证各进程在各自的存储空间运行,互不干扰。法一:在CPU中设置一对上下限寄存器,存放进程的上下限地址。进程的指令要访问某个地址时,CPU检查是否越界。法二:采用重定位寄存器(又称基址寄存器)和界地址寄存器(又称限长寄存器)进行越界检查。重定位寄存器中存放的是进程的起始物理地址。界地址寄存器中存放的是进程的最大逻转载 2022-11-28 16:56:31 · 150 阅读 · 0 评论 -
3.1.1 什么是内存?进程的基本原理,深入指令理解其过程
内存(Memory)是计算机的重要部件,也称内存储器和主存储器,它用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。它是外存与CPU进行沟通的桥梁(缓和CPU和硬盘之间的速度矛盾),计算机中所有程序的运行都在内存中进行,内存性能的强弱影响计算机整体发挥的水平。只要计算机开始运行,操作系统就会把需要运算的数据从内存调到CPU中进行运算,当运算完成,CPU将结果传送出来。转载 2022-11-28 16:42:52 · 252 阅读 · 0 评论 -
【操作系统】2.4 死锁
产生死锁必须同时满足以下四个条件,只要其中任一条件不成立,死锁就不会发生。原创 2022-11-27 11:28:07 · 698 阅读 · 1 评论 -
【操作系统】2.3 进程同步与互斥
(2)在每个“前操作”之后执行V操作;(3)在每个”后操作“之前执行P操作。(2)在“前操作”之后执行V操作;(3)在“后操作”之前执行P操作;(2)临界区之前对信号执行P操作;(3)临界区之后对信号执行V操作。(2)V操作中,一定是先value++,之后可能执行wakeup原语;(1)P操作中,一定是先value--,之后可能执行block原语;(2)整型信号量与普通整型变量的区别:对信号量只能执行。(3)双标志后检查法:是双标志先检查法的改进,加锁。(3)整型信号量存在的问题:不满足让权等待原则。原创 2022-11-25 15:59:21 · 1196 阅读 · 0 评论 -
【操作系统】2.2 操作系统的调度
CPU利用率、系统吞吐量、周转时间、等待时间、响应时间。中级调度(内存调度):外存-》内存。原创 2022-11-23 16:08:59 · 424 阅读 · 0 评论 -
【操作系统】2.1 进程与线程总结
2.1.1 操作系统之进程的定义、特征、组成、组织_StudyWinter的博客-CSDN博客进程由程序段、数据段、进程控制块(PCB)三部分组成。进程是进程实体的运行过程,是系统进行资源分配和资源调度的一个独立单位。进程的组织方式:链接方式、索引方式。原创 2022-11-23 10:12:15 · 483 阅读 · 0 评论 -
【操作系统】第一章总结
1.1.1 操作系统的概念、功能和目标(系统资源的管理者、提供接口、作为扩充机器、虚拟机)_StudyWinter的博客-CSDN博客1.1.2 操作系统的特点1.1.2 操作系统的特征(并发、共享、虚拟、异步)_StudyWinter的博客-CSDN博客_操作系统特征并发、共享、虚拟、异步(1)并发并发:两个或多个事件在同一时间间隔内发生,这些事件在宏观上是同时发生的,在微观上是交替发生的, 操作系统的并发性指系统中同时存在着多个运行的程序并行:两个或多个事件在同一时刻发生(2)共享。原创 2022-11-22 18:18:06 · 1024 阅读 · 0 评论 -
3.1.1 什么是内存?进程的基本原理,深入指令理解其过程
1 思维导图2什么是内存?有什么作用2.1 存储单元2.2 几个常用数量单位&内存地址3进程运行的基本原理3.1指令的工作原理—操作码+若干参数(可能包含地址参数)从X=X+1大致看一下指令的执行过程3.2逻辑地址(相对地址)vs物理地址(绝对地址)3.3从写程序到程序运行—编译、链接、装入3.4装入模块装入内存不修改装入模块中的指令地址就直接装入内存的话:3.5装入的三种方式①绝对装入②...转载 2022-05-30 19:35:46 · 134 阅读 · 0 评论 -
2.4.4 死锁的处理策略-检测和解除
如果系统中既不采取预防死锁的措施,也不采取避免死锁的措施,系统很可能发生死锁。(1)死锁检测算法;(2)死锁解除算法;1 死锁的检测举个例子,可以消除所有边,即无死锁发生举个例子,不可消除所有边,即产生死锁2死锁的解除视频:王道计算机考研 操作系统_哔哩哔哩_bilibili...原创 2022-05-30 18:13:45 · 190 阅读 · 0 评论 -
2.4.3 死锁的处理策略-避免死锁
1 银行家算法2 什么是安全序列所谓安全序列3安全序列、安全状态、不安全状态、死锁之间的联系安全序列:就是指如果系统按照这种序列分配资源,则每个进程都能顺利完成。4避免系统进入不安全状态------银行家算法核心思想:在进程提出资源申请时,先预判此次分配是否会导致系统进入不安全状态。如果会进入不安全状态,就暂时不答应这次请求,让进程先阻塞等待。使用代码实现视频:王道计算机考研 操作系统_哔哩哔...原创 2022-05-29 19:05:42 · 229 阅读 · 0 评论 -
2.4.2 死锁的处理策略-预防死锁
1 思维导图2 破环互斥条件互斥条件:只有对必须互斥使用的资源的争抢才会导致死锁。该策略的缺点:并不是所有资源的可以改造成可共享使用的资源。并且为了系统安全,很多地方还必须保护这种互斥性。因此,很多时候都无法破坏互斥条件。3破坏不可剥夺条件不可剥夺条件:进程所获得的资源在未使用完之前,不能由其他进程强行夺走,只能主动释放。4破坏请求和保持条件请求和保持条件:进程已经保持了至少一个资源,但是由提出新的资源请求,而该资源又被其他进程占有,此时请求进程被阻塞,但又对自己..原创 2022-05-27 15:18:16 · 313 阅读 · 0 评论 -
2.4.1 死锁的概念
1 思维导图2 什么是死锁每个人都占有一个资源,同时又等待另一个人手里的资源,发生【死锁】。在并发环境下,各种进程因竞争资源而造成的一种互相等待对方手里的资源,导致各进程都阻塞,都无法向前推进的现象。这就是死锁,死锁发生后,如果没有外力干干涉,这些进程将都无法向前推进。3 死锁、饥饿、死循环的区别死锁:各进程相互等待对方手里的资源,导致各进程都阻塞,无法向前推进的现象。饥饿:由于长期得不到想要的进程,某进程无法向前推进的现象。死循环:某进程执行过程中一直跳不出某个循环的现原创 2022-05-27 14:36:19 · 139 阅读 · 0 评论 -
2.3.7 操作系统之管程和java中实现管程的机制
1 思维导图2 为什么引入管程3 管程的组成及基本特征管程的基本特性:(1)局部于管程的数据只能被局部于管程的过程所访问;(2)一个进程只有通过调用管程内的过程才能进入到管程访问共享数据;(3)每次仅允许一个进程在管程内执行某个内部过程。4管程实现生产者消费者问题转载:2.3.7 操作系统之管程和java中实现管程的机制_BitHachi的博客-CSDN博客...转载 2022-05-26 16:49:22 · 137 阅读 · 0 评论 -
2.3.6 操作系统之进程同步与互斥经典问题(生产者-消费者问题、多生产者-多消费者问题、吸烟者问题、读者-写者问题、哲学家进餐问题)
0.前言同步时,前V后P。 互斥:设置初值为1的互斥量;同步:设置初值为0的同步信号量(实现一前一后)1.生产者-消费者问题1.1 问题描述系统中有一组生产者进程和一组消费者进程,生产者进程每次生产一个产品放入缓冲区,消费者进程每次从缓冲区中取出一个产品并使用。(注: 这里的“产品”理解为某种数据) 生产者、消费者共享一个初始为空、大小为n的缓冲区。 只有缓冲区没满时,生产者才能把产品放入缓冲区,否则必须等待。 只有缓冲区不空时,消费者才能从中取出产品,否则必须等待。 缓转载 2022-05-25 17:38:06 · 2130 阅读 · 0 评论 -
2.3.5 操作系统之信号量机制实现进程的互斥、同步与前驱关系
1 思维导图实现进程互斥:(1)信号量初值设为1;(2)临界区之前对信号执行P操作;(3)临界区之后对信号执行V操作实现进程同步:(1)信号量初始值为0;(2)在“前操作”之后执行V操作;(3)在“后操作”之前执行P操作;实现进程的前驱关系:(1)每一对前驱关系初值问为0;(2)在每个“前操作”之后执行V操作;(3)在每个”后操作“之前执行P操作。2 信号量机制实现进程互斥(1)信号量初值设为1;(2)临界区之前对信号执行P操作;(3)临界区之后对信号执行V操转载 2022-05-24 14:54:03 · 307 阅读 · 0 评论 -
2.3.4 操作系统之信号量机制(整型信号量、记录型信号量P、V)
PV操作是一个重点和难点。1 思维导图整形信号量(1)用一个整型型变量作为信号量,数值表示某种资源数;(2)整型信号量与普通整型变量的区别:对信号量只能执行初始化、P、V三种操作;(3)整型信号量存在的问题:不满足让权等待原则记录型信号量(1)P操作中,一定是先value--,之后可能执行block原语;(2)V操作中,一定是先value++,之后可能执行wakeup原语;(3)能够判断在什么条件下需要执行block或者wakeup。2 为什么引入信号量机制为了更转载 2022-05-23 19:51:52 · 6225 阅读 · 0 评论 -
2.3.3 操作系统之实现临界区进程互斥的硬件实现方法
1 思维导图2 中断隐藏方法3 TestAndSet指令执行TSL指令时,它的内部运转逻辑: 假设lock现在为false,代表临界资源A空闲,那么我就可以访问这个资源,同时将lock=true,提醒别的进程,这个临界资源A我正在使用,让他们等等 假设lock为true,代表临界资源正在有人使用,所以我必须等待,并且将lock=true,并不影响什么,所以没关系,只是为了让lock为false时可以上锁,将上锁与检查在一个TSL指令完成。4Swap指令old是每个进程都要.转载 2022-05-23 16:26:00 · 328 阅读 · 0 评论 -
2.3.2 操作系统之实现临界区进程互斥的软件实现方法
1 思维导图软件实现方法的思想:在进入区设置并检查一些标志 来标明是否有进程在临界区中,若已有进程在临界区,则在进入区通过循环检查进行等待,进程离开临界区后则在退出区修改标志。入区通过循环检查进行等待,进程离开临界区后则在退出区修改标志。2单标志法算法思想:两个进程在访问临界区后会把使用临界区的权限转交给另一个进程。也就是说每个进程进入临界区的权限只能被另一个进程赋予。2 双标志先检查法算法思想:设置一个布尔型数组,数组中的各个元素用来标记进程想进入临界区的意愿;每个.转载 2022-05-22 16:19:24 · 498 阅读 · 1 评论 -
2.3.1 进程的同步与互斥
1 思维导图2 进程同步同步也称为直接制约关系。 在多道程序环境下,进程是并发执行的,不同进程之间存在着不同的相互制约关系。为了协调进程之间的相互制约关系,如等待、传递信息等,引入了进程同步的概念。进程同步是为了解决进程的异步问题。 一个简单的例子来理解这个概念。 例如,让系统计算1 + 2x3,假设系统产生两个进程: 一个是加法进程,一个是乘法进程。要让计算结果是正确的,一定要让加法进程发生在乘法进程之后,但实际上操作系统具有异步性,若不加以制约,加法进程发生在乘法进程之前是绝对有可能的转载 2022-05-22 15:42:30 · 432 阅读 · 0 评论 -
2.2.5 操作系统之调度算法(时间片轮转调度算法、优先级调度算法、多级反馈队列调度算法)
1 思维导图2 时间片轮转-RRRound-Robin时间片为2举例以时间片为5举例可能出现的问题,比如与FCFS对比3优先级调度算法非抢占式例子- 抢占式例子补充4多级反馈队列调度算法举个例子5三种算法的对比总结转载:2.2.5 操作系统之调度算法(时间片轮转调度算法、优先级调度算法、多级反馈队列调度算法)_BitHachi的博客-CSDN博客_...转载 2022-05-21 15:14:24 · 369 阅读 · 0 评论 -
2.2.4 操作系统之作业/进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先)
1 思维导图2 先来先服务—FCFSFirst come first sever3短作业优先—SJFShortest Job First非抢占式—SJF抢占式—SJF(SRTN)注意几个细节4高响应比优先—HRRNHighest Response Ratio Next5三种算法的对比和总结转载:2.2.4 操作系统之作业/进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先)_BitH...转载 2022-05-21 11:32:12 · 238 阅读 · 0 评论 -
2.2.3 操作系统之调度算法的评价指标(cpu利用率、系统吞吐量、周转时间、等待时间、响应时间)
1 思维导图2 CPU利用率3 系统吞吐量4周转时间5等待时间6响应时间转载:2.2.3 操作系统之调度算法的评价指标(cpu利用率、系统吞吐量、周转时间、等待时间、响应时间)_BitHachi的博客-CSDN博客_响应时间周转时间等待时间...转载 2022-05-21 10:53:46 · 376 阅读 · 0 评论 -
2.2.2 操作系统之进程调度的时机(主动放弃与被动放弃)、切换与过程(广义与狭义)、方式(非剥夺与剥夺)
1 思维导图(1)什么时候需要进程调度?主动放弃和被动放弃。(2)什么时候不能进行进程调度?(a)在处理中断时;(b)进程在操作系统内核程序临界区;(c)原子操作过程中。2 时机2.1什么时候进行进程调度?2.2什么时候不能进行进程调度?2.3OS内核程序临界区与普通临界区的进程调度情况3进程调度的方式所谓进程调度方式,是指当某个进程正在处理机上执行时,若有某个更为重要或紧迫的进程需要处理,即有优先权更高的进程进入就绪队列,此时应如何...转载 2022-05-20 20:06:17 · 1257 阅读 · 0 评论 -
2.2.1操作系统之处理机调度的概念及层次
1 思维导图高级调度(作业调度)中级调度(内存调度)低级调度(进程调度)2 调度的基本概念3 调度的三个层次3.1 高级调度( 作业调度)高级调度(作业调度):按一定原则从外存上处于后备队列的作业中挑选一个(或者多个)作业,给它们分配内存等必要的资源,并建立相应的进程(建立PCB),以使它(们)获得竞争处理机的权利。3.2中级调度(内存调度)中级调度(内存调度)就是要决定哪个处于挂起状态的进程重新调入内存,一个进程可能会被多次调出、调入内存,因此中级...转载 2022-05-20 15:01:31 · 277 阅读 · 0 评论 -
2.1.5 操作系统之线程概念与多线程模型
1 思维导图线程是处理机调度的单位,进程资源分配的单位。内核级线程才是处理机分配的单位。2 为什么要引入线程为了方便于理解,我打开了我的任务管理器,可以看出chrome一个进程,下面有很多分支,可以把这些分支当做线程看待,PID即进程和线程都有的标识符。3什么是线程线程是一个基本的CPU执行单元,也是程序执行的最小单位。引入线程后,进程只作为除CPU之外的系统资源的分配单元。4引入线程带来的变化及进程与线程之间的比较5线程的属性6...转载 2022-05-20 11:34:12 · 316 阅读 · 0 评论 -
《王道操作系统》学习笔记总目录+思维导图
本篇文章是对《2021王道操作系统》所有知识点的笔记总结归档,虽说是2021年的,但是这些都是最核心的底层基础知识,过多少年都不会有很大的变化,核心都差不多。我的武功秘籍:note.bithachi.cn,希望可以一起交流学习。学习视频:王道操作系统其它学习时总结的目录笔记,有思维导图和案例。见下图看到很多小伙伴需要课件,这里直接附上网盘链接:链接:百度网盘 请输入提取码提取码:8q81复制这段内容后打开百度网盘手机App,操作更方便哦第 1 章 计算机系统概述1.1 操转载 2022-05-20 11:17:31 · 2646 阅读 · 0 评论 -
2.1.4 进程之间的通信(共享通信、消息传递、管道通信)
1 思维导图进程通信分为共享内存、管道通信、消息传递(1)共享内存:要互斥地访问共享空间;(2)管道通信:一个管道只能实现半双工通信;写满时,不能再写,读空时,不能再读;没写满,不能读,没读空,不能写。(3)消息传递2进程通信图中我们可以知道什么是进程通信,以及进程通信的低级和高级方式; 我们还可以知道为什么要引入进程通信方式,以及它的意义进程通信就是进程之间的信息交换。2.1共享存储共享一块大家...原创 2022-05-19 17:33:52 · 2542 阅读 · 1 评论 -
2.1.3 操作系统之原语实现对进程的控制
1 思维导图进程控制就是要实现进程状态的切换。进程控制使用原语实现:(1)原语用开/关中断实现;(2)原语是一种特殊的程序;(3)原语必须一气呵成,不可中断。2进程控制3 原语实现对进程的控制关于原语的作用和处在操作系统内核的重要地位可参考:1.3.1 操作系统的运行机制和体系结构(大内核、小内核)_BitHachi的博客-CSDN博客4回忆进程的组织进程在操作系统中的组织使各个进程能够有序的进行切换和运行5 进程控制大致图解这里说...转载 2022-05-19 14:52:39 · 840 阅读 · 0 评论 -
2.1.2 操作系统之进程的状态(运行、就绪、阻塞、创建、终止)及转换(就绪->运行、运行->就绪、运行->阻塞、阻塞->就绪)
1 思维导图总览五种状态:创建态、终止态、就绪态、运行态、阻塞态。2 进程的状态2.1 三种基本状态(就绪、运行、阻塞)三种基本的状态:(1)运行态:占有CPU,并在CPU上运行;(2)就绪态:已经具备运行条件,但是由于没有空闲的CPU,而暂时不能运行;(3)阻塞态:因为等待某一事件而暂时不能运行。2.2创建态和结束态创建态结束态3进程状态之间的转换进程一共有如下5种状态,那么他们之间如何实现切换呢?从一个进程的从无到有...转载 2022-05-19 11:27:35 · 16544 阅读 · 1 评论 -
2.1.1 操作系统之进程的定义、特征、组成、组织
1.进程的定义1.1 程序的概念程序就是一个指令序列。1.2 进程的概念进程由程序段、数据段、进程控制块(PCB)三部分组成。进程和程序的区别和联系区别:(1)进程是动态的;程序是静态的。(2)进程有独立性,能并发执行;程序不能并发执行。(3)二者无一一对应关系。(4)进程异步运行,会相互制约;程序不具备此特征。但是,进程与程序又有密切的联系: 进程不能脱离具体程序而虚设, 程序规定了相应进程所要完成的动作。(5)组成不同。进程包含PCB、程序段、数据段。程序.转载 2022-05-17 19:30:25 · 743 阅读 · 0 评论 -
1.3.3 系统调用(执行过程、访管指令、库函数与系统调用)
1 系统调用知识框架图系统调用操作系统提供给应用程序的接口;作用:应用程序可以通过系统调用(程序接口)请求获得操作系统放入服务;系统调用会使处理器从用户态切换到核心态;系统调用相关涉及到系统的资源管理、进程管理之类的操作,对整个操作系统影响很大。因此,必定需要使用某些特权指令才能完成;所以系统调用的处理器需要由操作系统的内核程序负责完成,要运行到核心态。2 系统调用和库函数的区别(1)系统调用是操作系统向上提供的接口;(2)有的库函数是对系统调用的进一步封装;(3)如转载 2022-05-16 20:16:10 · 1226 阅读 · 0 评论 -
1.3.2 中断和异常(内中断和外中断、中断处理过程)
中断机制的诞生:为了实现多道程序并发执行的一种技术,为了提高资源利用率;中断的分类:内中断(信号来自CPU内部)、外中断(信号来自CPU外部)中断处理过程:关中断; 保存断点; 中断服务服务程序寻址; 保存现场和屏蔽字; 开中断; 执行中断服务程序; 关中断; 恢复现场和屏蔽字; 开中断-》中断返回。...转载 2022-05-16 19:28:01 · 690 阅读 · 0 评论 -
1.3.1 操作系统的运行机制和体系结构(大内核、小内核)
1.操作系统的运行机制和体系结构 两种命令:特权命令 和 非特权命令;两种处理器状态:核心态(管态) 和 用户态(目态);两种程序:内核程序 和 用户程序;2.操作系统内核在计算机系统中的层次结构3.操作系统体系结构类比4.操作系统用户态和核心态的转换通过中断,设置程序状态字(PSW)转载:1.3.1 操作系统的运行机制和体系结构(大内核、小内核)_BitHachi的博客-CSDN博客...转载 2022-05-16 17:59:50 · 291 阅读 · 0 评论 -
1.2 操作系统的发展和分类(手工、单道/多道批处理、分时、实时、网络、分布式、嵌入式、个人计算机)
1.操作系统的分类及其特征优劣1手工操作阶段2批处理阶段(单道、多道)3分时操作系统4实时操作系统5网络操作系统6分布式操作系统7嵌入式操作系统8个人计算机操作系统2.操作系统的发展历程转载:1.2 操作系统的发展和分类(手工、单道/多道批处理、分时、实时、网络、分布式、嵌入式、个人计算机)_BitHachi的博客-CSDN博客...转载 2022-05-15 16:53:04 · 428 阅读 · 0 评论 -
1.1.2 操作系统的特征(并发、共享、虚拟、异步)
操作系统是一种系统软件,但与其它系统软件和应用软件有很大的不同,它有自己的特殊性,及基本特征。1.并发并发:两个或多个事件在同一时间间隔内发生,这些事件在宏观上是同时发生的,在微观上是交替发生的, 操作系统的并发性指系统中同时存在着多个运行的程序 并行:两个或多个事件在同一时刻发生 一个单核(CPU)同一时刻只能执行一个程序,因此操作系统会协调多个程序使他们交替进行(这些程序在宏观上是同时发生的,在微观上是交替进行的) 操作系统是伴随着“多道程序技术出现的”,因此操作系统和并发是一同诞生的转载 2022-05-15 16:21:55 · 2202 阅读 · 0 评论 -
1.1.1 操作系统的概念、功能和目标(系统资源的管理者、提供接口、作为扩充机器、虚拟机)
1.熟悉的操作系统举例2 操作系统的层次结构3.操作系统的概念是系统最基本最核心的软件,属于系统软件 控制和管理整个计算机的硬件和软件资源 合理的组织、调度计算机的工作与资源的分配 为用户和其它软件提供方便的接口和环境4.操作系统的功能和目标先放一张思维导图,大致知道操作系统的具体功能和目标,然后再一一展开叙述。用一个直观的例子来理解上述图中操作系统的功能:我们假设:用户是雇主,操作系统是工人(用来操作机器),计算机是机器(由处理机(CPU)、存储器、..转载 2022-05-15 16:10:51 · 937 阅读 · 0 评论