江苏大学 操作系统 知识点提纲 期末考试/考研 复习

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介: 江苏大学 操作系统 知识点提纲 期末考试/考研 复习

第一章 绪论

1.操作系统定义:

是计算机系统的一种系统软件,用于管理计算机的资源和控制程序的执行。

2.提供用户的使用方式:

命令行、系统调用、图标窗口。

3.五大功能:

处理机与进程管理、存储器管理、文件管理、设备管理、网络管理。

4.分类:

单用户操作系统(用户独占全机、CPU等待手工操作)、批处理操作系统(用户不能直接控制作业运行)、实时操作系统(事件驱动设计)、分时操作系统(同时、独立、交互、及时)、网络操作系统(提供网络服务)、分布式操作系统(资源共享、无主次、两两通信、程序并行运行)、嵌入式操作系统(管理系统资源、抽象硬件、提供开发工具库函数)。

5.特权指令:

只能由操作系统运行的指令是特权指令,用户不能运行。

6.处理器状态:

核心状态、管理状态、用户程序状态(管态和目态)

7.程序状态字:

指示处理机状态

8.结构:

电子线路、指令集、过程、中断、进程原语、局部辅存、虚拟存储器、通信(管道)、文件系统、设备、目录、用户进程、外壳。13层。

9.现代操作系统特点:

个人独占;多处理机;技术结构:微内核、多线程、对称多处理机、面向对象与软件工程原则。

第二章 进程与线程

1.并发执行特点:

资源共享性、失去了封闭性和可再现性、相互制约性。

2.进程定义:

进程是能和其他程序并行执行的程序段在某数据集合上的一次运行过程,是系统资源分配和调度的一个独立单位。

3.进程与程序:

程序是指令集合,进程是程序一次运行活动;进程独立调度与其他进程并行,程序不能。一个程序可以对应多个进程。

4.进程的组成:

程序、数据集合、进程控制块PCB(与进程一一对应,是进程存在的标志)。

5.进程的三态与转换:

就绪、执行、阻塞。

6.进程控制原语:

创建、撤销、阻塞、唤醒。

7.线程定义:

线程是进程中的一个实体,是比进程更小的能独立运行的基本单位,不独立拥有资源。

8.线程与进程:

进程是资源的拥有者,有独立地址空间,不是处理器调度基本单位。线程不独立拥有资源,只有TCB和堆栈,共享地址空间,是处理器调度基本单位。

9.多核、多线程与超线程:

1.多核计算机打破单核环境下的正确性与可靠性。多核在一个CPU布置多个执行核(ALU)。

2.超线程在一个CPU上同时执行多个程序共同分享该CPU内资源,让应用程序在同一时间使用芯片不同部分。

3.多线程:任意时刻多个线程同时被调度运行。

第三章 互斥与同步

1.并发进程产生的与时间有关的错误:

结果不唯一、永远等待。

2.临界区:

在某段时间内只允许一个进程使用的资源是临界资源,并发进程访问临界资源的程序段是临界区。要求:互斥、进展、有限等待。

3.信号量定义、物理意义:

一个进程检测到某个信号后被强迫停止在一个特定的地方,直到收到一个专门的信号后才能继续执行。这个信号就称为“信号量”。信号量被定义为含有整型数据项的结构变量,其整型值大于0代表可供并发进程使用的资源实体数,小于0表示正在等待使用临界区的进程数。

4.原语:

执行时不可中断的过程。

5.直接通信、间接通信:

1.直接通信是指发送进程把信件直接发给接受进程。对称指名通信:Send(P,信件),receive(Q,信件)。非对称指名通信方式:发送者先向系统申请缓冲区,把信件存入缓冲区。接受进程被唤醒,接收信件。

2.间接通信指把信件发送到共享的信箱中,接受进程到信箱取信件。

6.死锁定义与四个必要条件:

