
操作系统
文章平均质量分 87
操作系统
伤如之何?
生命不熄于漫漫长夜,似路灯,似灯塔。虽孤独,但足以让其浸没自身,充实心灵。
展开
-
5、设备管理
I/O” 就是 “输入/输出”(Input/Output)I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部件。UNIX系统将外部设备抽象为一种特殊的文件,用户可以使用与文件操作相同的方式对外部设备进行操作。理解并记住I/O软件各个层次之间的顺序,要能够推理判断某个处理应该是在哪个层次完成的最常考的是设备独立性软件、设备驱动程序这两层。只需理解一个特点即可:直接涉及到硬件具体细节、且与中断无关的操作肯定是在设备驱动程序层完成的;原创 2023-03-18 21:25:23 · 1293 阅读 · 0 评论 -
4.文件管理
优点:支持顺序访问和直接访问(即随机访问);连续分配的文件在顺序访问时速度最快缺点:不方便文件拓展;存储空间利用率低,会产生磁盘碎片隐式链接――除文件的最后一个盘块之外,每个盘块中都存有指向下一个盘块的指针。文件目录包括文件第一块的指针和最后一块的指针。优点:很方便文件拓展,不会有碎片问题,外存利用率高。缺点:只支持顺序访问,不支持随机访问,查找效率低,指向下一个盘块的指针也需要耗费少量的存储空间。显式链接――把用于链接文件各物理块的指针显式地存放在一张表中, 即文件分配表FAT。原创 2023-02-28 23:30:13 · 1150 阅读 · 0 评论 -
3、内存管理
内存是用于存放数据的硬件。程序执行前需要先放到内存中才能被CPU处理。思考:在多道程序环境下,系统中会有多个程序并发执行,也就是说会有多个程序的数据需要同时放到内存中。那么,如何区分各个程序的数据是放在什么地方的呢?方案:给内存的存储单元编地址内存中也有一个一个的 “小房间”,每个小房间就是一个 “存储单元内存地址从 0 开始,每个地址对应一个存储单元如果计算机 “按字节编址”,则每个存储单元大小为1 字节,即 1B ,即 8 个二进制位如果字长为 16 位的计算机 “原创 2023-02-20 22:37:42 · 657 阅读 · 0 评论 -
2.3、进程控制
进程控制的主要功能是对系统中的所有进程实施有效的管理它具有创建新进程、撤销已有进程、实现进程状态转换等功能。简单来说:进程控制就是要实现进程状态转换。原创 2023-01-18 00:09:31 · 359 阅读 · 0 评论 -
2.10、时间片轮转、优先级调度算法、多级反馈队列调度算法
算法可抢占?优点缺点会导致饥饿?补充时间片轮转抢占式公平;适用于分时系统频繁切换有开销;不区分优先级不会时间片太大或太小导致的影响优先级调度有的抢占式的,有的非抢占式的区分优先级;适用于实时系统可能导致饥饿会动态/静态优先级。各类型型进程如何设置优先级?如何调整优先级多级反馈队列抢占式平衡优秀;6(9 翻了)一般不说它优缺点;不过可能导致饥饿会注。原创 2023-02-12 23:57:44 · 1123 阅读 · 0 评论 -
2.21、管程
管程是一种特殊的软件模块,有这些部分组成:局部于管程的共享数据结构\color{red}共享数据结构共享数据结构说明;对该数据结构进行操作的一组过程\color{red}一组过程一组过程对局部于管程的共享数据设置初始值的语句;管程有一个名字。Tips:“过程” 其实就是 “函数”局部于管程的数据只能被局部于管程的过程所访问;一个进程只有通过调用管程内的过程才能进入管程访问共享数据;类似于 Java 中 private,要访问私有变量的数据,需要提供 public 方法才可以访问。原创 2023-02-13 00:13:28 · 231 阅读 · 0 评论 -
2.14、信号量机制
复习回顾 + 思考:之前学习的这些进程互斥的解决方案分别存在哪些问题?进程互斥的四种软件实现方式(单标志法、双标志先检查、双标志后检查、Peterson算法)进程互斥的三种硬件实现方式(中断屏蔽方法、TS/TSL指令、Swap/XCHG指令)在双标志先检查法中,,从而导致了两个进程有可能同时进入临界区的问题;所有的解决方案都1965 年,荷兰学者Dijkstra提出了一种卓有成效的实现进程互斥、同步的方法――信号量机制用户进程可以通过使用操作系统提供的来对。原创 2023-02-13 00:03:50 · 277 阅读 · 0 评论 -
2.5、线程概念和多线程模型
还没有引入进程之前,各个程序只能串行执行进程是程序的一次执行过程,但这些功能显然不可能是由一个程序顺序处理就能实现的有的进程可能需要 “同时” 做很多事,而传统的进程只能串行地执行一系列程序。为此,引入了 “线程”,来增加并发度。引入线程后,线程成为了程序执行流的最小单位可以把线程理解为 “轻量级进程”。线程\color{red}线程线程是一个基本的CPU执行单元\color{red}基本的\texttt{CPU}执行单元基本的CPU执行单元也是程序执行流的最小单位。原创 2023-01-20 00:23:38 · 857 阅读 · 0 评论 -
2.20、哲学家进餐问题
哲学家进餐问题的关键在于解决进程死锁。这些进程之间只存在互斥关系,但是与之前接触到的互斥关系不同的是,每个进程都需要同时持有两个临界资源,因此就有“死锁”问题的隐患。如果在考试中遇到了一个进程需要同时持有多个临界资源的情况,应该参考哲学家问题的思想,分析题中给出的进程之间是否会发生循环等待,是否会发生死锁。可以参考哲学家就餐问题解决死锁的三种思路。原创 2023-02-13 00:12:29 · 2369 阅读 · 0 评论 -
2.22.1、死锁的概念
我等待你,你等待他,他等待她,她等待我…这世界每个人都爱别人…在并发环境下,各进程因竞争资源而造成的一种,导致各进程都阻塞,都无法向前推进的现象,就是 “死锁”。原创 2023-02-21 01:00:30 · 213 阅读 · 0 评论 -
2.19、读者-写者问题
读者-写者问题为我们解决复杂的互斥问题提供了一个参考思路。其核心思想在于设置了一个计数器count用来记录当前正在访问共享文件的读进程数。我们可以用count的值来判断当前进入的进程是否是第一个/最后一个读进程,从而做出不同的处理。另外,对count变量的检查和赋值不能一气呵成导致了一些错误,如果需要实现一气呵成,自然应该想到用互斥信号量\color{red}如果需要实现一气呵成,自然应该想到用互斥信号量如果需要实现一气呵成,自然应该想到用互斥信号量。原创 2023-02-13 00:11:41 · 275 阅读 · 0 评论 -
2.17、多生产者-多消费者进程
总结:在生产者-消费者问题中,如果缓冲区大小为 1 ,那么有可能不需要设置互斥信号量就可以实现互斥访问缓冲区的功能。当然,这不是绝对的,要具体问题具体分析。建议:在考试中如果来不及仔细分析,可以加上互斥信号量,保证各进程一定会互斥地访问缓冲区。但需要注意的是,实现互斥的P操作一定要在实现同步的P操作之后,否则可能引起 “死锁”。解决 “多生产者-多消费者问题” 的关键在于理清复杂的同步关系。原创 2023-04-11 23:55:39 · 711 阅读 · 1 评论 -
2.6、处理机调度的概念、层次
当有一堆任务要处理,但由于资源有限,这些事情没法同时处理。这就需要确定来决定这些任务的,这就是“调度”研究的问题。在多道程序系统中,进程的数量往往是多于处理机的个数的,这样不可能同时并行地处理各个进程。处理机调度就是从就绪队列中按照一定的算法选择一个进程并将处理机分配给它运行,以实现进程的并发执行。原创 2023-02-12 23:51:25 · 167 阅读 · 0 评论 -
2.9、FCFS、SJF、HRRN 调度算法
算法可抢占?优点缺点考虑到等待时间 & 运行时间会导致饥饿?FCFS非抢占式公平;实现简单;利于长作业不利于短作业等待时间 ✔;运行时间 ❌不会SJF/SPF默认为非抢占式;也有 SJF 抢占式版本最短剩余时间优先算法(SRTN)“最短的” 平均等待 / 周转时间;利于短作业不利于长作业,可能会导致饥饿;难以做到正真的短作业优先等待时间 ❌;运行时间 ✔会(导致长作业饥饿)HRRN非抢占式上述两种算法的均衡考虑,综合考虑的等待时间和运行时间等待时间 ✔;原创 2023-02-12 23:55:54 · 527 阅读 · 0 评论 -
2.16、生产者-消费者问题
PV操作题目的解题思路关系分析。找出题目中描述的各个进程,分析它们之间的同步整理思路。根据各进程的操作流程确定PV操作的大致顺序。设置信号量。设置需要的信号量,并根据题目条件确定信号量初值。(互斥信号量初值一般为 1,同步信号量的初始值要看对应资源的初始值是多少)生产者消费者问题是一个互斥、同步的综合问题。对于初学者来说最难的是发现题目中隐含的两对同步关系。有时候是消费者需要等待生产者生产,有时候是生产者要等待消费者消费,这是两个不同的 “一前一后问题”,因此也需要设置两个同步信号量。易错点。原创 2023-02-13 00:08:30 · 210 阅读 · 0 评论 -
2.13、进程互斥的硬件实现方法
利用 “” 实现(与原语的实现思想相同,即在某进程开始访问临界区到结束访问为止都不允许被中断,也就不能发生进程切换,因此也不可能发生两个同时访问临界区的情况)优点:简单、高效缺点:不适用于多处理机(多个处理机访问同一个临界区,导致其中剩余的处理机会一值等待);;不适用于用户进程(因为开/关中断指令只能运行在内核态,这组指令如果能让用户随意使用会很危险)原创 2023-02-13 00:01:48 · 309 阅读 · 0 评论 -
2.12、进程互斥的软件实现方法
前一个算法的问题是先 “检查” 后 “上锁” ,但是这两个操作又无法一气呵成,因此导致了两个进程同时进入临界区的问题。turn 表示当前允许进入临界区的进程号,而只有当前允许进入临界区的进程在访问了临界区之后,才会修改 turn 的值。想到了一种方法,如果双方都争着想进入临界区,那可以让进程尝试 “孔融让梨” ,主动让对方先使用临界区。算法思想:双标志后检查法中,两个进程都争着想进入临界区,但是谁也不让谁,最后谁都无法进入临界区。两个进程都争着想进入临界区,但是谁也不让谁,最后谁都无法进入临界区。原创 2023-02-13 00:00:13 · 383 阅读 · 1 评论 -
2.1、进程的定义、组成、组织方式、特征
程序:就是一个指令序列。早期的计算机(只支持单道\color{red}单道单道程序)引入多道\color{red}多道多道程序之后:为了方便操作操作系统管理,完成各个程序并发执行、引入了进程、进程实体\color{red}进程、进程实体进程、进程实体的概念PCB、程序段、数据段三部分构成了进程实体\color{red}进程实体进程实体进程映像\color{red}进程映像进程映像程序段、数据段、PCB。原创 2023-01-18 00:06:24 · 458 阅读 · 0 评论 -
2.2、进程的状态与转换
进程是程序的一次执行。在这个执行过程中,有时进程正在被 `CPU` 处理,有时又需要等待 `CPU` 服务,- 可见进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态原创 2023-01-18 00:08:19 · 340 阅读 · 0 评论 -
2.8、调度算法的评价指标
由于早期的CPU造价极其昂贵,希望让CPU尽可能多地工作CPU利用率:指CPU“忙碌” 的时间占总时间的比例。利用率总时间忙碌的时间Eg:某计算机只支持单道程序,某个作业刚开始需要在CPU上运行5秒,再用打印机打印输出5秒,之后再执行5秒,才能结束。在此过程中,CPU利用率、打印机利用率分别是多少?CPU利用率 =5555566.66%打印机利用率 =555533.33%通常会考察多道程序并发执行的情况,可以用 “” 来辅助计算。原创 2023-02-12 23:54:12 · 273 阅读 · 0 评论 -
2.15、用信号量机制实现进程互斥、同步、前驱关系
分析并发进程的关键活动,划定临界区(如:对临界资源打印机的访问就应放在临界区)设置互斥信号量mutex初值为1在临界区之前执行P(mutex)在临界区之后执行V(mutex)要会自己定义记录型信号量,但如果题目中没特别说明,可以把信号量的声明简写成这种形式:对不同的临界资源需要设置不同的互斥信号量PV操作必须成对出现P(mutex)V(mutex)原创 2023-02-13 00:07:12 · 397 阅读 · 0 评论 -
2.22.2、死锁的处理策略
你是一位成功的银行家,手里掌握着100100100个亿的资金…有三个企业想找你贷款,分别是企业B、企业A、企业T,为描述方便,简称BAT。B表示:“大哥,我最多会跟你借707070亿…”A表示:“大哥,我最多会跟你借404040亿…”T表示:“大哥,我最多会跟你借505050亿…”然而…江湖中有个不成文的规矩:如果你借给企业的钱总数达不到企业提出的最大要求,那么不管你之前给企业借了多少钱,那些钱都拿不回来了…刚开始,BAT三个企业分别从你这儿借了20202010101030。原创 2023-02-21 01:03:54 · 717 阅读 · 0 评论 -
2.11、进程同步与互斥
异步是指,由于系统的例如:老渣要和两个女孩并发约会一号的指令 1 :老渣陪我吃饭一号的指令 2 :老渣把心给我二号的指令 1 :老渣把心给我二号的指令 2 :老渣陪我吃饭与一号、二号的约会相当于对两个进程的处理,每个进程都有各自需要执行的指令。老渣的心相当于。若女一号只想做老渣的初恋女二号只想交一个有恋爱经验的渣男那么,老渣在并发执行这两个约会进程的时候,就必须保证 “一号的指令2” 一定要在 二号的指令1”。操作系统需要提供 “进程同步机制” 来实现上述需求。原创 2023-02-12 23:59:24 · 154 阅读 · 0 评论 -
2.18、吸烟者问题
吸烟者问题可以为我们解决“可以生产多个产品的单生产者”问题提供一个思路。值得吸取的精华是:“轮流让各个吸烟者吸烟” 必然需要 “轮流的在桌上放上组合一、二、三”,注意体会我们是如何用一个整型变量i 实现这个“轮流”过程的。如果题目改为 “每次随机地让一个吸烟者吸烟”,我们有应该如何用代码写出这个逻辑呢?random变量即可若一个生产者要生产多种产品(或者说会引发多种前驱事件),那么各个V操作应该放在各自对应的 “前驱事件” 发生之后的位置。原创 2023-02-13 00:10:35 · 865 阅读 · 0 评论 -
2.4、进程通信
顾名思义,进程通信就是指进程之间的信息交换。进程是分配系统资源的单位(包括内存地址空间),因此各进程\color{red}各进程各进程拥有的内存地址空间相互独立\color{red}内存地址空间相互独立内存地址空间相互独立。为了保证安全,一个进程不能直接访问另一个进程的地址空间\color{red}一个进程不能直接访问另一个进程的地址空间一个进程不能直接访问另一个进程的地址空间但是进程之间的信息交换又是必须实现的。为了保证进程间的安全通信,操作系统提供了一些方法。原创 2023-01-20 00:22:18 · 1271 阅读 · 0 评论 -
2.7、进程调度的时机、切换与过程、方式
进程调度(低级调度),就是按照某种算法从就绪队列中选择一个进程为其分配处理机进程在操作系统内核程序临界区中不能进行调度与切换 √(2012 年联考真题)进程处于临界区时不能进行处理机调度 ❌临界资源:一个时间段内只允许一个进程使用的资源。互斥地临界区:访问临界资源的那段代码。内核程序临界区一般是用来访问某种内核数据结构的,PCB若还没有退出内核程序临界区(还没解锁)就进行进程调度(访问就绪队列),但是进程调度的相关程序也需要访问就绪队列,原创 2023-02-12 23:53:22 · 343 阅读 · 0 评论 -
1.4、操作系统的运行机制和体系结构
简单来说,“指令” 就是处理器(CPU)能识别、执行的最基本命令比如:加法指令就是让CPU进行加法运算。原创 2023-01-14 13:34:48 · 724 阅读 · 0 评论 -
1.2、操作系统的特征
并发:指两个或多个事件在同一时间间隔内发生。宏观上是同时发生微观上是交替发生并行:指两个或多个事件在同一时刻同时发生。例如:假设小渣与老渣每人由两个女朋友。任务 1 :和一号约会;任务 2:和二号约会操作系统的并发性指计算机系统中同时存在着多个运行着的程序。一个单核处理机()同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)事实上,操作系统就是伴随着 “多道程序技术” 而出现的。操作系统和程序并发是一起诞生。原创 2023-01-14 13:29:38 · 702 阅读 · 0 评论 -
1.5、中断和异常
发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作(比如进程切换、分配。为了解决上述问题,人们发明了操作系统(作为计算机的管理者),引入中断机制,当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理。用户态切换为核心态,使操作系统获得计算机的控制权。请求输出(例如系统的输入、输出操作是属于。:根据中断信号类型转入相应的中断处理程序。环境并退出中断,返回原进程继续往下执行。对于不同的中断信号,会进行不同的处理。:如果检测到外部中断信号,则需要。:执行完每个指令之后,原创 2023-01-14 13:35:54 · 535 阅读 · 0 评论 -
1.1、操作系统的概念、功能和目标
操作系统操作系统操作系统(Operating System,OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,(从下往上)它是计算机系统中最基本的系统软件\color{red}系统软件系统软件。(从上往下)例如:任务管理器。原创 2023-01-14 13:26:17 · 723 阅读 · 0 评论 -
1.3、操作系统的发展和分类
网络操作系统:是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,一个用户把自己的程序放入纸带机,等待计算机执行完后,用户再取走自己的数据。计算进程在计算的时候,输入进程可以开始输入数据,输出进程可以开始输出数据。在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,例如:计算机组成原理中的流水线技术,计算机网络中的分组交换。作业一:输入1 秒,计算 1 秒,输出 1 秒。作业二:输入1 秒,计算 1 秒,输出 1 秒。作业三:输入1 秒,计算 1 秒,输出 1 秒。原创 2023-01-14 13:33:17 · 571 阅读 · 0 评论 -
2.5、信道的极限容量!
2.5、信道的极限容量!原创 2022-11-22 22:52:36 · 724 阅读 · 0 评论 -
2.2、物理层下面的传输媒体
2.2、物理层下面的传输媒体原创 2022-11-17 00:31:11 · 554 阅读 · 0 评论 -
2.1、物理层的基本概念
2.1、物理层的基本概念原创 2022-11-16 23:57:48 · 149 阅读 · 0 评论 -
2.4、编码与调制
2.4、编码与调制原创 2022-11-19 23:53:37 · 1414 阅读 · 0 评论 -
2.3、传输方式
2.3、传输方式原创 2022-11-19 23:52:21 · 540 阅读 · 0 评论 -
2.6、物理层-真题
2.6、物理层-真题原创 2022-11-23 00:09:32 · 138 阅读 · 0 评论