
操作系统
操作系统学习笔记
「已注销」
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
操作系统——笔记总目录(持续更新)
第一章 操作系统引论 1.1-1操作系统的概念,功能和目标 1.1-2操作系统的特征 1.1-3操作系统的发展和分类 1.1-4操作系统的运行机制和体系结构 1.1-5中断和异常 1.1-6系统调用 第二章 进程管理 2.1-1进程的定义,组成,组织方式,特征 2.1-2进程的状态与转换 2.1-3进程控制 2.1-4进程通信 2.1-5线程 2.2-1信号量机制 2.2-2用信号量机制实现进程互斥,进程同步,前驱关系 2....原创 2020-05-19 18:52:17 · 178 阅读 · 0 评论 -
3.2-2死锁的处理策略
1.预防死锁(破坏产生死锁的四个必要条件,只要有一个不满足,就不会发生死锁) 破坏互斥条件 (互斥条件:只有对必须互斥使用的资源的争抢才会导致死锁) 如果把只能互斥使用的资源改造为允许共享使用,则系统不会进入死锁状态 缺点是并不是所有的资源都可以改造成可共享使用的资源,并且为了系统安全还要保护这种互斥性 破坏不可剥夺条件 (不可剥夺条件:进程在所获得的资源在未使用完之前,不能由其他进程强行夺走,只能主动释放) 两种方案: 当某个进程请求新的资源得不到满足时,它必须立即释放保持的所有资源,待以后需要原创 2020-06-11 23:18:23 · 358 阅读 · 0 评论 -
3.2-1死锁的概念
1.什么是死锁 在并发环境下,各进程因竞争资源而造成的一种互相等待对方手里的资源,导致各进程都阻塞,都无法向前推进,就是“死锁” 发生死锁后如果没有外力干涉,这些进程都没有办法向前推进 2.死锁,饥饿,死循环的区别 死锁:各进程互相等待对方手里的资源,导致各进程都阻塞,无法向前推进 饥饿:由于进程长期得不到想要的资源。某进程无法向前推进 死循环:某进程执行过程中一直跳不出某个循环的现象 3.死锁产生的必要条件 产生死锁必须同时满足以下四个条件,只要其中任一条件不成立,死锁就不会发生 互斥条件:只有对原创 2020-06-11 23:17:05 · 213 阅读 · 0 评论 -
3.1-5实时调度
1.实时系统 概念:正确性依赖于其时间和功能两方面的一种操作系统 特点:确定性和可预测性 硬实时系统 需要在保证时间内完成重要的任务,必须完成 软实时系统 要求重要的进程的优先级更高,尽量完成,并非必须 RM(速率单调调度) 最佳静态优先级调度 通过周期安排优先级 周期越短优先级越高 执行周期最短的任务 EDF(最早期限调度) 最佳的动态优先级调度 Deadline越早优先级越高 执行Deadline最早的任务 ...原创 2020-06-11 23:16:07 · 144 阅读 · 0 评论 -
3.1-4调度算法
适用于批处理系统的调度算法 1.先来先服务(FCFS) 按照作业/进程达到的先后顺序进行服务 对长作业有利,对短作业不利,不会导致饥饿 2.短作业优先(SJF或SPF) 短作业优先默认是非抢占式的,对短作业有利,对长作业不利 会导致饥饿 抢占式的版本是最短剩余时间优先算法(SRTN),它具有最短的平均等待时间 3.高响应比优先算法 既要考虑运行时间,又要考虑等待时间,综合了前两个方法的优点,不会导致饥饿 响应比 = (等待时间+要求服务时间)/ 要求服务时间 一般是非抢占式的 适用于交互式系统的调度算法 1原创 2020-06-11 23:15:18 · 693 阅读 · 0 评论 -
3.1-3调度算法的评价指标
1.CPU利用率 利用率 = 忙碌的时间/总时间 2.系统吞吐量 单位时间内完成作业的数量 3.周转时间 完成时间-提交时间 平均周转时间 = 各作业周转时间之和 / 作业数 带权周转时间 = 作业周转时间 / 作业运行时间 平均带权周转时间 = 各作业带权周转时间之和 / 作业数 4.等待时间 平均等待时间 5.响应时间 指用户提出请求到得到相应的时间 ...原创 2020-06-11 23:14:30 · 199 阅读 · 0 评论 -
3.1-2进程调度的时机,切换与过程,方式
1.进程调度的时机 进程调度(低级调度):按照某种算法从就绪队列中=选择一个进程为其分配处理机。 需要进行进程调度与切换的情况: 当前运行的进程主动放弃处理机 进程正常终止 发生异常而终止 进程主动请求阻塞 当前运行的进程被动放弃处理机 时间片用完 有更紧急的事需要处理 有更高优先级的进程进入就绪队列 不能进行进程调度与切换的情况: 在处理中断的过程中 进程在操作系统内核程序临界区中 在原子操作的过程中(原语) 注:内核程序临界区一般是用来访问某种内核数据结构的,比如进程的就绪队列(由各原创 2020-06-11 23:13:46 · 257 阅读 · 0 评论 -
3.1-1处理机调度的概念和层次
1.调度的基本概念 从就绪队列中按照一定的算法选择一个进程并将处理机分配给它运行,以实现进程的并发执行 2.调度的三个层次 (1)高级调度(作业调度) 按一定的原则从外存上处于后备队列的作业中挑选一个或多个作业,给他们分配内存等必要资源,并建立相应的进程(建立PCB),以使他们获得竞争处理机的权利。 作业调入时会建立相应的PCB,作业调出时才撤销PCB (2)中级调度(内存调度) 引入了虚拟存储技术之后,可将暂时不能运行的进程调至外存等待。等它重新具备了运行条件且内存又稍有空闲时,再重新调入内存。(目原创 2020-06-11 23:10:53 · 284 阅读 · 0 评论 -
win10自带ubuntu安装
写一遍记住过程,就不用总是百度了qwq 1.打开应用商店,在搜索框输入ubuntu 根据个人喜好下载不同版本的Ubuntu 我下载了18.04版本 2.下载完成后点击安装原创 2020-05-21 11:19:04 · 1167 阅读 · 0 评论 -
操作系统——2.2-4管程
1.管程的定义 管程由三部分组成: (1)局部于管程的共享变量说明; (2)对该数据结构进行操作的一组过程; (3)对局部于管程的数据设置初始值的语句。 (4)还须为管程赋予一个名字。 2.管程的基本特征 (1)局部于管程的数据只能被局部于管程的过程所访问 (2)一个进程只有通过管程内的过程才能进入管程访问共享数据 (3)每次仅允许一个进程在管程内执行某个内部过程 ...原创 2020-05-19 18:24:28 · 607 阅读 · 0 评论 -
操作系统——2.2-3经典进程同步问题
1.生产者-消费者问题 系统中有一组生产者进程和一组消费者进程,生产者进程每次生产一个产品放入缓冲区,消费者进程每次从缓冲区中取出一个产品并使用。 生产者、消费者共享一个初始为空、大小为n的缓冲区,各进程互斥访问 缓冲区没满时,生产者才能把产品放入缓冲区,否则必须等待 缓冲区不空时,消费者才能从中取出产品,否则必须等待 semaphore mutex = 1;//互斥信号量,实现对缓冲区的互斥访问 semaphore empty = n;//同步信号量,表示空闲缓冲区的数量 semaphore full原创 2020-05-19 18:23:58 · 449 阅读 · 0 评论 -
操作系统——2.2-2用信号量机制实现进程互斥,进程同步,前驱关系
1.信号量机制实现进程互斥 分析并发进程的关键活动,划定临界区 设置互斥信号量mutex,初值为1 在进入区P(mutex)申请资源 在退出区V(mutex)释放资源 注: 对不同的临界资源需要设置不同的互斥信号量 临界资源:一次仅允许一个进程使用的共享资源 临界区:每个进程中访问临界资源的那段代码称为临界区,每次只允许一个进程进入临界区,进入后,不允许其他进程进入 P,V操作必须成对出现 semaphore mutex = 1; P1(){ ... P(mutex);原创 2020-05-19 18:23:16 · 526 阅读 · 0 评论 -
操作系统——2.2-1信号量机制
1.概念 (1)用户进程可以通过使用操作系统提供的一对原语来对信号量进行操作,从而很方便的实现了进程互 斥、进程同步。 (2)信号量其实就是一个变量 ,可以用一个信号量 来表示系统中某种资源的数量 (3)原语是一种特殊的程序段,其执行只能一气呵成,不可被中断。原语是由关中断/开中断指令实现的。 (4)一对原语:wait(S) 原语和signal(S) 原语,括号里的信号量S是函数调用时传入的一个参数。wait、signal原语常简称为P、V操作。做题的时候常把 wait(S)、signal(S) 两个操作分原创 2020-05-19 18:21:38 · 445 阅读 · 0 评论 -
操作系统——2.1-5线程
线程 1.线程的基本概念 (1)引入线程的原因 增加系统并发的并发度 线程:(线程ID,当前指令指针,寄存器集合,堆栈) 引入线程后,线程是CPU调度的基本单位,进程是资源分配的基本单位 (2)线程的特性和优点 引入线程机制后,并发带来的系统开销降低,系统并发性提升 从属同一进程的各个线程共享进程拥有的资源 引入线程后,线程是CPU调度的基本单位,进程是资源分配的基本单位,线程几乎不拥有资源 2.线程的实现方式 用户级线程 “用户级线程”就是“从用 户视角看能看到的线程” 内核级线程 “内核级线原创 2020-05-12 15:26:16 · 213 阅读 · 0 评论 -
操作系统——2.1-4进程通信
进程通信 1.进程通信的定义 进程通信是指进程之间的信息传递(交换) 进程是分配系统资源的单位,各进程拥有的内存地址空间相互独立 2.进程通信的类型 为了保证安全,一个进程不能直接访问另一个进程的地址空间 但是进程之间的信息交换又是必须实现的,为了保证进程间的安全通信,操作系统提供了一些方法 (1)共享存储器系统 进程对于共享空间的访问是互斥的 基于共享数据结构的通信方式(低级通信) 基于共享存储区的通信方式(高级通信) (2)管道通信系统 一个管道只能实现半双工通信 实现双向同时通信要建立两个管道原创 2020-05-12 15:25:39 · 139 阅读 · 0 评论 -
操作系统——2.1-3进程控制
进程控制 1.进程的创建 引起创建进程的事件 用户登录 作业调度 提供服务 应用请求 进程的创建过程 申请空白PCB 为新进程分配资源 初始化进程控制块 将新进程插入到就绪队列 2.进程的终止 引起进程终止的事件 正常结束 异常结束 外界干预 进程的终止过程 根据被终止进程的标识符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态。 若被终止进程正处于执行状态,应立即终止该进程的执行,并置调度标志为真,用于指示该进程,被终止后应重新进行调度。 若该进程还有子孙进程,还应将其原创 2020-05-12 10:18:36 · 156 阅读 · 0 评论 -
操作系统——2.1-2进程的状态与转换
进程的状态与转换 1.进程的三种基本状态 就绪态:已具备全部条件,没有CPU 运行态:占用CPU 阻塞态:因等待某一事件,放弃CPU,暂时不能运行 其他2种:进程的创建态、终止态 2.进程状态的装换 3.挂起状态(静止状态) 4.进程控制块 (1)进程控制块的作用 使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。OS是根据PCB来对并发执行的进程进行控制和管理的 PCB是进程存在的唯一标志 经常被系统调用,因此应常驻内存;系统将所有原创 2020-05-12 10:17:52 · 237 阅读 · 0 评论 -
操作系统——2.1-1进程的定义,组成,组织方式,特征
进程的定义,组成,组织方式,特征 1.进程的定义和组成 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位 进程实体(进程):PCB,程序段,数据段 PCB: 进程描述信息(进程标识符PID,用户标识符UID) 进程控制和管理信息 资源分配清单 处理机相关信息(各种寄存器值) 创建进程:实质上是创建进程实体中的PCB 撤销进程:实质上是撤销进程实体中的PCB 2.进程的组织方式 链接方式 索引方式 3.进程的特征 动态,并发,独立,异步,结构 ...原创 2020-05-12 10:16:14 · 200 阅读 · 0 评论 -
操作系统——1.1-6系统调用
系统调用 一、系统调用的概念 程序接口由一组系统调用组成 应用程序通过系统调用请求操作系统的服务。而系统中的各种共享资源都由操作系统内核统一掌管,因此凡是与共享资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统内核提出服务请求,由操作系统内核代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。 二、系统调用背后的过程 注意: 1.陷入指令(特权指令)是在用户态执行的,执行陷入指令之后立即引发一个内中断,使CPU进入核心态 2.发出系统调用请求是在用户态,而原创 2020-05-09 10:43:43 · 201 阅读 · 0 评论 -
操作系统——1.1-5中断和异常
中断和异常 一、中断机制的诞生 本质:发生中断就意味着需要操作系统介入,开展管理工作 二、中断的概念和作用 当中断发生后,CPU立即进入核心态 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理 对于不同的中断信号,会进行不同的处理 中断可以使CPU从用户态切换到核心态 核心态到用户态通过一个特权指令,将程序状态字(PSW)的标志位设置为用户态 三、中断的分类 内中断(异常) 信号来源于CPU内部 与当前执行的指令有关 外中断 信号来源于CPU外部 与当前执行的指令无关原创 2020-05-09 10:42:45 · 169 阅读 · 0 评论 -
操作系统——1.1-4操作系统的运行机制与体系结构
操作系统的运行机制与体系结构 一、运行机制 1.两种指令 非特权指令 特权指令 2.两种处理器状态 用程序状态字寄存器(PSW)中的某标志位来标识当前处理器处于什么样的状态(如0为用户态,1为核心态) 用户态(CPU只能执行非特权指令) 核心态(两种指令都可以执行) 3.两种程序 应用程序 内核程序 二、操作系统的内核 内核是计算机上配置的底层软件,是操作系统最基本、最核心的部分。 实现操作系统内核功能的那些程序就是内核程序 时钟管理 中断处理 原语 对系统资源进行管理的功能 进程管理 存储原创 2020-05-09 10:42:08 · 205 阅读 · 0 评论 -
操作系统——1.1-3操作系统的发展与分类
操作系统的发展与分类 1.手工操作阶段 2.批处理阶段 单道批处理系统 多道批处理系统 3.分时操作系统 4.实时操作系统 能够优先响应一些紧急任务原创 2020-05-09 10:40:47 · 184 阅读 · 0 评论 -
操作系统——1.1-2操作系统的特征
操作系统的特征 1.并发 指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。 常考易混概念——并行:指两个或多个事件在同一时刻同时发生。 2.共享 互斥共享 同时共享(宏观同时,微观互斥) 3.虚拟 空分复用 时分复用 4.异步 走走停停,以不可预知的速度向前推进 ...原创 2020-05-09 10:38:55 · 156 阅读 · 0 评论 -
操作系统——1.1-1操作系统的概念,功能和目标
操作系统的概念、功能和目标 一、操作系统的概念 1.计算机系统的层次结构 用户 应用程序(软件) 操作系统 硬件 操作系统概念:操作系统(OperatingSystem,OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;它是计算机系统中最基本的系统软件 2.操作系统的功能和目标 (1)系统资源的管理者 文件管理 存储器管理 处理机管理 设备管理 (2)用户与计算机硬件之间的接口 命令接口(允原创 2020-05-09 10:37:31 · 361 阅读 · 0 评论