一组并发进程彼此相互等待对方占有的资源,在得到对方的资源之前不会释放自己占有的资源,造成这组进程都不能继续向前推进的情况。必要条件:互斥、部分分配、不可抢占、循环等待。

7.死锁防止:

1.资源静态分配(一个进程必须在执行前申请所需的全部资源,直到所需的资源得到满足后才开始执行)

2.资源层次分配(把资源分成多个层次,一个进程得到某一层资源后只能申请更高层资源,释放资源时先释放高层资源)。

8.死锁避免:

银行家算法。

9.死锁检测与恢复:

死锁检测:资源分配图与等待图。死锁解除(恢复):撤销进程法、剥夺资源法。

第四章 处理器调度

1.处理器调度层次:

1.长程调度(决定作业是否能创建进程运行、分配资源、创建后是就绪或就绪挂起)

2.中程调度(将内存调到外存对换区挂起)

3.短程调度(哪个进程获得处理机)。

2.调度准则:

资源(cpu)利用率、平衡资源、响应时间、周转时间、吞吐率、公平性。

3.处理机调度算法:

单处理机:先来先服务、时间片轮换、短作业优先、优先级调度、多级反馈队列轮换法。

多处理机:负载共享调度算法、组调度算法、专用处理机分配调度算法。

4.实时调度:

有限等待时间、有限响应时间、用户控制、可靠性高、系统处理错误能力强。算法:频率单调调度算法、时限调度算法、最少裕度法。

5.短程调度算法

单处理器调度算法、多处理器调度算法。

第五章 存储管理

1.存储管理功能:

存储空间的分配与回收、地址映射与重定位、存储共享与保护。

2.存储分配的三种方式:

1.直接存储分配方式(直接操作物理地址)、

2.静态存储分配方式(使用逻辑地址,程序一直占据存储空间直到结束)、

3.动态存储分配方式(一部分一部分动态装入,利用覆盖与交换)。

3.重定位定义:

由于用户程序装入而引起的地址空间中的相对地址转化为存储空间中绝对地址的地址变换过程,称为地址重定位。

4.两种重定位特点与区别:

1.静态地址重定位是用户程序在装入时由装配程序一次完成,以后不变。

2.动态地址重定位是程序执行过程中,cpu要对存储器访问时通过硬件地址变换机构将程序和数据地址转换成主存地址,逻辑地址MA=(重定位寄存器BR)+(相对地址寄存器VR)。

5.覆盖与交换:

1.覆盖指一个用户程序不在一开始把全部程序数据装入主存,把程序划分成若干个相互独立的程序段,让那些不会同时被CPU执行的程序段共享同一个主存区。某一程序段执行时将该程序段装入主存覆盖以前某个程序段。 2.交换指将系统暂时不用的程序数据从主存中调出,腾出更大存储空间将系统要求使用的程序数据调入主存并将控制权转交给它。在主存和外存交换程序数据。

6.分区存储管理:

1.固定分区法采用分区说明表将主存的用户可用区域划分为若干个大小不等的区域,每个进程占用一个或多个区域。优缺点:实现简单,但存在内部碎片。

2.动态分区法在os启动时只存在一个空闲分区。

3.分配程序将该区域依次划分给调度程序选中的进程,分配的大小随用户进程对主存的要求改变,不会出现碎片。

4.数据结构:使用可用分区表、自由链表、请求表。

5.算法使用最先适应法(产生碎片)、最佳适应法(产生碎片)、最坏适应法。

6.动态分区回收(释放区与上下空闲区是否相邻的情况)。

7.地址转换:先判断逻辑地址<限长值?(保护:地址越界中断)再用基址寄存器+逻辑地址=绝对地址。

8.共享:各作业共享存储区域部分有相同基址、限长值。

9.优点:多道程序设计资源利用率高、硬件支持少管理简单。缺点:主存利用率不高、只能覆盖交换。

7.页式存储管理:

1.静态分页管理。利用页表、请求表(包含进程号、请求页面数、页表起始地址、页表长度、状态)、存储页框表(位视图、空闲页框链)。

