操作系统原理
操作系统原理
meternaly
如果你也喜欢三桥贵志,我们就是异父异母的好兄弟。
展开
-
8.4文件目录
每个用户文件夹下都有个文件指针,都指向同一个外存的数据,相当于共享数据。在开始扫描时有一步是比较重要的,就是应该有个变量来记录为位示图总的空闲的盘块数,否则如果空闲的少于需要的,检索也是在做无用功。行号和列号都是从1开始编的,也是以从0开始,但是需要修改公式。...原创 2020-06-05 15:50:36 · 179 阅读 · 0 评论 -
8.3文件的物理结构
与线性表的缺点相同,想在文件中插入新的记录时,数据要整体往后移动。浪费时间。一个文件中的记录都是指针连接的,好处就是增加新记录只需要修改指针,坏处就是要查找某一个记录需要顺序查找。链式是整个磁盘一张索引表,索引分配是一个文件一个索引表,里面存放每个盘块的指针。单级索引也有缺陷,如果文件很大,索引表也会很大,检索就会花费比较多时间,引入多级索引。主索引和次索引以及磁盘块都是1kB,由于每一个块号占4B,那每一块可以存放256个盘号,主索引块可以存放256个次索引块号,一个次索引..原创 2020-06-05 14:25:09 · 398 阅读 · 0 评论 -
8.2文件的逻辑结构
第一个是主索引表,第二个是次索引表。先按索引找到大概位置,然后顺序查找,之后根据索引得到实际数据。原创 2020-06-02 09:08:45 · 172 阅读 · 0 评论 -
第八章文件系统 8.1文件的概念
最底层是需要管理的数据,第二层是管理需要用到的工具。相当于创建一个目录,用于给文件外存地址编号,每次打开文件不需要再次检索,只需要根据对应编号取外存地址就可以。...原创 2020-06-02 08:57:21 · 172 阅读 · 0 评论 -
7.2磁盘调度算法
查看左右两边的磁道哪个经过磁道少到哪一个。没有再次到168磁道,是因为一开始就先扫描的168,168路径最短。距离最远的请求可能会迟迟得不到处理,导致饥饿。也叫电梯算法,从里向外,磁道号从大到小,也就是电梯号从上到下,168先扫描了,从里向外,也就是依次找最近的小的,之后到117到达最外面,又从外向里,依次找最近的大的。两端等待时间可能会过长,假如最外面需要访问磁道,磁头在最里面,它不仅要到最外面花费时间,同时中间可能有很多磁道被访问,等待时间过长。但是平均寻道长度没有...原创 2020-05-29 11:31:18 · 845 阅读 · 0 评论 -
第七章 磁盘存储器的管理 7.1磁盘存储器
读数据磁转电,写数据电转磁。通过读写磁头来写入和读出数据,读写磁头只能在半径上伸缩,来确定磁道,精确位置还需要盘面的旋转。原创 2020-05-29 10:03:55 · 193 阅读 · 0 评论 -
6.3假脱机技术
软件模拟硬件功能输入井和输出井是外存上的,输入/输出缓冲区是内存的。!I/O设备与外存相联,输入数据,CPU给通道I/O信号,先送给外存输入进,然后输入井送入缓冲区。输出时从缓冲区,到输出井,再到低速设备。为了解决I/O设备与外存速度不匹配问题。在外存中开辟输出/输入井来起到缓冲作用。如共享打印机。都可以将要打印的文档传到打印机连着的主机的硬盘上。...原创 2020-05-26 10:44:11 · 465 阅读 · 0 评论 -
6.2高速缓存与缓存区
CPU需要检测中断信号数据的正确性,有了缓存后,可以一批一批处理中断,减少频率。两者不可同时读取。必须缓冲区1满才可以向缓冲区2放数据,在向缓冲区2放入数据时,CPU已经可以从缓冲区1取数据了,达到并行工作。...原创 2020-05-26 09:50:39 · 239 阅读 · 0 评论 -
5.3页面置换算法
最佳置换算法OPP引用串就是按这个顺序访问页面。页的编号。往前看,选择最远一个被使用的置换,越近越不置换。理论价值可以去评价其他算法,但是没有实践价值,未来是具有很多不确定性的。依次选择往后看选择一个最远的。如果不将访问过的1置为0,假设全部都被访问过,那么都是1,clock算法选择一圈没有找到合适的,重新选择还是没有合适的就变成死循环了,必须保证他下一轮淘汰一个页。缺点是只根据访问位来淘汰页,没有考虑到其他因素。改进的clock算法增加了修改位。![](h.原创 2020-05-22 13:34:09 · 163 阅读 · 0 评论 -
5.2请求分页存储管理方式
基本思想:将虚拟技术和分页存储结合起来,那么当一个程序内存无法装下时,就先装入部分程序执行,分页存储管理方式是将程序分成一个个页,那么内存中也就是先存放部分页。步骤:在虚拟技术的管理下,页表的属性不在页号和物理块号两部分。一个页面不管是不是装入内存中,在外存都会有一个备份,外存地址也就是页面在外存的物理块号。将页面装入内存实际上就是将外存上的页面复制一份到内存。修改位,一个文件被装入内存运行是可能会被修改的,那么如果页面置换的话,肯定先置换没有修改过的页面,被修改的如果被置换,为了保证外存的原创 2020-05-22 11:32:10 · 1495 阅读 · 0 评论 -
第五章 虚拟存储器 5.1虚拟存储器概述
也可以运行,采用虚拟技术。只把运行的那一部分装入内存,其余的先装在外存等待。局部性原理根据局部性原理,就可实现虚拟技术。就可以解决即使装不下也可以运行程序。将虚拟技术和分页存储管理结合起来。只有部分页在内存当中。那么cpu取某页数据时就出现了下图的步骤。...原创 2020-05-22 11:11:15 · 178 阅读 · 0 评论 -
4.5分段存储管理方式
分页存储只是考虑到了空间利用,可能会将不同的两个程序的片段存放在一个页中,这时就破坏了数据的完整性,并且还需要额外的数据结构来记录那一部分是谁的程序片段。因此,引入分段存储管理方式。每个段就是一个函数。与连续分配管理方式差不多,但是要更好一些,原来是一个程序连续存储在内存中,这会是一个段连续存储在内存中。计算物理地址要更容易一些,基地址在段表中 直接给出,偏移量在逻辑地址也给出了。要先找物理地址之前,要判断两次是否越界,段号是否越界,偏移量对比段表长度是否越界。都没有越界,就可以查到段原创 2020-05-15 09:25:00 · 620 阅读 · 0 评论 -
4.4分页存储管理方式
一个进程只能在一个分区内连续存储,不能分散的存储到多个分区。操作系统的最主要的设计目标就是资源利用率的提高,因此非连续存储的资源利用率远远大于连续存储的资源利用率。将会面临一种情况,内存中的连续空间没办法完全存储用户程序,但是零零散散的小分区拼凑起来可以存储用户程序。将用户程序切分成一个个大小相同的页并编号,编号从0开始。主存也要切成和用户程序大小相同的页,并编号。拓展:数组为什么会从0开始,如果首地址是0,基地址加偏移量会方便计算,2这个元素的相对偏移就是2,如果首地址从1开始,计算相对偏移原创 2020-05-08 21:53:34 · 463 阅读 · 0 评论 -
4.3连续分配存储管理方式
固态分区法一个分区内没有用完的存储空间是内碎片。动态分区法C完成后将空闲区分配给E还有14k空闲区,如果下面的进程没有合适的可以分配,就是外碎片。FD完成后也可以合并成一块大的空闲区。动态分配大小和数目都是可变的。但是只能是上下相邻的,不可以跳转合并。将空闲的分区给合并成一个按起始地址递增的可用表或自由链。19k的进程按地址查找,30k的空闲区符合要求,产生一个...原创 2020-05-08 11:49:55 · 228 阅读 · 0 评论 -
4.2程序的装入与链接
编译:排错,语义错误,语法错误,将源程序编译成目标程序。链接:将一组目标模块和库函数封装成装入模块。装入:由转入程序将装入模块装入内存。装入模块直接生成绝对地址,装入内存,只适合单道程序系统,多道程序系统是无法事先预知存储的绝对地址的。装入模块内是相对地址。不需要事先指定绝对地址,采用相对地址,根据内存的情况,选择存储位置,绝对地址加上相对地址(偏移量)。但是一旦存储到内存,实际...原创 2020-04-28 10:47:25 · 256 阅读 · 0 评论 -
第四章存储器管理 4.1存储器的层次结构
本章内容导入编译程序后,需要连接库之类的资源。连续分配算法相当于链式存储结构,离散分配算法相当于顺序存储结构。动态分区的最佳适应:在内存中找出最适合它容量大小的一块供它运行。分页就是将程序一部分一部分地分成相等地若干页。分段就是一个函数一个函数分段。当内存不够用时采用虚拟内存技术。请求的方式。内存碎片:零零散散没有被用到的小内存。逻辑地址是程序暂时赋予的,比如程序运行完毕出现的...原创 2020-04-21 09:25:38 · 288 阅读 · 0 评论 -
3.6死锁的检测与解除
例子:r1分配两个资源给P1进程,P1进程向r2申请一个资源。发生死锁,每个进程的资源都不够用,形成僵持。原创 2020-04-14 20:21:22 · 154 阅读 · 0 评论 -
3.4预防死锁&3.5避免死锁
预防死锁预先静态分配法:进程执行要么分配全部资源,要么一个资源都不给。要使用的资源按照编号依次申请,所有资源申请完毕再执行,申请的资源顺序并不代表执行的顺序,执行时根据进程情况而定。避免死锁银行家算法available向量:每个元素代表可用资源数i代表进程,j代表资源数量,MAX[i, j]矩阵:最大需求量矩阵,[i, j]代表当前i进程需要j类资源的数量。a...原创 2020-04-14 17:44:25 · 264 阅读 · 0 评论 -
3.3死锁概述
如果发生死锁这些条件必然全部成立,哪一个不成立,死锁就有可能不发生。互斥条件:发生死锁后资源互斥访问。非剥夺条件:如果可剥夺性资源不能剥夺一定是发生了死锁。请求和保持条件:进程运行需要的资源没有全部得到向CPU提出请求,同时保持不释放得到的资源。环路条件:每个进程缺少的资源其他进程恰好有,形成环路。...原创 2020-04-14 09:07:09 · 113 阅读 · 0 评论 -
3.2进程调度
进程调度遵循的准则进程调度算法先来先服务算法FCFS利用队列就可以实现。短作业优先算法SJF高响应比例优先算法HRN执行时间越短 响应比例越高 成反比。时间片 轮转算法前面与先来先服务算法相同,排成一个队列,之后进程的时间片到就排到队尾继续等待。时间片过长,进程都在一个时间片就可以执行完毕,与先来先服务算法没差异。过短一个进程可能要排好几次队,影响响应时...原创 2020-04-10 12:16:10 · 123 阅读 · 0 评论 -
第三章处理机调度与死锁 3.1处理机调度的层次
原创 2020-04-07 10:14:26 · 96 阅读 · 0 评论 -
2.7线程的基本概念
原创 2020-04-03 09:00:55 · 102 阅读 · 0 评论 -
2.6进程通信
进程通信的类型共享存储器系统1)基于共享数据结构的通信方式2)基于共享存储区的通信方式消息传递系统1)直接通信方式2)间接通信方式信箱管道通信...原创 2020-03-31 09:15:55 · 93 阅读 · 0 评论 -
2.5经典进程的同步问题
互斥信号量为1,empty空的缓冲区数量为n, full满的缓冲区数量为0,buffer数组表示缓冲区。生产者进程的描述:消费者进程的描述:原创 2020-03-27 11:45:08 · 111 阅读 · 0 评论 -
2.4进程同步
生产者消费者模型进程间的两种制约关系1)间接相互制约关系同处于一个系统中的进程,通常都共享着某种系统资源。如共享CPU,共享I/O设备等。所谓间接相互制约即源于这种资源共享。2)直接制约关系这种制约主要源于进程间的合作。临界资源许多硬件资源,如打印机,磁带机等,都属于临界资源,诸进程间应采取互斥方式,实现对这种资源的共享。生产者-消费者模型有一群生产者进程在生产产品,并将这些产品...原创 2020-03-23 20:08:45 · 151 阅读 · 0 评论 -
2.3进程控制
进程控制块的组成方式1)链接方式把具有同意状态的PCB,用其中的链接字 链接成一个队列。可以形成就绪队列,若干个阻塞队列和空白队列等。对其中的就绪队列按进程优先级的高低排列。也可根据阻塞原因的不同而把处于阻塞状态的进程的PCB排成等待I/O操作完成的队列和等待分配内存的队列。2)索引方式系统根据所有进程的状态建立几张索引表。例如:就绪索引表,阻塞索引表。并把各索引表在内存的首地址记录在内...原创 2020-03-17 09:34:06 · 560 阅读 · 0 评论 -
2.2 进程的描述
进程程序在并发环境中的执行过程。进程的特性1)结构特征 :有哪些部分组成2)动态性:不同时刻下的进程是不同的,进程的信息在每时每刻改变。3)并发性:多个进程在并发环境下交叉执行。4)独立性:每个进程之间是独立的,不能被其他进程侵犯,只能由自己修改。5)异步性:多个进程在并发环境下不确定执行开始时间,执行完成时间等。★程序与进程的区别进程是动态的,程序时静态的;进程具有并发特...原创 2020-03-13 20:50:00 · 523 阅读 · 1 评论 -
第二章 进程的描述与控制 2.1前趋图与程序执行
程序的顺序执行通常可以把一个应用程序分成若干程序段,在各程序段之间,必须按照某种先后次序顺序执行,仅当前一操作执行完,才能执行后继操作。特征1)顺序性:处理机的操作严格按照程序所规定的顺序执行,即每一操作必须在上一操作结束后执行。2)封闭性:程序是在封闭的环境下执行的,即程序执行时独占全机资源。资源的状态只有本程序才能改变它。程序一旦开始执行,其执行结果不受外界影响。3)可再现性:只要...原创 2020-03-13 20:27:38 · 597 阅读 · 0 评论 -
1.4操作系统的主要功能
操作系统的主要功能是对系统中的软件,硬件实施有效的管理,以提高系统资源的利用率。处理机管理存储管理设备管理文件系统管理用户接口处理机管理允许多个程序共享处理机。处理机的分配和运行都是以进程为单位,对处理机的管理可归结为对进程的管理。1)进程控制 创建进程,撤销进程,控制进程的运行状态转换。2)进程调度 从就绪的进程队列中选择一个进程并把处理机分配给它,设置现场并使之投...原创 2020-03-13 13:43:05 · 235 阅读 · 0 评论 -
1.3操作系统的基本特征
操作系统的基本特征并发性并发:多个事件在同一时间段内发生并行:指多个事件在同一时刻发生共线性多个进程共享有限的计算机资源,资源在同一个时间段内交替被多个进程所用。互斥共享方式(打印机,cpu)同时访问方式(磁盘)虚拟性一个物理实体映射为若干个对应的逻辑实体 。虚拟是操作系统管理系统资源的重要手段。可提高资源利用率。异步性异步性也称不确定性,指进程的执行顺序和执行时间及执行...原创 2020-03-09 21:54:11 · 148 阅读 · 0 评论 -
1.2操作系统的发展过程
操作系统发展过程手工操作阶段批处理系统(1)联机批处理系统(2)脱机批处理系统多道程序系统在计算机内存中同时存放几道相互独立的程序,它们在管理系统的控制下相互穿插运行。分为单道程序系统和多道程序系统。分时操作系统实时操作系统所谓“实时”,是指能及时响应随机发生的外部事件并对时间做出快速处理的一种能力。目前的操作系统,通常具有分时,实时和批处理功能,又...原创 2020-03-06 13:02:35 · 237 阅读 · 0 评论 -
第一章操作系统引论 1.1操作系统的目标和作用
1.1操作系统的目标和作用引入操作系统的目的用户:提供良好的界面,使得用户和计算机之间和谐交互;提供可靠安全的服务管理。系统管理者:合理组织计算机工作流程,管理和分配系统硬件及软件资源。发展:为计算机系统的功能拓展提供支撑平台,追加新的功能和服务时不影响原有的功能和服务。操作系统的定义操作系统是控制和管理计算机系统的硬件和软件资源,合理的组织计算机工作流程以及方便用户使用的...原创 2020-03-06 12:26:59 · 386 阅读 · 0 评论