- 操作系统的功能:处理器管理、存储管理、文件管理、I/O设备管理、用户接口
- 操作系统的主要功能是管理系统中的: 资源
- 操作系统的特性:并发性、共享性、虚拟性、异步性
并发性、共享性是最重要的特性
- 分时系统是联机的多用户交互式操作系统
- 设计批处理操作系统时,首先应该考虑操作系统的:周转时间和系统吞吐量
- 引入多道程序设计的目的是:充分利用CPU、减少CPU的等待时间
- 并发性(concurrency)是指:两个或多个事件在同一时间间隔内发生
- 操作系统为用户提供两类接口:①作业级接口 ②程序级接口
系统调用(system call)是操作系统提供给程序员的唯一接口
- 作业级接口分为:①脱机接口(批处理系统) ②联机接口(分时系统)
- 作业说明书主要包括三个部分:①作业基本描述 ②作业控制描述 ③作业资源要求描述
- 联机用户接口:①命令式 ②批处理 ③用户图形接口
- 用户使用操作系统通常有3中手段,它们是:①终端命令 ②系统调用命令 ③作业控制语言
- 系统调用的目的是:请求系统服务
- 在批处理系统中,用户使用作业说明书对作业的各种可能的控制要求进行控制。
- 会导致用户从用户态切换到核心态的操作是:①系统调用 ②异常 ③外设中断
eg. 整数除以零、read系统调用
- 系统调用是操作系统提供给应用程序的接口。
- 本地用户通过键盘⌨登录系统时,首先会获得键盘输入信息的时中断处理程序
- 在用户态执行的是命令解释程序(命令接口)
- 进程切换是不可能在用户态下发生的。
- 操作系统代码在核心态下运行,用户一般程序在用户态下运行。
- 当用户程序要调用系统服务时,需要通过一条专门的指令来进行CPU运行状态的切换,这条指令被称为访管指令
- Shell有两种执行方式:命令行方式和批处理(脚本)方式
- 用户进行系统调用时,CPU的运行状态应该从用户态切换到核心态
- 批处理方式下的用户接口称为脱机用户接口,交互方式下的用户接口联机用户接口
- 多道程序设计系统中,让多个计算问题同时装入计算机系统的主存储器:并发执行
- 导致创建新进程的操作是:用户登录、作业调度、提供服务、应用请求
eg. 用户登录成功、启动程序执行
- 进程是:执行中的程序
- 进程控制块是进程实体的一部分,是对进程当前情况的静态描述,是进程存在的唯一标志。
- 进程特性:动态性、并发性、共享性、异步性、结构性
动态性和并发性是进程的两个很重要的特性。
- 进程是【分配资源和执行的独立实体】 线程是【执行的独立实体】
- 进程的3中基本状态:执行态、就绪态、阻塞态
线程(light-process)是轻量级的进程(process)
- 就绪态是已经获得除了CPU以外所有运行所需资源的进程。
- 并发执行是对单处理器系统来说,允许若干进程同时执行,轮流占用处理器。
- 若干个等待占有CPU并运行的进程按一定次序链接🔗起来的队列为:就绪队列
后备队列在外存上里面是作业序列, 就绪队列在内存上里面是进程序列
- 操作系统根据进程控制块控制管理进程,它是进程存在的标志。
- 线程不是资源分配的单位进程才是!
正确的叙述✔ =》 1. 不同的进程可以执行相同的程序 2. 线程是调度和执行的单位 3.同一进程中的线程可共享进程的主存空间
- 在支持多线程的系统中,进程P创建的若干个线程不能共享的是进程P中某进程的栈指针
- 把一个程序在一个数据集上的一次执行称为一个进程
- 程序是静止的,进程是动态的
- 进程状态变化时,【运行态】和【阻塞态】都有可能变为【就绪态】
- 操作系统依据【进程控制块(Process Control Block)】对进程进行控制和管理。
- 进程中有两个基本队列:就绪队列、阻塞队列
- 可再现性是指当进程再次重复执行时,必定获得相同结果
- 线程是处理器的独立调度单位,多个进程可以并发执行
- 在多进程操作系统中,线程与进程的根本区别在于进程作为资源分配和调度执行单位,线程作为调度执行单位
在多道程序设计环境下,任务被分解成了多个进程,而一个进程只能完成某个任务中的一部分,多个进程的共同执行才可以使一项任务顺利完成。
- 进程之间相互制约关系:同步和互斥两种情形。
- 临界资源(Critical Resource, CR):一次仅允许一个进程使用的资源
- 临界区(Critical Section, CS): 每个进程中访问临界资源的那段程序代码
进程之间的异步并发必然会产生时间相关的错误为了避免发生该错误,诸进程必须互斥的进入临界区访问临界资源。
- 同步机构设计原则:闲则让进、忙则等待、有限等待、让权等待
- 信号量的种类: 1.公用信号量 2.同步信号量
① 公用信号量 其初值仅允许取值为0或1,主要用于控制进程互斥地进入临界区,也称之为互斥信号量。
② 私有信号量 其初值为初始资源数目,主要用于控制进程间的同步运行,也称为同步信号量。 - 消息传递系统的通信种类: 共享存储区系统、管道通信系统、消息传递系统和客户/服务器系统
- 信号量是进程间实现通信的【低级通信方式】,只能传递少量信息。 进程间的高级通信方式有【共享存储区系统】【管道通信系统】【消息传递系统】【客户/服务系统】
- 有3个进程P1、P2、P3共享同一个程序段,而每次最多允许两个进程进入该程序段,则信号量S的初始值为【2】 其S的范围是【2,-1】
- 在OS中,wait、signal操作是一种低级进程通信
- 用signal操作唤醒一个进程时,被唤醒进程的状态应变成就绪状态
- 用来实现进程同步与互斥的wait操作和signal操作,实际上是两个不可被中断的过程
- 信号量S>0:当前资源空闲数量;S<0:有进程在等待
S=0: 资源耗尽但是没有进程在等待 - 用户在一次解题或事务处理中要求计算机所要进行工作的集合即作业(job)
- 作业构成:用户程序、数据对象、作业说明书
作业说明书是用户使用作业控制语言(JCL)编写的用来控制用户对作业意图的程序
只有批处理系统才具有作业调度,在分时系统和实时系统中都没有作业调度的概念。
分时系统中要进行人机交互,系统必须能够及时响应,用户从终端输入的作业直接送入内存而不是建立在外存上,因此,不再需要专门把作业从外存调入内存的作业调度过程。
- 评价分时系统的性能指标: 响应时间
响应时间(response time): 从用户开始键入一个请求开始,直到系统首次产生响应为止的时间(屏幕显示结果)的时间。
- 作业的四种状态: 提交状态、后备状态、运行状态、完成状态
- 当作业进入完成状态时,操作系统将该作业的控制块从当前作业队列中删除,收回其所占资源,并输出结果。
- 在批处理系统中,周转时间是: 作业等待时间和运行时间之和
- 在操作系统中,作业处于提交状态时,已处于进程管理之下。
- 降低进程优先级合理时机是:进程的时间片被用完
- 一个作业被成功调度后,系统为其创建相应的进程,该进程的初始状态是就绪态
- 满足短作业优先而且不会发生饥饿现象的调度算法是:最高响应比优先
- 在进程的整个生命周期中都是可以进行处理机调度的(进程是系统进行资源分配和处理机调度执行的单位,线程是处理机调度执行的单位。
- 作业调度是从处于后备状态的对立中选取适当的作业投入运行。
- 周转时间是从作业提交给系统到作业完成的时间间隔
- 等待时间是作业进入后备队列到被调到程序中的时间间隔
- 死锁是由于两个或两个以上的进程因为竞争资源而等待一个永远不可能发生的事件!的现象。
- 死锁产生的原因: 1.竞争资源 2.进程推进顺序不合理
- 死锁产生的必要条件: 1.互斥(mutual exclusion) 2.不可剥夺(no preemption) 3.请求和保持(hold and wait) 4.循环等待(circle waiting)
- 死锁处理的策略: 1.预防策略 2.避免策略 3.检测策略 4.解除策略
- 某计算机系统中有8台打印机🖨。由K个进程竞争使用每个进程最多需要3台打印机。该系统可能会发生死锁的K的最小值是: 【4】
首先判断最多不会发生死锁的情况 Need: 3 Provider: 8 可以给每个进程分配2台打印机,在总的资源中减1个出来分配给一个进程就能避免死锁。 最多不会死锁的情况M = 7 / 2 = 3.5 = 3 (向下取3) 最少发生死锁的情况K = 4
- 当系统处于安全状态的时候,系统中一定无死锁进程!
- 死锁的检测和解除是配合使用的,当系统检测到出现死锁的时候,就通过死锁解除方法解除死锁.
- 当系统处于不安全状态的时候,系统可能会发生死锁!
- 资源的静态分配算法在解决死锁问题中用于死锁预防
- 有3个进程共享7个同类资源,为让系统不会发生死锁,每个进程最多可以申请【4】个资源
- 解决死锁的方法有多种
- 死锁的预防(prevention): 是通过破坏产生死锁的四个必要条件实现的。。
- 死锁的避免(avoid): 是通过合理的资源分配算法(eg.银行家算法)来避免系统进入不安全状态来实现死锁的避免。。
死锁的避免是通过避免系统进入不安全状态。
- 死锁检测要解决的问题: 1. 判断系统是否出现了死锁 2. 当有死锁发生的时候如何解除死锁
- 为了避免死锁,可以采用银行家算法进行资源安全分配
- 系统出现死锁,不仅与设备分配策略有关,而且与进程执行的相对速度有关
- 存储器管理技术可以分为两大类: 1.实存储器管理 2.虚拟存储管理
- 实存管理的内容有
- 内存资源保护
- 内存资源分配
- 内存逻辑扩充
- 内存地址映射
- 存储管理分类:1.连续分配方式 2.离散分配方式 3.虚拟存储管理。
存储管理方式: - 连续分配方式 - 单一连续分配方式 - 分区式分配方式 - 固定分区分配方式 - 可变分区分配方式 - 离散分配方式 - 分页式存储管理 - 分段式存储管理 - 段页式存储管理 - 虚拟存储管理 - 请求分页存储管理 - 请求分段存储管理 - 段页式存储管理
- 地址映射基本概念
相对地址: 逻辑地址、虚存地址。相对地址的集合形成地址空间。
绝对地址: 物理地址、实存地址。绝对地址的集合形成存储空间。 - 静态重定位适用于【单一连续分配方式】和【固定分区分配方式】
- 存储保护采用【界地址方法】和【保护键方法】
内存扩充是指内存逻辑扩充。
- 计算机开机之后,操作系统最终被加载到RAM(Random Access Memory)。
- 把以0为参考地址的装配模块装入到以550为起始地址的存储空间,若采用静态重定位,则原程序中的指令"LOAD 1455"应该为 LOAD 11005程序执行下去。
- 分区分配内存管理方式的主要保护措施是:界地址保护 (boundary address protection)。
- 在固定分区存储管理中,装入内存的所有作业的相对地址空间总和一般小于内存中除操作系统之外的所有空间
- 可变分区存储管理中的移动技术可以为集中空闲区
- 采用分区式存储管理使处理器执行指令的速度降低
- 在分段式存储管理中以段为单位分配内存,每段是一个连续存储区
- 段页式存储管理中,逻辑地址的格式一般为【段号 | 段内地址】
- 页式存储管理中,页式虚拟地址与内存物理地址的映射是由【页表】和【硬件地址转换机构】来完成的。
- 段页式存储管理中,虚拟空间的最小单位是【段】而不是【页】,内存可以等分成若干个【物理块】,而且每个段所拥有的程序和数据在【内存】中可以分开【存放】
- 局部性原理是实现虚拟存储器的理论依据。
- 局部性原理表现在两个方面:1.时间局限性 2.空间局限性
- 虚拟存储器的定义: 虚拟存储利用部分装入和部分对换的技术从逻辑上对虚拟内存进行扩充,能够以较小的内存实现较大程序的执行。
- 虚拟存储器是: 可以容纳总和容量超过主存容量的多个作业同时运行的一个地址空间。
- 在块表(联想存储器)中的页,其信息:一定在内存中
- 在请求分页系统中,最近最久未使用算法(Least Recently Used Algorithm)是指近期最长时间以来未使用页的淘汰算法
- 在请求分页式存储管理方式中,能使用户程序大大超过内存的实际容量。虚存利用【外存】为用户构建一个虚拟空间。
- 实现虚拟存储后,从系统角度看,【扩充了内存】。从用户角度看,用户可以在超出【用户作业空间】的存储空间中编写程序,大大方便了用户。
- 在请求分页式存储管理中,当查找的页不在【内存】, 要产生【缺页中断】
- 在提供虚拟存储管理的系统中,用户的逻辑地址空间主要受【系统的寻址能力】【外存容量】的限制
- 页面置换算法的好坏将直接影响系统的性能,不适当的置换算法可能导致进程发生【抖动】
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/39396.html