2023 操作系统 R 复习大纲( 适用于太理软件 21 级)

目录

01.操作系统的定义

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

1.批处理操作系统(单、多道)

2.分时操作系统

3.实时操作系统

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

04.进程的定义、特征

05.进程基本状态及其转换原因

06.进程互斥、同步

07.进程控制块的内容、作用

08.用信号量和 PV 操作机制实现进程的同步和互斥

09.引入进程,线程的目的

10.典型的调度算法

(1)先来先服务(FCFS):

 (2)短者优先(SJF) :

(3)高响应比优先(HRRN):

(4)优先级调度:

(5)时间片轮转调度(RR):

(6)多级反馈队列调度:

11.死锁的原因、必要条件

12.预防死锁方法、避免死锁

13.连续分配原理和特点

①单一连续分配:

②固定分区分配:

③动态(可变)分区分配:

14.页式、段式存储管理原理

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

16.虚拟存储器概念、理论基础

17.页面置换算法

(1)最佳置换算法:

(2)先进先出置换算法

(3)最近最久未使用置换算法

(4)时钟置换算法

(5)改进型时钟置换算法

18.存储管理的碎片问题

19.设备分配时应考虑的因素

20.设备独立性、虚拟设备

21.磁盘的调度算法

22.打开文件、关闭文件的操作

23.文件的物理结构

(1)连续分配

(2)链接分配

(3)索引分配

24.UNIX 系统多级混合(增量式)索引结构

25.文件存储空间的管理方法-空闲表法、位示图、空闲块链法

26.系统调用的过程

27.系统调用与一般过程调用的区别


01.操作系统的定义


操作系统是计算机系统中的一个(系统软件),它管理和控制计算机系统中的(硬件和
软件资源)。


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

1.批处理操作系统(单、多道)

      允许多个用户将多个作业提交给计算机集中处理的操作系统称为(批处理操作系统)

优缺点:

  • 系统利用率高、系统吞吐量大

  • 平均周转时间长、无交互能力

(平均周转时间短)是批处理操作系统中进程调度算法的重要准则

2.分时操作系统

      允许多个用户以交互方式使用计算机的操作系统称为(分时操作系统)

特点:

  • 交互性、多路性、独立性、及时性

优点:

  • 为用户提供友好的接口,即用户能在较短时间内得到响应。

  • 便于资源共享和交换信息,为软件开发和工程设计提供良好的环境。

通常在分时系统中运行的作业称为 终端型作业

(响应时间快)是分时系统中进程调度算法的重要准则

3.实时操作系统

     计算机系统能及时处理过程,控制数据,并作出响应的操作系统称为(实时操作系统)

特点:

  • 两个基本特征,(及时性)和(高可靠性)

( 截止时间的保证 )是实时调度算法的重要准则

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


操作系统的功能:

①作为用户与计算机硬件系统之间的接口;                                                                                     

②作为计算机系统资源的管理者;

③实现了对计算机资源的抽象。

操作系统的特征:并发性、共享性(最基本的特征)、虚拟性和异步性。


04.进程的定义、特征


进程的定义:是一个程序对某个数据集在处理机上的执行过程,是系统进行资源分配和处理机调度的基本单位。

进程的特征:动态性(最基本的特征),并发性,独立性,异步性,(结构性)。

05.进程基本状态及其转换原因

06.进程互斥、同步


同步指进程间存在一定的逻辑关系,需要在执行次序上协调

互斥指进程间在使用共享资源方面的约束关系

解决上述两个问题的一种常用的方法是(信号量机制)

原则:空闲让进,忙则等待,有限等待,让权等待

07.进程控制块的内容、作用


PCB 是进程实体的一部分,是操作系统中最重要的记录型数据结构

作用是使程序成为一个独立运行的基本单位,能与其他进程并发执行的进程。

并对并发执行的进程进行控制管理

08.用信号量和 PV 操作机制实现进程的同步和互斥

互斥:

互斥信号量的初值一般为 1

同步:

而同步信号量的初值应视具体情况而定,这里为0 (前V后P,P2等P1)

 

 拓展:单道程序系统不具有并发性,因此不需要同步和互斥

举例(多生产者消费者问题):

父,子,女,吃苹果,橘子问题,儿子只吃橘子,女儿只吃苹果,爸爸一次盘子里放一个

分析:生产者放入缓冲区的产品有两类,消费者也有两类,每类消费者只消费其中固定的一类产品

int S=1;
int Sa=0;
int So=0;
main( )
{
  cobegin
  father();
  son();
  daughter();
  coend
}

father()
{
  while(1)
   {
     P(S );
     将水果放入盘中;
     if (放入的是桔子) V(So);
     else V(Sa);
   }  
}