2.分配:首先从请求表查出进程要求的页框数,由存储页框表检查是否有空闲页框,若有则分配设置页表,填写请求表,查找出空闲页框,将对应页框填入页表。

3.回收:将页表中的页框插入存储页框表中,使之成为空闲页框。

4.地址变换:将逻辑地址分为页号和页内偏移,根据页号找到页框号,将页框号和页内偏移拼接。

5.共享保护:数据共享中,不同作业对共享数据页使用不同页号,各自页表的表目指向共享页框。程序共享必须规定统一页号。

6.保护:保护保护权限域或保护键法。(psw的键和访问页的保护键核对,相符时能访问)。

7.优点:解决了碎片问题。缺点:作业大小仍受主存页框数限制。

8.虚拟存储器:

1.当用户作业要求存储空间大,不能装入主存时,基于局部性原理,把要用的数据和程序装入主存,暂时不用的驻留在外存。

2.流程:首先,为用户作业或进程分配主存工作区并填写相应的页表项目;接着,由进程调度程序调度用户进程执行。进程在执行中访问某页时,硬件地转换机构先查看快表,若在快表中命中,则立即形成绝对地址,否则再查看页表,若该页对应的状态位为1,表明该页已在主存,即根据页表内的页框号形成访问主存的绝对地址,将该页的信息登记到快表中。若该页对应的状态位为0,表明该页不在主存中,则由硬件产生一个缺页中断。操作系统内核必须处理这个缺页中断,处理的办法是先查看主存是否有空闲的页框,若有则按该页在外存的地址将该页读出并装人主存,在页表:表中填上它占用的页框号且修改状态位。若主存已没有空闲页框,则必须调出已在主存中的页,再将所需的页装入,对页表和存储页框表进行相应的修改。为了提高系统效率,在访问某页时,若是执行写指令,则在页表中相应页的修改位上置1。这样选择某页调出时,必须看其修改位是否为1,若修改位为1,那么就将该页写回外存中,否则不必把该页重新写回外存中。

9.段式虚拟存储管理思想:

把作业的所有分段的副本存放在外存上,当作业被调度投入运行时,首先把当前需要用的一段或几段装入主存,在执行过程中,访问到不在贮存的段时,通过缺段中断机构把它从外存调入。流程:由硬件地址转换机构查快表和段表,若快表命中或该段在主存中,核对存储权限。存储合法,则按静态段式存储管理的地址转换得到绝对地址,否则引发保护中断。若该段不在主存,由硬件产生缺段中断,操作系统处理中断时查看可用分区表或自由链表,找出一个足够大的连续区域装入该分段。若找不到连续分区,则检查空闲区总和,使用移动技术合并一个空闲区将该分段装入主存。若空闲区总和不能满足,则调出段。

10.常用页面置换算法:

OPT(理论上)、FIFO、CLOCK、LRU

第六章 文件管理

1.文件:

文件是一组逻辑上相互关联的信息的集合,是计算机系统中信息的一种组织结构。文件的基本操作有创建、删除、写、读、打开、关闭。

2.文件存取方法

(文件访问 access):1.顺序存取方法Sequential access(严格按照数据记录的排列顺序依次存取)、2.直接存取方法Random access(随意读写文件任意位置)、3.索引存取(需要创建文件索引)。

3.文件逻辑结构:

1.无结构文件(流式文件、字符流)Byte Sequence。以byte为单位,将数据按顺序组织成记录并积累保存,是有序相关信息项的集合,没有结构。

2.顺序文件Record Sequence。文件是具有固定长度记录的序列,每个记录有固定内部结构。

3.索引顺序文件将记录分为若干组,关键字按组排序,为所有组建立一张索引表,每组在索引表中有一个表项包含第一条记录的关键字值和指向该记录的指针。索引可以进行多次,类似于树。

4.索引文件与索引顺序文件的区别是索引顺序文件一组记录对应一个索引表项,索引文件一个记录对应一个索引表项。5.直接文件(哈希文件)将键值通过哈希函数转换成记录的物理地址。

