操作系统复习总结

1.操作系统的定义及主要目标

定义: 操作系统是管理计算机硬件与软件资源的计算机程序。
主要目标:方便性、高效性、可扩展性、开放性。

2.操作系统的基本类型及特征

选择题中考各个类型的区别
1.批处理操作系统——单道、多道。
特征:成批处理、多道程序运行、无交互性。
优点:系统资源的利用率高、作业吞吐量大
缺点:作业周期时间长、无交互性。
2.分时操作系统——按时间片伦流的分配处理机
特征:多路性、独占性、及时性、交互性。
3.实时操作系统(可优先处理事务)
特征:及时性、高可靠性、专业性、弱交互性

3.操作系统的功能及特征

功能:
1.作为系统资源的管理者:(安全、高效)
文件管理;存储器管理;处理机管理;设备管理。
2.作为用户和计算机硬件之间的接口(方便用户使用)
命令接口(直接);程序接口(间接);GUI;
3.作为最接近硬件的层次——实现对硬件机器的扩展(虚拟机)
特征
并发性:微观上交替发生、宏观上同时发生(区别并发和并行)
共享性:区别互斥共享和同时共享
虚拟性、异步性(前提是并发性)
并发性和共享性互为存在条件、最基本的两个特征

4.进程的定义、特征

定义:在系统中能独立运行并作为资源分配的基本单位、它由一组机器指令、数据和堆栈等组成,是一个可以独立运行的进程实体。 (进程实体运行过程,资源分配和调度的基本单位(没有引入线程时))
特征:动态性(基本特性)、并发性、独立性、异步性(可能导致不确定性)、结构特性。
组成:程序段、数据段、PCB(进程控制块)

5.进程控制块概念、作用及主要内容

定义:系统为了管理进程设置的一个专门的数据结构
PCB是进程存在的唯一标志
内容:进程标识符;处理机状态;进程调度信息;进程控制信息
作用:用来控制和管理进程信息

6.进程基本状态及其转换,以及转换的原因

3种基本状态:就绪态:万事具备,只差CPU
运行态:占有CPU、在CPU上运行
阻塞态:等待事件完成
转换

--
进程被调度
时间片到
I/O请求
完成
I/O完成
创建态
就绪态
运行态
阻塞态
终止态

注:不可由阻塞态直接进入运行态

7.原语及特征

原语:实现进程状态的转换
特征:一气呵成,不可中断
6种原语:创建、撤销、阻塞、唤醒(成对使用)、挂起、激活。

8.临界资源、临界区(互斥访问)

临界资源:每次仅允许一个进程访问的资源
临界区:每个进程中访问临界资源的那段程序

9.进程两种制约关系与进程互斥、同步

进程之间存在着直接制约和间接制约两种制约关系:
直接制约(同步)是由于进程间的相互合作而引起的。(进程中存在一定的逻辑关系。需要在执行次序上协调)
间接制约(互斥)则是由于进程间共享临界资源而引起的。(进程在使用资源方面的约束关系)

10.用信号量和p、v操作机制实现进程的同步和互斥(大题考查)

对信号量的操作分为P(wait)、V(signal),这些操作叫做原语。原语是不可再分的操作,在对信号量的操作中,与每个信号量相对应的是一个队列,队列中储存的是排队等待使用这个资源的进程。
引入信号量、队列、以及P、V操作的目的是为了解决进程间互斥和同步问题。
P、V操作解题思路:
解决进程互斥问题的思路:
1.分析并发进程的关键活动,划分临界区;
2.设置mutex为互斥信号量,初值为1;
3.在临界区前执行P操作;
4.在临界区之后执行V操作;
解决进程同步问题思路:
1.分析什么地方需要实现“同步关系”即必须保证“一前一后”执行的两个操作;
2.设置同步信号量S,初始为0;
3.在“前操作”之后执行V操作;
4.在“后操作”之前执行P操作;
**例:生产者消费者问题:
解题思路:
1.关系分析——确定同步、互斥关系
2.整理思路——确定P、V操作执行的大致顺序
3.设置信号量。

semaphore mutex=1; //临界区互斥信号量
semaphore empty=n;  //空闲缓冲区
semaphore full=0;  //缓冲区初始化为空
producer ()//生产者进程 
{
    while(1)
    {
        produce an item in nextp;  //生产数据
        P(empty);  //获取空缓冲区单元
        P(mutex);  //进入临界区.
        add nextp to buffer;  //将数据放入缓冲区
        V(mutex);  //离开临界区,释放互斥信号量
        V(full);  //满缓冲区数加1
    }
}