son( )
{
  while(1)
   {
     P(So);
     从盘中取出桔子;
     V(S);
     吃桔子;
   }
}

daughter( )
{
  while(1)
   {
     P(Sa);
     从盘中取出苹果;
     V(S);
     吃苹果;
   }
}

09.引入进程,线程的目的

引入进程:为了使程序在多道程序环境下能并发执行,并对并发执行的程序加以控制和描述

引入线程:缩短系统切换的时空开销,提高程序执行并发度

10.典型的调度算法

进程的调度方式有两种,一种是(非抢占式),令一种是(抢占式)


(1)先来先服务(FCFS):

算法简单,效率低

利于长作业不利于短作业

利于CPU繁忙型,不利于I/O繁忙型作业

 (2)短者优先(SJF) :

为了使作业的平均周转时间最短

为了照顾短作业用户

平均等待时间,平均周转时间最少

对长作业不利

估计运行时间可能不准确

(3)高响应比优先(HRRN):

为了兼顾短作业和长时等待的作业

响应比=(等待时间+要求服务时间)/要求服务时间

利于短作业,且长作业不至于产生饥饿

等待时间越长,优先级越高

(4)优先级调度:

为了照顾紧急作业的用户:基于优先权的可抢占式调度算法

总之谁优先级高谁上

抢占式,非抢占式;动态优先级,静态优先级

(5)时间片轮转调度(RR):

为能实现人机交互作用

时间片过高:交互性差;时间片过低:系统开销大

时间片轮转调度算法遍退化为( 先来先服务 )算法

(6)多级反馈队列调度:

为了使短作业、长作业及交互作业用户都比较满意

对于终端型作业用户:由于多为交互型小作业,短作业优先

对于短批处理作业用户:周转时间短

对于长批处理作业用户:不会长期得不到处理

11.死锁的原因、必要条件

死锁产生根本原因:可共享资源不足,另一个基本原因是:进程的推进顺序不当

死锁存在的必要条件:①互斥;②不可剥夺;③请求和保持;④循环等待

拓展:安全状态无死锁,非安全状态可能死锁

12.预防死锁方法、避免死锁

预防:

破坏互斥——spooling算法

破坏不可剥夺——优先级调度

破坏请求和保持——静态分配法

破坏循环等待——顺序资源分配法

避免:

银行家算法

当一个进程提出的资源请求将导致系统从( 安全状态 )进入(不安全状态)时,系统就会拒绝它的资源请求

13.连续分配原理和特点

①单一连续分配:

使用这种内存分配方式,内存空间会被分成 系统区 和 用户区 两部分,系统区仅提供给OS使用,系统区外的用户区提供给用户使用。

优:实现简单,无外部碎片

缺:只适用于 单道程序 的情况,存储器利用率低,有内部碎片

②固定分区分配:

将用户空间划分为若干个固定大小的分区,每个分区只能装入一道作业

若分区大小相等:缺乏灵活性,适用于一台计算机控制多个相同对象的情况

若分区大小不等:增加灵活性

优:实现简单,无外部碎片

缺:会产生内部碎片

③动态(可变)分区分配:

根据进程大小动态的建立分区

常用的数据结构:空闲分区链,空闲分区表

支持多道程序,相邻空间需要合并

没有内部碎片但有外部碎片

拓:动态分区分配算法

(1)首次适应算法

从头到尾适应分区

优:综合性能最好,算法开销小,不需要重排序分区

(2)最佳适应算法

优先使用小分区

优:利于满足大进程

缺:小碎片多,算法开销大

(3)最坏适应算法

优先使用大分区

优:产生小碎片少

(4)邻近适应算法

由首次适应算法演变,每次从上次查找结束位置开始查找

优:算法开销小

缺:会使高地址的大分区也被用完

14.页式、段式存储管理原理

分页式:页面+页框

每个进程对应一个页表

物理单位,用户不可见,一维的,不会产生外部碎片,容易实现信息共享

分段式:段号+段内地址

逻辑单位,用户可见,二维的,会产生外部碎片,容易实现信息保护


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

分页:

(1)页号=逻辑地址/页面大小   ;页内偏移量=逻辑地址%页面大小

(2)比较页号和页表页表长度,若大于等于,则越界中断

(3)物理地址=页面大小*物理块号+页内偏移量

(物理块号一般一般题目中会和页号一一对应给出)

分段:

(一般会给一个表,由段号,内存始址,段长)(给一个逻辑地址(段号X,段内地址Y))

(1)由表数,得出段表长度

(2)对比段号和段表长度,若大于等于,则越界中断

(3)对比段内地址和段长,若大于等于,则越界中断