4.文件目录(directory)结构:

1.单级目录结构(single-level directory system)为每个文件建立一张目录表,每个文件的文件控制块(FCB)占有目录表的一个目录项。

2.两级目录结构(Two level Directory System)为每个用户建立一个文件目录,即用户文件目录(user file directory)。为所有用户文件目录建立一个高层目录主文件目录(main file directory)

3.树型目录结构(tree structured directory)/层次目录结构(Hierarchical Directory system):允许用户创建子目录。根目录的每个目录项可以对应一个文件,也可以对应一个子目录。子目录结构与根目录类似。查找一个文件根据文件的路径完成。

4.无环图目录结构(Directed Acyclic Graph):同一文件或子目录可出现在不同目录中,使用链接进行文件共享。

5.文件目录:

1.文件目录操作:创建、删除、修改、显示、搜索、创建文件、删除文件。

2.文件控制块:File Control Block FCB。每个文件都有一个与之对应的文件控制块,所有文件的文件控制块按一定方式组合在一起构成文件目录表。每个文件控制块对应目录表中的一个目录项。文件目录在文件名和文件自身提供一种映射。

3.索引节点:i结点(i-node),将fcb除文件名以外的信息放入i结点,每个文件对应一个索引节点。文件目录中每个目录项仅由文件名和i结点构成,与文件信息分离。

6.文件共享

1.符号链接(symbol link):采用无环图目录结构。系统创建一个link(lnk)类型的文件,新文件中被写入的是被链接文件的路径名。只有文件主才拥有指向其索引结点的指针,其他用户只有路径名。文件主删除文件后其他用户已找不到文件。优点是网络共享时只要文件路径名,缺点是访问共享文件时要多次读盘。

2.硬链接(hard link):无环图目录结构。文件的物理地址等属性不在目录项而在inode中,利用链接计数(count)。共享文件时,用户B的目录中新增一个目录项并设置指针指向该文件的索引结点。文件主删除文件时count-1,count为0时文件被删除。

7.文件保护

实现文件保密性、完整性、可用性。技术:用户认证、文件保护、数据备份。

8.文件存储空间管理

1.空闲表:连续分配,与内存的动态分配方式类似,为每个文件分配一块连续的存储空间。为空闲区建立空闲盘块表,包含序号、首块号、空闲块数(长度)等信息。

2.空闲链表:storing the free list on a linked list。空闲盘块链将所有空闲盘块连成一条链。空闲盘区链将空闲盘区(每个空闲区可能含多个盘块,自带盘区大小信息)连成一条链。

3.位示图:bitmap。利用一个二进制位表示存储空间一个盘块状态,某位值为0表示该盘块空闲。

4.索引链接表法(成组链接法Group link):每个索引表块第0个表项作为指向下一个索引表块的指针。链表的头指针在超级块中,包括结构和管理两方面信息。把n个空闲扇区地址保存在第一个空闲扇区内。文件分配时从链表头索引块表尾部开始分配,若读入第0表项则将该表项指针读入超级块作为索引链表表头指针,将该盘块分配给请求空闲块的文件。

9.文件分配

1.连续分配(contiguous allocation):创建文件时给文件分配一组连续的物理盘块,一组盘块定义了磁盘上一段线性空间。

2.链接分配:隐式链接(storing a file as a linked list of disk blocks).文件目录表的每个表项都含有第一盘块的指针和文件长度。每个块第一个字用于指向下一个块的指针。显式链接(linked list allocation using a table in memory),将用于链接文件的各物理地址指针显式地放在内存的一张链接表中(文件分配表 fat:file allocation table).

3.索引分配(索引链接分配inode):为每个文件分配一个索引表,把分配给该文件的所有盘块号都记录到该索引块中,索引块就是含有盘块号的数组。支持直接访问。

第七章 I/O管理

1.I/O管理概述:

1.目标:为用户提供方便、统一的界面,提高资源利用率。

2.功能:设备控制、设备分配与回收、其他功能。

3.组成:设备、控制器、通路、(应用接口)。

2.I/O控制方式:

1.程序直接控制方式(查询)。

2.中断。

3.DMA(参数准备、DMA工作(发DMA请求,并用DMA控制器控制总线)、结束中断)。传送数据块,直接将数据存入内存不经过cpu。

4.通道(独立于CPU的I/O处理机,控制设备与内存直接数据交换,有自己的指令系统)

3.I/O缓冲

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

2.单缓冲:用户进程发出I/O请求时操作系统分配一个位于内存中系统部分的缓冲区。读操作时输入数据被放到缓冲区中,缓冲区已满时进程把缓冲区数据移到用户空间。I/O请求为写操作时进程将输出数据放到缓冲区,缓冲区已满时数据输出到I/O上。只能有一个进程输入输出。

3.双缓冲:在进程对一个缓冲区传送数据时,操作系统清空另一个缓冲区。

4.循环缓冲:多个缓冲区连接起来构成循环缓冲区,一部分用于输入,另一部分用于输出。实现多个设备间、I/O设备与CPU的并行工作能力。

5.缓冲池:由输入缓冲队列、空缓冲队列、输出缓冲队列组成。还有收容输入缓冲区、收容输出缓冲区、提取输入缓冲区、提取输出缓冲区。进程输入时把空缓冲队列队首摘下一个空缓冲区收容输入,输入完成后把它挂到输入队列队尾。同理,进程输出时…收容输出,输出完成后…输出队列队尾。提取输入数据时从输入队列取得一个缓冲区作为工作缓冲区,进程提取数据,用完后挂到空缓冲区队尾。同理,提取输出时从输出队列…

4.设备驱动程序

1.模式:作为内核过程实现,与文件系统一起把设备作为特殊文件处理。或作为独立I/O进程实现。

2.功能:1.把抽象要求转为具体要求。2.检查I/O命令合法性。3.发I/O命令。4.相应中断请求。5.自动构成通道程序

3.特点:是请求I/O设备与设备控制器的通信程序。与I/O设备特性紧密相关,与I/O控制方式紧密相关,基本部分固化在ROM中。

4.处理过程:将抽象要求转化为具体要求,检查合法性,读出检查设备状态,传送必要参数,设置工作方式,启咏I/O设备。

5.设备分配

1.原则:提高利用率避免死锁、方便用户使用(设备无关性)。

2.分配方式:静态分配、动态分配。

3.安全性:安全分配方式指进程发出I/O请求后进入阻塞,直到I/O操作完成后被唤醒。不安全分配方式指发出I/O请求后又在需要时继续发出请求,当请求设备被另一进程占用时阻塞,可能产生死锁。

4.逻辑设备名到物理设备名映射:将用户程序和具体物理设备隔离。用逻辑设备表LUT将逻辑设备名映射为物理设备名。

5.数据结构:设备控制表(DCT)记录本设备状态、控制器控制表指针、设备队列队首指针、重复执行次数。控制器控制表(COCT)记录控制器状态信息和通道的连接情况。通道控制表(CHCT)记录通道状态和设备控制器连接情况。系统设备表(SDT)记录全部设备信息。

6.流程:分配设备、分配控制器、分配通道。

7.SPOOLing(Simultaneous Peripheral Operation On-Line)组成:输入设备输出设备、输入缓冲区输出缓冲区(在内存)、输入井输出井(在磁盘)。作业前先通过输入程序将输入数据存放到输入井,预输入。作业中使用输入数据时从输入井获取。输出时先将数据输出到输出井,输出进程把数据从输出井传送到输出缓冲区,最后输出到输出设备。

6.磁盘阵列(RAID):

把多个磁盘组合成一个磁盘阵列组。作为独立系统在主机外连接。磁盘阵列内有缓冲存储器。提高传输速率、提供校验功能。