consumer ()//消费者进程
{
    while(1)
    {
        P(full);  //获取满缓冲区单元
        P(mutex);  // 进入临界区
        remove an item from buffer;  //从缓冲区中取出数据
        V (mutex);  //离开临界区,释放互斥信号量
        V (empty) ;  //空缓冲区数加1
        consume the item;  //消费数据
    }
}

注:两个V操作可以交换,P不可,会导致死锁。
实现互斥的P操作要在实现同步的P操作之后。

11.线程的定义、引入线程的目的,线程与进程的比较(简答题考查)

定义
在多线程OS中,通常是在一个进程中包含多个线程,每个线程都是作为利用CPU的基本单位,是花费最小的开销的实体。
目的
1、提高程序执行并发程度;
2、缩短系统切换的时空开销
比较
1.调度性:线程在OS中作为调度和分派的基本单位,进程只作为资源拥有的基本单位。
2.并发性:进程可以并发执行,一个进程的多个线程也可以并发执行
3.拥有资源:进程始终是拥有资源的基本单位,线程只拥有运行时必不可少的资源,本身基本不拥有系统资源,但可以访问隶属进程的资源
4.系统开销:操作系统在创建、撤销和切换进程是付出的系统开销显著大于线程。
5.独立性
6.支持多处理系统

12.处理机的调度层次及主要任务

高级调度(作业调度):外存与内存之间的调度。(无->创建态->就绪态)
中级调度(内存调度):决定将那个处于挂起转态的进程重新调入内存(挂起态->就绪态)
低级调度(进程调度):最基本的一种调度(就绪态->运行态)

13.进程调度及进程调度的主要任务

进程调度就是低级调度。
主要任务:
1.保护处理机的现场信息;
2.按某种算法取进程,把处理器分配给进程

14.常用的作业调度及进程调度算法

主要有:先来先服务算法(进程);短作业优先算法;高响应比优先算法;时间片轮转算法;最高优先级算法;多级反馈队列算法。

15.(先来先服务、短者优先、高响应比优先、最高优先级优先、轮转调度算法)
16.多级反馈队列调度算法及其优点?

算法:1.设置多个就绪队列;
2.每个队列都采用先来先服务算法;
3.按队列优先级调度。
优点:集中体现了各个算法的优点。

17.死锁定义、产生死锁的原因、必要条件和解决死锁的方法

定义:
多个进程应竞争资源而造成的一种僵局,若无外力的作用,这些进程将永远都将不能再向前推进。
原因:
1.竞争资源;
2.进程推进顺序非法;
必要条件:
互斥条件,请求和保持条件,不可剥夺条件,循环等待条件。
解决死锁的方法
1.预防死锁——破坏产生死锁的四个必要条件中的一个或几个条件
2.避免死锁——破坏死锁的四个必要条件(银行家算法)
3.检测死锁——通过系统设置的检测机构,及时检测出死锁的发生
4.解除死锁——撤销或挂起一些进程

18.预防死锁的方法

1.破坏“请求和保持”条件——静态资源分配;
2.破坏“不可抢占”条件——(1)使用优先级更高的算法,抢占资源;(2)若一个进程资源长期得不到满足,就阻塞改进程。
3.破坏”循环等待“条件——为资源进行编号,按从小到大的顺序访问;(资源有序)
4.破坏互斥条件——建立一个共享的临界资源(比较难,不建议破坏该条件)。

19.避免死锁与银行家算法的应用

避免死锁与银行家算法核心:在申请资源之前,确定是否有一个安全序列。
银行家算法的步骤:
1.检查此次申请是否超过了之前声明的最大需求数;
2.检查此时剩余的可用资源是否还能满足这次需求;
3.试探着分配,更改各数据结构
4.用安全性算法检测此次分配是否会让系统进入不安全状态。
安全性算法的步骤:
1.检查当前剩余可用资源是否可以满足某进程的最大需求,若可以,将改进程加入安全序列;
2.将改进程持有的资源全部回收;
3.不断重复上述过程看是否所有的进程都可加入安全序列。
**例:
问题描述
答案:利用银行家算法的四个数据结构,来描述当前的系统状态: 在这里插入图片描述
因为系统总资源R=(17,5,20),所以可以计算出可利用资源向量Available=R-Allocation(P1,P2,P3,P4,P5)=(2,3,3)
分配资源
根据目前状态,用Available向量每一个进程的Need向量相比,发现Available>=P5.Need,所以可以将目前的资源分配给P5向量(P4也可以,不唯一)。当P5获得所需的所有向量后执行完毕,之后释放其占有的所有资源。此时更新系统资源:
在这里插入图片描述

20.静态重定位、动态重定位

