操作系统
游吟焰火
正经人谁看文档啊。
展开
-
进程同步问题——卡车装水
问题描述:有10辆卡车,每车可装20桶水,装满开走,两个工人装水,装满10辆车,使用普通变量和信号量实现进程控制。问题分析:1、一辆车装完20桶水后才能进行下一辆车的操作,因此车之间是互斥的。2、两个工人之间没有互斥关系,可同时装水,但装满后需及时停止装水操作(两个工人不能同时进行对当前已装桶数进行统计),装满后释放当前车辆并对下一车辆进行操作。伪代码实现:依据分析结果设置...原创 2018-09-26 20:45:15 · 271 阅读 · 0 评论 -
4.5分页存储管理方式
本部分讨论不具备对换功能的纯分页模式,作业运行需要全部装入内存。比较连续分配方式:作业逻辑地址空间有M大,就需要向内存申请一个M大的连续区域。分页的目的是更细粒度的处理空间,减少粗放管理的浪费或开销问题。一、概念1.页面内存划分成多个小单元,每个单元K大小,称(物理)块。作业也按K单位大小划分成片,称为页面。物理划分块的大小 = 逻辑划分的页的大小页面大小要适中。太大,(...转载 2018-12-08 21:17:41 · 683 阅读 · 0 评论 -
4.6分段存储管理方式、段页式存储管理方式
一、引入分段存储管理方式的目的:从提高内存利用率角度:固定分区->动态分区->分页从满足并方便用户(程序员)和使用上的要求角度:分段存储管理:作业分成若干段,各段可离散放入内存,段内仍连续存放。①方便编程:如汇编中通过段:偏移确定数据位置②信息共享:同地位的数据放在一块方便进行共享设置③信息保护④动态增长:动态增长的数据段事先固定内存不方便⑤动态链接:往往也是以逻辑...转载 2018-12-08 21:31:45 · 1260 阅读 · 0 评论 -
3.3实时调度
一、实时系统:指系统能够在限定的响应时间内提供所需水平的服务。指计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统出错。实时任务:具有明确时间约束的计算任务,有软/硬,随机/周期性之分。硬实时任务:必须满足任务对截止时间的要求软实时任务:联系着一个截止时间,但不严格,可偶尔错过,不会对系统造成大的影响。(实时系统的任务往往...转载 2018-12-06 19:36:28 · 706 阅读 · 0 评论 -
3.4产生死锁的原因和必要条件
多道程序系统借助并发执行改善资源利用率,提高系统吞吐量,但可能发生一种危险——死锁。死锁(Deadlock):指多个进程在运行过程中,因争夺资源而造成的一种僵局。当进程处于这种状态时,若无外力作用,它们都将无法再向前推进。死锁(Deadlock): 指进程之间无休止地互相等待饥饿(Starvation):指一个进程无休止地等待!一、产生死锁的原因和必要条件1.产生死锁的原因竞争资...转载 2018-12-06 20:03:35 · 611 阅读 · 0 评论 -
3.5预防死锁的方法
一、预防死锁资源的排他性无法更改,故在其他3个条件上入手(1)摒弃“请求和保持”条件:所有进程开始运行前,必须一次性的申请其在整个运行过程所需的全部资源(AND)。算法简单、易于实现且很安全。但缺点是资源浪费严重、或进程延迟运行。(2)摒弃“不剥夺”条件:允许进程先运行,但当提出的新要求不被满足时必须释放它已保持的所有资源,待以后需要时再重新申请。实现比较复杂且付出很大代价。可能会造成前功尽...转载 2018-12-06 20:57:22 · 1012 阅读 · 1 评论 -
3.6死锁的检测与解除
当系统为进程分配资源时,若未采取任何限制性措施,则系统必须提供检测和解除死锁的手段,为此系统必须:保存有关资源的请求和分配信息;提供一种算法,以利用这些信息来检测系统是否已进入死锁状态。资源分配图系统死锁可利用资源分配图来描述。圆圈表示进程方框表示一类资源,其中的一个点代表一个该类资源请求边由进程指向方框中的资源分配边则由方框中的一个点即资源。一、死锁的检测1.检测时机:...转载 2018-12-06 21:10:28 · 370 阅读 · 0 评论 -
5.1虚拟存储器概述
一、常规存储器管理方式和局部性原理1.常规存储器管理不足的原因:常规存储器管理方式的特征一次性:作业在运行前一次性地全部装入内存驻留性:作业装入内存后,便一直驻留在内存中,直至作业运行结束。 一次性及驻留性在程序运行时是否是必须的? NO。程序运行有局部性。2.局部性原理(1)程序在执行时将呈现出局部性规律:在一较短的时间内程序的执行仅局限于某个部分;相应地,所访问...转载 2018-12-09 10:39:00 · 523 阅读 · 0 评论 -
6.1I/O系统的功能、模型和接口
I/O系统的组成包括:需要用于输入、输出和存储信息的设备;需要相应的设备控制器;控制器与CPU连接的高速总线;有的大中型计算机系统,配置I/O通道;管理对象:I/O设备和相应的设备控制器(I/O系统组成)基本任务:完成用户提出的I/O请求,提高I/O速率、改善I/O设备的利用率。为更高层进程方便使用设备提供手段一、I/O系统的功能、模型和接口1.主要功能:隐...转载 2018-12-09 11:14:49 · 3403 阅读 · 1 评论 -
7文件管理
一、文件和文件系统文件管理:把所管理的程序和数据组织成一系列的文件,并能进行合理的存储、使用等操作。1.基本概念数据项:描述对象某种属性的字符集;是数据组织中可以命名的最小逻辑数据单位。记录:一组相关数据项集合,描述对象某方面的属性;关键字:一个记录中的一个或几个数据项的集合,用于唯一的标识一个记录。文件:由创建者定义的、具有文件名的一组相关元素的集合。有结构:由相关记录组成无结...转载 2018-12-09 13:58:51 · 212 阅读 · 0 评论 -
4.3连续分配存储管理方式 4.4对换
为了能将用户程序装入内存,必须为它分配一定大小的内存空间。连续分配方式是最早出现的一种存储器分配方式。分类:单一连续分配固定分区分配动态分区分配动态重定位分区分配一、单一连续分配(单道程序环境下)内存分为系统区和用户区两部分:系统区:仅提供给OS使用,通常放在内存低址部分用户区:除系统区以外的全部内存空间,提供给用户使用。在用户区内存中,仅有一道用户程序,即整个内存的用...转载 2018-12-08 17:26:10 · 580 阅读 · 0 评论 -
4.1存储器的层次结构 4.2程序的装入和链接
一、多层结构的存储器系统寄存器:速度最快,价格昂贵容量不大,一般以字为单位,只要存放指令一次操作的数据就够了 。高速缓存(速度快、存放部分内存数据、硬件自动处理):容量远大于寄存器,访问速度快于主存储器。一种速度比内存快的存储设备,一般同寄存器一样集成在CPU中。存放内存的部分拷贝,把常用的数据放这里可以提高速度。将短时间内经常访问的部分数据从内存放到高速缓存中,减少CPU访问内存...转载 2018-12-07 20:54:40 · 189 阅读 · 0 评论 -
经典进程的同步问题——生产者消费者问题
问题描述:有一群生产者进程在生产产品,并将这些产品提供给消费者进程去消费。为使生产者进程与消费者进程能并发执行,在两者间设置了一个具有n个缓冲区的缓冲区池,生产者进程将其生产的产品放入一个缓冲区中,消费者进程可从一个缓冲区中取走产品去消费。尽管所有的生产者进程都是以异步方式运行的,但它们之间必须保持同步,既不允许消费者进程到一个空缓冲去取产品,也不允许生产者进程向一个已装满产品且尚未被取走的缓...原创 2018-09-26 17:35:35 · 9514 阅读 · 1 评论 -
操作系统课堂笔记——第二章 进程的描述与控制
原创 2018-09-26 11:13:04 · 202 阅读 · 0 评论 -
操作系统课堂笔记——第一章 操作系统引论
原创 2018-09-26 10:58:39 · 207 阅读 · 0 评论 -
经典进程的同步问题
问题描述:五个哲学家共用一张圆桌,分别坐在周围的五张椅子上,在桌子上有五只碗和五只筷子,他们的生活方式是交替地进行思考和进餐。平时,一个哲学家进行思考,饥饿时便试图取用其左右最靠近他的筷子,只有在他拿到两只筷子时才能进餐。进餐毕,放下筷子继续思考。问题分析:放在桌子上的筷子时临界资源,在一段时间内只允许一位哲学家使用,为了实现对筷子的互斥使用,可以用一个信号量表示一只筷子,由这五个信号...原创 2018-10-07 21:16:06 · 297 阅读 · 0 评论 -
2.6进程通信
定义进程通信指进程之间的信息交换。低级进程通信:程序员要参与进去。缺点:①效率低②通信对用户不透明(具体工作由程序员实现)高级进程通信:具体工作都交给操作系统。优点:①使用方便(对用户透明)②高效地传送大量数据进程通信的类型高级通信机制可归结为四大类:1.共享存储器系统(Shared-Memory System)(操作存储区方式)(1).相互通信的进程共享某些数据结构或共享存...原创 2018-10-16 22:28:19 · 774 阅读 · 0 评论 -
2.7线程Threads
线程是进程中的一个实体,是被系统独立调度和分派的基本单位。在多线程OS中,通常是在一个进程中包括多个线程。1.线程的引入:引入线程的目的:减少程序在并发执行时所付出的时空开销,在追求效率的前提下实现并发。注: 利用进程实现的多道程序系统中,频繁的进程切换会浪费大量时空开销。限制并发程度问题所在:进程实体信息量大,对进程的管理操作越多,与运行时间的比值就越大,运行效率就低。当A进程内的a1...原创 2018-11-06 21:21:54 · 1406 阅读 · 0 评论 -
3.1处理机调度
1.基本概念:多道程序环境下,动态的把处理机分配给就绪队列中的一个进程使之执行。提高处理机的利用率、改善系统性能,很大程度上取决于处理机调度的性能。2.处理机调度层次:2.1高级调度(High Level Scheduling)又称作业调度或长程调度(Long-Term Scheduling),接纳调度(Admission Scheduling),主要在早期批处理阶段,处理在外存上的作业...转载 2018-11-18 10:09:45 · 142 阅读 · 0 评论 -
3.2调度算法
调度的实质就是一种资源分配。不同的系统和系统目标,通常采用不同的调度算法——适合自己的才是最好的。批处理系统为照顾为数众多的短作业,应采用短作业优先的调度算法;分时系统为保证系统具有合理的响应时间,应采用轮转法进行调度。目前存在的多种调度算法中,有的算法适用于作业调度,有的算法适用于进程调度;但有些算法作业调度和进程调度都可以采用。1、先来先服务调度算法(FCFS)一种最简单的调度算...转载 2018-12-04 20:28:45 · 438 阅读 · 0 评论 -
8.磁盘存储器的管理
一、外存分配方式目标:有效利用外存空间,提高文件访问速度常用三种方式:连续分配链接分配(不连续)索引分配通常一个系统中仅采用一种方式采用的磁盘分配方式决定了文件的“物理结构”顺序结构;链接式结构;索引式结构。注意与逻辑结构名类似但不是一回事。1.连续分配为每一个文件分配一组相邻的盘块。逻辑文件中的记录顺序与存储器中文件占用盘块的顺序一致。优点:顺序访问容易,读写速度...转载 2018-12-09 14:01:28 · 782 阅读 · 0 评论