7.时钟电源管理:

8.磁盘存储器的管理 常用调度算法

FCFS、SSTF、SCAN 、LOOK、C-SCAN

第八章 操作系统安全性

1.文件保护:

口令保护、加密保护、访问控制。

2.存取控制表(ACL):

为每个文件和目录增加存取控制表(访问控制列表),规定每个用户名及其权限(读、写、执行)。权能表将存取矩阵按行存放,每个主体都被赋予一张可访问的客体表与权限。

3.三个特性

保密性、完整性、可用性

4.操作系统的安全性是计算机系统安全的基础

有选择的访问控制、内存管理与对象重用、审计能力、文件和数据的加密以及进程间安全通信机制。

5.保护机制

保护域、ACL、权能表

6.安全机制:

用户认证;恶意代码及时防范、发现和清除;使用情况的监控和审计;加密技术;备份。

第九章 新型操作系统

1.嵌入式操作系统

微软嵌入式操作系统、嵌入式linux与安卓、TinyOs、VxWorks

2.多媒体操作系统

3.分布式操作系统

集群系统、MapReduce计算模型

4.虚拟化技术

第十章 操作系统设计问题

1.操作系统设计目标

抽象定义、原语操作提供、隔离性保证、硬件管理(TinyOs)

2.界面设计

界面设计的原则、界面设计的范式、系统调用界面

3.操作系统设计实现

4.性能优化

5.项目管理


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
5月前
|
存储 消息中间件 资源调度
「offer来了」进程线程有啥关系?10个知识点带你巩固操作系统基础知识
该文章总结了操作系统基础知识中的十个关键知识点,涵盖了进程与线程的概念及区别、进程间通信方式、线程同步机制、死锁现象及其预防方法、进程状态等内容,并通过具体实例帮助理解这些概念。
「offer来了」进程线程有啥关系?10个知识点带你巩固操作系统基础知识
|
9月前
|
算法 调度 UED
操作系统(7)----调度相关知识点(万字总结~)(1)
操作系统(7)----调度相关知识点(万字总结~)
218 0
|
9月前
|
算法 Unix 调度
操作系统(7)----调度相关知识点(万字总结~)(2)
操作系统(7)----调度相关知识点(万字总结~)
461 1
|
9月前
|
存储 缓存 索引
【数据结构入门精讲 | 第十四篇】散列表知识点及考研408、企业面试练习(1)
【数据结构入门精讲 | 第十四篇】散列表知识点及考研408、企业面试练习(1)
134 0
|
9月前
|
算法 计算机视觉
【数据结构入门精讲 | 第十六篇】并查集知识点及考研408、企业面试练习
【数据结构入门精讲 | 第十六篇】并查集知识点及考研408、企业面试练习
106 0
|
9月前
|
自然语言处理 数据安全/隐私保护
【数据结构入门精讲 | 第十五篇】散列表知识点及考研408、企业面试练习(2)
【数据结构入门精讲 | 第十五篇】散列表知识点及考研408、企业面试练习(2)
66 0
|
9月前
|
存储 算法 调度
【数据结构入门精讲 | 第五篇】栈知识点及考研408、企业面试练习
【数据结构入门精讲 | 第五篇】栈知识点及考研408、企业面试练习
361 0
|
9月前
|
存储 前端开发 搜索推荐
【数据结构入门精讲 | 第六篇】队列知识点及考研408、企业面试练习
【数据结构入门精讲 | 第六篇】队列知识点及考研408、企业面试练习
336 0
|
存储 数据库 数据安全/隐私保护
【王道考研操作系统】—文件的基本操作
【王道考研操作系统】—文件的基本操作
|
存储 算法 安全
29【操作系统】计算机操作系统知识点总结
操作系统是计算机系统中最重要的软件之一,是计算机硬件和应用程序之间的桥梁,是计算机用户与计算机硬件之间的接口。 操作系统涉及到操作系统的原理、结构、管理、调度等方面的知识。
335 0