(5)物理地址=段号对应的内存始址+页内地址

16.虚拟存储器概念、理论基础

定义:在具有层次结构存储器的 计算机系统 中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“ 主存储器 ”

实现虚拟存储器需要 请求分页(段)的页(段)表机制,缺页(段)中断机制,地址变换机构这三个硬件支持
虚拟存储器的最大容量 由计算机的地址结构决定

实现虚拟存储器的目的是 扩充内存容量

理论基础:程序的局部性理论

虚拟内存:页面置换,请求调页

多次性(基本),对换性,虚拟性

17.页面置换算法

为保证最低的缺页率

(1)最佳置换算法:

理想型,无法实现

(2)先进先出置换算法

会产生bleady异常(内存块越大,缺页率越高)

(3)最近最久未使用置换算法

最接近最佳置换算法,性能好,但是开销大

(4)时钟置换算法

访问位为1:最近访问过

访问位为0:最近未访问过

最多经历两轮扫描

(5)改进型时钟置换算法

18.存储管理的碎片问题

单一连续分配:有内部碎片

固定分区分配:有内部碎片

动态分区分配:有外部碎片

分页式存储管理:有内部碎片

段页式存储管理:有内部碎片

分段式存储管理:有外部碎片

19.设备分配时应考虑的因素

设备固有属性

设备分配算法

设备分配的安全性

设备独立性

20.设备独立性、虚拟设备

设备独立性的概念:用户进程独立于具体使用的物理设备。(进程只需用逻辑设备名称请求使用某类设备。)

优:设备分配时的灵活性,易于实现I/O重定向

虚拟设备

为了方便我们管理设备的 I/O 操作

 虚拟设备是通过(SPOOLING)技术把(独占)设备变为能为若干个用户(共享)的设
备。

SPOOLING组成:

(1) 输入井和输出井
(2) 输入缓冲区和输出缓冲区
(3) 输入进程和输出进程
(4) 井管理程序

21.磁盘的调度算法


先来先服务(FCFS)

最短寻找时间优先(SSFS 会“饥饿”)

扫描算法(电梯调度算法 SCAN)

循环扫描算法(C-SCAN)

22.打开文件、关闭文件的操作

打开:建立用户和文件的联系,将待访回文件的目录信息读入内存活动文件表中

关闭:把内容写到文件目录项,撤销主存中有关该文件的目录信息,切断用户与该文件的联系
 

23.文件的物理结构

(1)连续分配

(逻辑块号,块内地址)—起始块号+块数—>(物理快号,块内地址)

  物理块号=起始块号+逻辑块号

优:支持顺序访问和随机访问

缺:不方便文件拓展,存储空间利用率低,会产生磁盘碎片

(2)链接分配

隐式链接:

优:方便拓展,不会有碎片问题

缺:只能顺序访问,不能随机访问;查找i块需要访问i+1次,效率低

显式链接:

把指针存放到一张文件分配表(FAT)中(末尾指向-1)

优:支持顺序和随机访问,块号转换不需要磁盘,访问速度开,无碎片问题

(3)索引分配

索引表存放的磁盘块:索引块

文件数据存放的磁盘块:数据块

链接方案:低效

多层索引:各索引表大小不能超过一个磁盘块

K层索引需要K+1次I/O操作

混合索引:几几索引指向几层索引表

24.UNIX 系统多级混合(增量式)索引结构

增量式混合索引结构在索引节点中用13 个地址项表示,其中有10个直接地址,1个一次间接地址,1个三次间接地址。

计算单个文件的最大长度:

索引表大小=盘块大小/盘块所占字节

10*盘块大小+

1*索引表大小*盘块大小+

1*索引表大小*索引表大小*盘块大小+

1*索引表大小*索引表大小*索引表大小*盘块大小

25.文件存储空间的管理方法-空闲表法、位示图、空闲块链法

(1)空闲表

记录空闲块号和空闲块的数目

分配:首次适应和最佳适应算法

(2)位示图

0——空闲

1——已分配

字长n

盘块号b=ni+j

位号(行号)i: b%n

字号(列好)j:b/n

(3)空闲块链法

空闲盘区链

空闲盘块链

成组链接法

26.系统调用的过程


①传递系统调用系数;

②执行陷入指令(用户态);

③执行相应的服务程序(系统
态);

④返回应用程序(用户态)

27.系统调用与一般过程调用的区别


运行状态:系统调用主调程序为用户态,被调程序为系统态   一般调用两者在同一态

状态切换:系统调用通过软过程中断,一般调用不切换

返回问题:系统调用可调度,一般调用不调度

嵌套调用:系统调用限制,一般调用不限制

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值