静态重定位:在一个作业装入主存,根据其所获得的空间区域,由链接装配程序将该程序的逻辑地址转换成相应的物理地址。地址一旦确定及不在改变。
动态重定位:在程序执行过程中,每当访问指令或数据时,要将访问的逻辑结构转换为物理地址。

注:重定位就是把程序的逻辑地址空间变换成内存中的实际物理地址空间的过程。它是实现多道程序在内存中同时运行的基础。重定位有两种,分别是动态重定位与静态重定位。

21.连续分配(单一连续区、固定分区、动态分区)原理和特点

1.单一连续分配:把内存分为系统区(存放操作系统的相关数据,存放在内存的低址部分)和用户区(存放用户进程相关的数据)两部分。适用于单用户、单任务系统中。
特点:实现简单,无外部碎片,会产生内部碎片。
2.固定分区分配:(提前分配好)——会产生内部碎片,无外部碎片
分区大小相等:缺乏灵活性
分区大小不等:划分为含有多个较小分区、适量的中等分区、少量的大分区。
内存分配:
(1)建立一张分区使用表(分区号、大小、起始地址、状态);
(2)找出尚未分配的分区,将之分配给该程序,若无则拒绝执行。
(3)资源回收。
3.动态分区分配——无内部碎片,有外部碎片
建立空闲分区表或空闲分区链
1.分配内存:按某种算法分配(首次适应FF、循环首次适应 NF、最佳适应BF、最坏适应WF)
2.回收内存(若相邻则合并,不想邻则新建)

22.常用的分区分配算法(首次适应、最佳适应、最坏适应)

首次适应:——效果最好
思想:按照地址递增的顺序查找
缺点:低址会产生碎片,查找开销大
最佳适应:容量从小到大的顺序查找
缺点:会产生碎片
最坏适应:与最佳适应算法相反,即按照容量从大到小的顺序
产生碎片的可能性小。

23.页式、段式存储管理原理和特点

分页(段)是存储管理:将一个进程直接分散的装入到许多不相邻接的分区中,即离散分配的方式。如果离散分配的基本单位是页(段)则称为分页(段)存储管理方式。

24.分页、分段存储管理的地址转换过程

在这里插入图片描述
在这里插入图片描述

25.内存管理方案中的碎片(零头)问题及解决办法

内存中无法被利用的存储空间称为“零头”或“碎片”。
解决办法:1.紧凑技术——代价较高
2.离散分配方式

26.虚拟存储器定义、理论基础、特征

定义:具体请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储系统。
理论依据:程序执行的局部性理论
特征:多次性、对换性(建立在离散分配的基础上,基础) 虚拟性(重要特征)。

27.页面淘汰算法(FIFO,OPT、LRU)
28.内存管理的碎片问题(零头)

内存中无法被利用的存储空间称为“零头”或“碎片”。
根据碎片出现的情况可以分为以下两种:
内部碎片:分配给作业的存储空间中未被利用的部分。
外部碎片:系统中能够无法利用的小的空闲分区。

29.设备独立性与逻辑设备、物理设备以及逻辑设备名到物理设备名映射
30.设备的分配的数据结构

设备控制表、控制器控制表、通道控制表、系统设备。

31.虚拟设备、Spooling的组成

Spooling的组成:输入井和输出井;输入缓冲区和输出缓冲区;输入进程SPI和输出进程SPO。

32.引入缓冲的原因及目的

1.缓和CPU 与I/O设备间速度不匹配的矛盾;
2.减少对CPU的中断频率,放宽对中断响应时间的限制;
3.提高CPU与I/O设备之间的并行性。

33.活动头磁盘访问磁盘块的时间以及基本的磁盘的调度算法
34.打开文件、关闭文件
35.文件的逻辑结构

1.有结构文件:以记录为单位进行存取,(记录式文件)
2.无结构文件:以字符流构成的文件(流式文件)

36.文件的物理结构(顺序结构、链接结构(隐式、显式)、索引结构(单级、多级、增量式))
37.UNIX系统多级混合(增量式)索引结构
38.文件存储空间的管理方法(空闲表法、位示图、空闲块链法、成组链接法)
39.文件控制块、目录管理的主要要求
40.文件目录结(单级、两级、树形)特点
41.操作系统接口的类型、形式和作用

三种接口:1.命令接口:(1)联机命令接口=交互式命令接口(用户说一句做一句)。
(2)脱机用户接口=批处理命令接口(用户说一堆做一堆)。
2.程序接口:由一组系统调用组成=系统调用,适用于编程时请求系统服务
3.图形用户接口:直观,操作方便。

42.处理机的工作状态

1.核心态(管态或系统态)
2.用户态(目态)

  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值