![](https://img-blog.csdnimg.cn/20210827160717308.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
操作系统
文章平均质量分 65
从所周知,操作系统,就是操作系统!!!
ybbgrain
这个人很懒,什么也没有写。。。
展开
-
操作系统(学习整理目录树)
操作系统目录树。原创 2021-09-03 14:45:48 · 411 阅读 · 0 评论 -
进程相关知识总结
进程相关知识总结原创 2022-07-05 11:39:29 · 724 阅读 · 0 评论 -
3.1.8快表
快表查询机制。原创 2022-06-23 10:40:47 · 2300 阅读 · 0 评论 -
3.1.7分页存储的基本地址变换机构
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述什么是基本地址变换机构?基本地址变换机构,可以理解为将逻辑地址转变为物理地址的一组硬件机构,这些硬件需要做些什么事情,才能将逻辑地址转换为物理地址。页表寄存器基本地址变换机构,可以借助进程的页表将逻辑地址转换为物理地址。通常情况下,会在系统中设置一个页表寄存器(PTR),存放页表在内存的起始地址F和页表长度M。当进程还是未执行的时候,页表的起始地址和页表长度,放在进程控制块当中,当进程被调度时.原创 2021-09-23 15:53:21 · 1768 阅读 · 0 评论 -
linux常用命令
目录概述命令测试网页概述linux是比较常用的一个系统,熟悉他的命令,特别是在服务器上能够很好的运用。本次只是对基本的命令记录。命令cd :进入该用户的主目录 ~(root用户为/root,其他用户为/home/用户名)cd .. :返回上一级目录(注意要空格)cd - :返回上次所在目录cd / :返回根目录 (绝对路径)cd ./目录1/目录2 :进入当前目录下的子目录(相对路径)ls :列出当前目录下的,文件和目录。mkdir a...原创 2021-09-22 10:18:12 · 123 阅读 · 0 评论 -
3.1.6分页存储
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。目录概述分页存储的概念地址转换的实现页面内存的起始地址怎么得到概述为什么要使用分页存储?前面了解到,动态分区算法,这是连续的分配算法,会造成很多的内存碎片,这些内存碎片会导致内存的利用率低。分页存储的思想是什么?分页存储肯定是为了解决,动态分区算法遗留下来的问题,内存碎片很多,所以分页存储就将进程拆分成一个个小部分,再将内存拆分成一个个小部分,分开存储,存入表中记录,在使用的时候再来拿,拼凑。原创 2021-09-16 11:26:31 · 631 阅读 · 1 评论 -
3.1.5动态分区算法
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述动态分区算法是做什么的?为了解决,在众多满足需求的内存空间,动态地选择究竟放在哪里。首次适应算法算法思想:从低地址到高地址依次,依次排查,找到一个满足需求的空闲内存空间。然后结束使用该空间,并写入表。首次适应算法,得到的空间就是10。最佳适应算法算法思想:将内存地址从小到大依次排列起来,然后从小到大来依次查找,找到第一个能够满足的空闲空间来使用。ps:相对于首次适应算法,就只是将内存从.原创 2021-09-15 18:36:50 · 176 阅读 · 0 评论 -
3.1.4内存的分配与回收
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。目录概述单一连续分配固定分区分配动态分区内部碎片外部碎片概述内存是怎样进行分配和回收的呢?内存的分配和回收,也像进程调度那样,是根据一些算法或规则来实现的,而我们需要了解的是这些算法或规则。而本节所了解的,都是连续分配。单一连续分配单一连续分配的方式中,内存被分为系统区和用户区,系统区位于内存的低地址部分,用于存放系统的相关数据,用户区则存放用户的相关数据。内存中只能有一道用户程序,原创 2021-09-15 14:42:28 · 169 阅读 · 0 评论 -
3.1.3覆盖技术与交换技术
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。目录概述覆盖技术交换技术概述为什么要使用覆盖技术和交换技术?这些技术又是什么?早期的计算机,内存容量很小,其实现在也比较小,例如一个4G的内存电脑,是怎么运行32G的游戏的呢?这就是覆盖技术和交换技术要做的事情。而覆盖技术和交换技术可用理解为一种算法,来实现这种调度的算法。覆盖技术将程序分为多个段,常用的段常驻内存,不常用的段需要时调入内存。固定区:常用段存放的地方,存入进去的就不...原创 2021-09-13 16:00:44 · 726 阅读 · 0 评论 -
3.1.2内存怎么样管理
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。目录概述三种装入内存的方式内存保护总结概述内存该怎么样管理呢?操作系统作为系统资源的管理者,当然也需要管理内存资源。数据要被放在内存的哪里?内存什么时候回收?那些区域的内存资源已经满了?这些都是操作系统需要做的事情。当然,还有操作系统的虚拟性,为内存提供一种技术,从逻辑上来扩充计算机的内存。三种装入内存的方式内存保护为什么要使用内存保护,是为了保证进程在各自的储存空...原创 2021-09-13 14:29:40 · 103 阅读 · 0 评论 -
3.1.1内存,理解指令
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述什么是内存?由于CPU与硬盘的速度极不匹配,所以设计了内存,即CPU拿数据,只能去内存中拿。存储单元什么是存储单元?为什么要有?存储单元是内存上的一个个有编号的块,每个块当中就方有数据。在多道批处理系统当中,并发执行的程序很多,那么怎么快速的找到各自需要的数据,就是根据存储单元的编号来找的。(从0开始,占1B)。指令的执行过程指令编译之后,就会根据操作指令(例如数...原创 2021-09-13 13:51:01 · 196 阅读 · 0 评论 -
2.3.8银行家算法
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。目录概述思想示例总结概述银行家算法是什么?银行家算法主要是为了避免死锁的,是针对避免死锁产生的一种算法。最初是一个人为银行系统设计的,确保银行始终有现金贷款给客户,不会发生不能满足客户的情况。所以叫银行家算法。那么死锁和前面了解的饥饿有什么关系呢?死锁和饥饿都是,管理者的问题,即操作系统的问题。思想在进程提出资源申请的时候,先预先判断,这次分配是否会导致系统进入不安全状态,...原创 2021-09-10 17:28:39 · 1108 阅读 · 0 评论 -
2.3.7管程和JAVA中实现管程的机制
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述管程是什么?管程是一种特殊的软件模块,有以下部分组曾:局部于管程的共享数据结构说明。 对数据结构进程操作的一组过程。 对局部的管程,的共享数据设置的初始语句。 管程有一个名字ps:(管程当作类class,共享数据结构当做类里面的变量,一组过程可以看做是类里面的函数)。为什么要引入管程?信号量机制存在问题,编程困难,易出错。为了使程序员不再关心复杂的PV操作。管程的基本特征局部..原创 2021-09-10 16:41:29 · 304 阅读 · 0 评论 -
2.3.6生产者消费者问题,哲学家进餐问题,读者-写者问题
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。目录概述生产者-消费者问题多生产者-多消费者问题读者-写者问题吸烟者问题哲学家进餐问题概述如何使用信号量机制(P,V操作)实现生产者,消费者进程的功能呢?同步:设置初值为0的同步信号量。互斥:设置初值为1的互斥信号量。对资源的申请和释放:设置一个信号量,初始值为资源的数量,需要等待其他进程释放资源才能继续执行下去。生产者-消费者问题系统中有一组生产者进程,一组消费者进程,生产..原创 2021-09-10 16:07:22 · 869 阅读 · 0 评论 -
2.3.5进程同步,互斥与前驱的关系
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述引入了信号量机制之后,可以实现几种进程之间的关系。同步,互斥,前驱。互斥分析资源数放在临界区,设置互斥信号量mutex,初始为1。 不同的临界区资源,需要设置不同的互斥信号量。 PV操作必须成对出现。semaphore mutex = 1;P1(){ 。。。 p(mutex); 临界区代码 v(mutex); 。。。}P2(){ 。。。 .原创 2021-09-08 11:25:11 · 446 阅读 · 0 评论 -
2.3.4信号量机制
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述为什么要引入信号量机制呢?首先,信号量机制是为了解决进程互斥与同步的问题。那么互斥与同步存在什么问题呢?进程互斥有4种软件实现办法(单标志法,双标志法,双标志后检查法,Peterson算法)进程互斥有3种硬件实现办法(中断屏蔽法,TS/TSL指令,Swap/XCHG指令)存在了一些问题:双标志检查法,检查和上锁,无法一气呵成,从而导致两个进程都有可能同时进入临界区。其他的所有办法,都违反了“让权等待”原创 2021-09-08 10:41:06 · 565 阅读 · 0 评论 -
2.3.3临界区进程互斥的硬件方法
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述临界区互斥,除了有软件方法(算法),还有硬件方法的实现,而硬件方法大部门都是通过命令来实现。中断隐藏法利用开/关中断指令实现,即某个进程开始访问临界区,那么就不允许被中断,也就避免了进程的切换,也不会出现两个进程同事访问临界区的情况。这个方法,简单,有效,但是会导致效率很低。TestAndSet指令执行TestAndSet指令的逻辑是:假设现在lock为false,代表临界资源A空闲,那么就..原创 2021-09-07 17:34:46 · 682 阅读 · 0 评论 -
2.3.2临界区进程的软件实现方法
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述进程的软件实现方法,就是在进入区设置检查一些标志,来标明是否有进程在临界区中,如果已经有进程在临界区,那么通过循环检查进行等待,进程离开临界区后则在退出修改标志。简而言之,就是入区循环检查,离开临界区则修改标志。目录概述单标志法双标志先检查法双标志后检查法Peterson算法单标志法每个进程进入临界区都会被赋予权限,但是这个临界区只能赋予一个进程。int turn = 0;..原创 2021-09-07 17:01:10 · 271 阅读 · 0 评论 -
2.3.1进程的同步与互斥
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。本文目录本文目录概述概述进程原创 2021-09-07 16:03:22 · 99 阅读 · 0 评论 -
2.2.4调度算法的评价指标
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述前面了解了调度的时机,那么调度的评价标准是什么呢?评价标准有:CPU利用率,系统吞吐量,周转时间,等待时间,响应时间。标准详述CPU利用率CPU利用率是指,CPU忙碌的时间占总时间的比例。利用率 = 忙碌的时间 / 总时间系统吞吐量系统吞吐量 = 总共完成了多少道作业 / 总共花了多少时间周转时间周转时间 = 作业完成时间 - 作业提交时间平均周转时间 = 各作业周转时间之和 .原创 2021-09-03 17:28:47 · 731 阅读 · 0 评论 -
2.2.2进程调度的时机
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。进程调度的时机1. 当前进程主动放弃处理机:进程正常终止 运行过程中发生异常而终止 进程主动请求阻塞2. 当前进程被动放弃处理机:分给进程的时间片用完 有更紧急的事需要处理 有更高优先级的进程进入就绪队列3. 不能进行进程调度与切换的情况:在处理中断的过程中,中断处理过程复杂,与硬件密切相关,很难做到在中断处理过程中进行进程切换。 进程在操作系统内核程序临界区。 在原语操作过程中,不可以被终止。进程调原创 2021-09-03 17:10:25 · 1303 阅读 · 0 评论 -
2.2.1处理机调度的概念
全知识整理目录操作系统整理的目录,包括了整理的所有操作系统的知识。概述当有很多的任务需要处理,但是资源又有限,这些事情没办法同时处理。这就需要确定,一些规则,来决定处理这些任务的顺序。这就是调度的概念。调度的三个层次高级调度(作业调度)按照一定的原则,从外存上处于后备队列的作业中,挑选出一个(或多个)作业,给他们分配内存等必要资源,并建立相应的进程(建立PCB),以使他们获得竞争处理机的权利。高级调度是辅存(外存)与内存之间的调度。每个作业只调入一次,调出一次。作业调入.原创 2021-09-03 16:29:52 · 147 阅读 · 0 评论 -
2.1.5线程概念与多线程模型
概述操作系统整理的目录,包括了整理的所有操作系统的知识。在没有线程以前,进程是程序执行流的最小单位。那为什么要引入线程呢?引入线程主要是为了提高并发量。例如:你去图书馆看书,一个桌子有4个位置,可能陌生的人之间,不愿意挨着坐,就会造成座位的浪费。如果引入线程的思想,就是,将你分入寝室,分入一个班。那么你的室友,同班同学放入你坐的桌子,大家都很愿意,也提高了桌子的并发量。线程就是这样的一种思想。所以,引入线程之后,线程就是程序执行流的最小单位。引入线程的变化线程是一个原创 2021-09-03 15:45:24 · 161 阅读 · 0 评论 -
2.1.4进程之间的通信
概述为什么进程之间还需要通信呢?进程之间都拥有各自独立的内存地址空间,为了保证安全,一个进程是不能够直接访问另一个进程的地址空间。所以操作系统提供了多种进程之间通信的方法。通信方式进程通信有三种方式,共享存储,消息传递,管道通信。共享存储共享一块大家都能访问的内存空间,一次只能由一个进程进行读写操作。基于数据结构共享:比如共享空间是一个长度为10的数组,这种共享方式速度慢,是一种低级通信方式。 基于存储区共享:在内存当中画出一块共享存储区域。而数据的形式,存放的位置都.原创 2021-09-03 14:30:46 · 136 阅读 · 0 评论 -
2.1.3原语对进程的控制
概述进程控制,就是对系统当中所有进程,实施有效的管理,它具有创建新进程,撤销已有进程,实现进程状态转换等功能。即,控制几种进程状态的转换。进程控制原语进程控制会导致进程状态的转换。无论是那个原语,都会做以下事情。更新PCB中的信息(修改进程状态标志,将运行环境保存到PCB,从PCB恢复运行环境)所有进程原语,一定会修改进程状态标志。 剥夺当前运行进程的CPU使用权,必然需要保存其运行环境。 某进程开始运行前必然要恢复期运行环境。 2.将PCB插入合适的队列。...原创 2021-09-03 14:04:24 · 851 阅读 · 0 评论 -
2.2.1进程的状态(就绪,运行,挂起等)
概述为什么会存在这么多种进程的状态呢?进程是程序的一次执行。在这个执行过程种,有时进程正在被CPU处理,有时又在等待CPU服务,所以就出现了几种进程的状态。基本状态就绪,运行,阻塞(挂起)基本转换状态就绪,运行,阻塞,创建态,终止态。创建态操作系统需要完成创建进程。操作系统统一为该进程分配,所需要的内存空间等系统资源,并未其创建,初始化PCB(如进程分配的PID)。结束态进程运行结束(或者因为其他情况,需要撤销进程)那么操作系统需要完成撤销进程相关的工作。完成原创 2021-09-03 10:50:18 · 3551 阅读 · 0 评论 -
2.2.3进程调度算法
概述进程的几种状态有,就绪,运行,挂起(阻塞)。简单的看就三种状态,但是许多的资料还细分为就绪挂起,阻塞挂起,这些都是可以直接理解的,感觉没必要分得那么细。几种调度算法为什么要使用调度算法呢?CPU是一个有限的资源,那么谁来使用,什么时候使用就是需要解决的问题,而设计了几种算法来解决这个资源使用的问题。先来先服务算法FCFS这是生活当中就使用的一种算法。排队进电梯,就餐,排队进图书馆等。优点:公平,简单,不会存在使用不到资源的进程。缺点:对长作业优先,对短作业不利。..原创 2021-09-01 14:35:41 · 168 阅读 · 0 评论 -
PV操作的进一步理解(同步与互斥)
几年前对PV操作进行了基本的理解PV操作的初次理解。现在进一步理解同步与互斥方向的问题。主要以题的方式理解。如上述题,是20年408的真题。首先要明白信号量的问题,信号量(semaphore)。信号量semaphore>0的时候,表示还有空余的资源可以使用。当V操作一个资源的时候semaphore-1。信号量semaphore<0的时候,表示还有空余的资源可以使用。当P操作一个资源的时候,semaphore+1。了解了信号量之后就能够很好的理解上述题目了。.原创 2021-08-27 14:28:45 · 997 阅读 · 0 评论 -
PV操作初学理解
题记:最近一直在学习操作系统,学到pv操作这里的时候想更好的理解一下正文:概要:pv操作只作用于并发进程,也就是说在非并发进程里面基本不会使用。 而在并发进程使用中就会出现共享资源,在共享资源的使用中就出现了很多问题,P操作:申请资源(pulse?)V操作:释放资源简易的pv操作实例:题目:公路上有5辆车,有2辆向左,有3辆向右行(如图)进行P操作的过程就是...原创 2019-10-13 10:41:58 · 5722 阅读 · 2 评论