操作系统知识点整理

操作系统知识点整理
今天回顾之前本科时候期末考试整理的知识点,并整理在此:
⼀.概述
1.操作系统的定义:
管理系统资源、控制程序执⾏、改善⼈机界⾯、提供各种服务,并合理组织计算及⼯作流程的和为⽤户⽅便⽽有效地使⽤计算机提供良好运⾏环境的最基本的系统软件。(为应⽤程序的运⾏提供良好的环境)
2.操作系统两⼤⾓⾊,⼤致的作⽤:
(1).管理者,管理计算机各种资源;                    (2)服务者,为应⽤程序运⾏提供环境。
3.现代计算机系统软件组成结构:
系统软件(操作系统)、⽀撑软件(编译程序、汇编程序、数据库)、应⽤软件
4.怎么理解操作系统是⼀台“虚拟计算机” *:
⽤户输⼊的操作命令会都会涉及底层硬件操作,但⽤户⽤到的都是操作系统提供的接⼝,操作系统就是⼀台以这些命令作为机器语⾔的虚拟计算机。
5.操作系统的管理资源的三种⽅法(正确区分)
(1)资源复⽤:解决物理资源数量不⾜的问题。两种基本⽅法:空分复⽤共享(内存、磁盘)和时分复⽤共享(CPU)
(2)资源虚化:解决物理资源数量不⾜,提⾼操作系统⽤户服务的能⼒和⽔平。(虚拟打印机)
(3)资源抽象:处理系统的复杂性,重点解决资源的易⽤性。(CPU->进程,磁盘->⽂件,显⽰器->窗⼝,物理计算机->虚拟机 )
6.三种基础抽象⽅法:进程抽象——对CPU;虚存抽象——对内存;⽂件抽象——对磁盘    计算机系统的物理资源可分为计算类和存储及接⼝类。
7.操作系统⼏⼤主要功能:处理器管理,存储管理,设备管理,⽂件管理,⽹络与通信管理,⽤户接⼝
8.三种基本的操作系统类型,他们各⾃⽤于什么地⽅:
批处理操作系统,⽤于计算量很⼤,⼈为⼲预少的地⽅;
分时操作系统,以时间⽚形式公平把时间分配给每个⽤户;
实时操作系统,实时控制和实时信息处理
9.系统调⽤的概念:给编程使⽤的接⼝。作⽤,(1)系统调⽤是内核对外的唯⼀接⼝;(2)系统调⽤保证系统的安全性
10.为何要引⼊POSIX *:为了解决接⼝复杂、使⽤困难和应⽤程序可移植性受限的问题
11.API、库函数与系统调⽤:API、库函数封装0到若⼲个系统调⽤,是可供应⽤程序直接使⽤的接⼝
⼆. 处理器管理
1. 处理器管理的内容:负责管理、调度和分配计算机系统的处理器,处理器分配和运⾏是以进程为单位,所以处理器管理也可视为对进程的管理。
2.处理器管理在操作系统中的核⼼地位:处理区管理是操作系统最核⼼的部分,⽆论是应⽤程序,还是系统程序,最终都要在处理器上执⾏以实现起功能。(理解其定义)
3.特权指令与⾮特权指令:特权指令:仅供内核使⽤的指令;⾮特权指令:可以被应⽤程序和内核使⽤的指令;⽤户态只可以使⽤⾮特权指令,核⼼态可使⽤特权和⾮特权指令
4.处理器状态:核⼼态、⽤户态,*⽤户态通过中断和异常转为核⼼态。
5.PSW,⾥⾯装的什么:PSW⽤来指⽰处理器状态,控制指令的执⾏顺序,并且保留和指⽰与运⾏程序有关的各种信息,主要作⽤是实现程序状态的保护和恢复。
6.中断的概念:指程序在运⾏过程中,遇到继续处理的事件,暂时停⽌在cpu上的运⾏,转⽽执⾏相应事件的处理程序,处理完后再返回断点或调度其他程序执⾏。
1. 中断的分类和产⽣:软中断:外中断:处理器外部产⽣的中断;内中断:处理器内部产⽣的中断;硬中断:信号:内核或进程产⽣的
中断;软件中断:硬中断服务程序对内核的中断
2. 为何外部中断有些可屏蔽,⽽异常都不可屏蔽 :中断与CPU是异步的,不是当前进程所需要的,中断具有不同的优先级,处理⾼级中
断时,往往会屏蔽低级中断。⽽异常与cpu同步,是当前进程所需要的,必须处理。*
3. 异常的⼏种处理⽅式(参照Linux中的四种分类):故障,陷阱,终⽌,编程异常
故障发⽣后,处理完毕后将原来引发故障的指令再执⾏⼀遍;陷阱与编程异常发⽣后,处理完毕之后,执⾏原指令的下⼀条指令;终⽌则不再返回原来的指令。
贝尔格10.信号机制是模仿了外部中断的处理⽅式 *:信号源性质相同(1)都是处理器外部产⽣的中断;(2)都是两条指令中间产⽣异常。
11.中断处理的⼀般过程:程序正常运⾏,接收到中断信号,暂停运⾏的程序,保护好现场,转⽽执⾏相应的中断处理程序,完成后,恢复现场,继续执⾏原程序。
12.时钟中断及其作⽤(主要的两⼤作⽤):
时钟是内核进⾏进程调度的重要⼯具。作⽤:(1)确保操作系统在必要时获得控制权;(2)获取时间
13.进程的概念,进程包括哪些东西:进程:⼀个正在执⾏的程序,包括:代码,数据,管理结构
14.进程与程序的区别与联系,或者说,为什么要引⼊进程
程序:存放在磁盘上的⽂件 进程:正在执⾏的程序。
为什么引⼊进程:在多道程序设计之下,原来的“程序”概念已经不能⽤来描述这时候的情况了,程序只是⼀个静态的概念,⽽进程是⼀个动态的概念
15.进程的⼏种状态,它们之间的转换(尤其注意,不存在从阻塞态到运⾏态的转换)
运⾏态,就绪态,等待态(为便于管理,加⼊新建态和终⽌态,挂起态)
16.进程的三种上下⽂:⽤户级上下⽂:经常⾃⼰的代码数据等、系统级上下⽂:内核所使⽤的内存管理信息等、寄存器上下⽂:寄存器当时的信息,⽤于保护和恢复现场
17.进程控制块的概念,它的作⽤:进程存在的唯⼀标识,内核⽤来记录和刻画进程状态的数据结构,管理和调度进程的依据。
18.进程切换的过程 *:略
19.线程的概念:线程是进程中能够并发执⾏的实体,是进程的组成部分,也是处理器调度和分派的基本单位
20.为什么要引⼊线程:为了减少程序并发执⾏时所付出的时空开销,使得并发⼒度更细、并发性更好。
意象艺术
21.线程与进程的区别和联系:进程有⾃⼰的独⽴空间,线程没有⾃⼰完全独⽴的空间
22.为何线程没有挂起态:线程不是资源的拥有单位,挂起状态对于线程是没有意义的
23.什么叫处理器调度:进⾏涉及处理器调度和资源分配的⼯作
24.三种调度层次,哪种是必须的:
⾼级调度(作业调度)      中级调度(进程调度)      低级调度(线程调度)必须的
25.衡量⼀个调度算法好坏的标准:① 资源利⽤率② 吞吐量③ 公平性④ 响应时间⑤ 周转时间
26.会计算调度的“平均周转时间”:例:进程p1、p2、p3运⾏时间为2、4、7,平均周转时间为:(2+6+13)/3=7
27.⼏种典型的调度算法:先来先服务、短作业优先(时间短的先运⾏)、时间⽚轮转(每个按序运⾏时间⽚上的时间见P155)、优先级调度、调度算法(例:1秒钟随机抽取50次,每次分配20ms)
1.并⾏情况下会出现的问题、原因 *:顺序程序设计效率不⾼
2.同步的⽬的:1 使得并⾏情况下,结果依然保持确定性 2 限制越少越好
3.Peterson算法:⼀种纯软件算法,通过两个变量来实现互斥访问临界区。是免锁编程的基本算法之⼀,这个算法设计得很巧妙,核⼼就是三个标志位是怎样控制两个⽅法对临界区的访问的。
4.信号量的定义,取值含义,PV操作:
信号量:表⽰物理资源的实体,是⼀个与队列有关的整型变量。
取值:⽤⼀个结构型数据结构表⽰,有两个分量(1)信号量的值 (2)信号量队列的指针 PV操作:p操作申请资源,v操作释放资源
5.PV操作实现⽣产者、消费者问题
伪代码:
int B;
semaphore empty;        //可⽤的空缓存区
semaphore full;          //缓冲区内可⽤的产品数
empty=1;                //缓冲区内允许放⼊⼀件产品
full=0;                  //缓冲区内没⽤产品
cobegin
process producer(){        process comsumer(){
while (true){                      while (true){
produce();                              P(full);
P(empty);                                take() from B;
append() to B;                        V(empty);
V(full);                                      consum();
}                                            }
}                                        }
coend
睡眠、唤醒机制实现⽣产者、消费者问题
如果⽣产者发现缓冲区满了,则唤醒消费者,⾃⼰睡眠;如果消费者发现缓冲区空了,则唤醒⽣产者,⾃⼰睡眠
⼏种进程间通信机制(1)信号通信机制(2)管道通信机制(3)共享主存通信机制(4)信息传递机制(5)信号量机制
死锁的概念: 如果⼀个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,⽽⽆限期陷⼊僵持的局⾯称为死锁。
死锁产⽣的四个必要条件,破坏死锁⽅法的原则
互斥条件 (2)占有和等待 (3)不剥夺条件 (4)循环等待
破坏死锁的原则:破坏四个必要条件中任⼀个
银⾏家算法的思想:系统将进程放⼊集合,安全状态下,系统进⾏试探性⾮配,系统将可⽤资源数和进程需求资源数进⾏⽐较,出剩余资源能满⾜的最⼤需求量的进程。将进程从集合删除,归还其占有的所有资源。反复执⾏上述步骤,若最后进程集合为空,则可以执⾏分配;否则,不进⾏分配。
1. 编译、链接和加载都⼲了些什么 *:
编译:将源程序翻译为机器指令,⽣成⽬标⽂件,这些⽬标⽂件并不能直接执⾏。
链接:将多个⽬标⽂件模块装配成⼀个完整的程序,它解析符号表,把对符合的引⽤转换成具体的数值地址。
加载:执⾏程序之前,当获得了⼀块实际的内存之后,加载器根据该内存的⾸地址,再次修改和调整可执⾏⽂件中的地址,完成地址的最后绑定。
2.现代计算机系统的存储器层次:
现代的存储器,已经不仅仅指内存了,它包括了寄存器,缓存,内存,磁盘这样⼀种层次结构
特点:(从下往上)访问速度越来越快,容量越来越少,价格越来越贵
⾦字塔型(从下往上)磁带,磁盘,主存储器,⾼速缓存,寄存器
3.⼏种不太主流的内存管理⽅法:固定分区、可变分区、伙伴系统
(1)固定分区:主存空间被划分成固定数⽬、⼤⼩不等的分区,每个分区可执⾏⼀个作业,
各作业并发执⾏。
执⾏⽅法:根据当天的作业情况,进⾏分区;建⽴“主存分配表”;根据待运⾏作业的内存需求,选择合适的分区,载⼊运⾏。
(2)可变分区:根据作业的⼤⼩选择分区,但分区的划分是根据作业和空余内存来动态分配的。
执⾏⽅法:每当来⼀个新进程,从可⽤内存中划分出⼀块连续的区域,供进程使⽤,没有合
适的区域,则等待别的进程释放内存。
(3)伙伴系统:任何尺⼨为2^i的空闲块,都可以分解成两个2^(i-1)的块,反过来也可以把他们合并起来,这两个块,成为伙伴。
执⾏⽅法:建⽴⼀个空闲数组free[i],i=0,…N,每个元素表⽰⼀个链表,该链表中的元素
是⼤⼩为2^i的分配单元。
4.伙伴系统算法 *
5.分页系统牵涉到哪些东西(实际操作)
(1)页⾯ (2)页表 (3)页表基址寄存器 (4)MMU
6.⼀级页表、⼆级页表中虚拟地址到物理地址的映射(实际操作)
7.虚拟空间的⼤⼩(实际操作)
8.页表项⾥主要记录了什么
记录了物理页⾯的内存起始地址,以及其他的关于该物理页⾯的信息
9.在Intel处理器下,虚拟地址的构成(⼀级页表、⼆级页表)(实际操作)
10.为何要引⼊⼆级甚⾄多级页表,它的原理是什么 *
11.段式管理的概念:段式管理:⼀个进程分成⼏个部分,每⼀个部分占据⼀个区(逻辑) 段式管理最⼤的⼀个特点:每个段都是⼀个独⽴的虚拟地址空间。(这⾥的“段”,指的是逻辑段,它们也要通过某种映射机制,把逻辑段,映射为物理内存的专门区域)
12.段式管理能解决页式管理哪两个问题 *(1)共享内存(2)进程所需内存超过虚拟内存
13.段式管理的虚拟空间⼤⼩(实际操作)
压电陶瓷驱动电源
长度:页式(固定) 段式(可变)
虚拟空间⼤⼩:页式(透明,相对固定) 段式(不透明,不定)
(每⼀个段长都根据需要,各有长短,但实际上,每⼀个段最长可以有最⼤虚拟空间地址 因此采⽤段式管理,每个进程的虚拟地址空间,可以远⼤于4G(以32位机器为例))
14.段式管理下,虚拟地址的组成(实际操作)
(段寄存器、段选择符
在实模式下,CS,DS,ES,SS⽤来存放⼀个段的基地址
在保护模式下,它们存放了新的东西—段选择符,⾥⾯存放了段表内偏移
因为怕不够,Intel⼜增加了两个段寄存器FS,GS
段表、段表项
它们的关系跟页表、页表项的关系⼀样,段表⾥⾯放了很多段表项,Intel⾥叫“段描述符”
段描述符⾥存放了,该逻辑段,会被映射到的物理段的基地址
连体人段选择符⾥存放了应该访问第⼏个段描述符,即上⾯图中的“段号”
段选择符结构(段表内偏移)
段描述符结构(段表项)
段表基址寄存器
同CR3⼀样,每⼀个进程,都有⼀个段表,他保存的是该进程的段表的基地址)
15.根据给定的虚拟地址,算出物理地址(简单的⽅式)
16.虚拟存储
虚拟存储器:在具有层次结构存储器的计算机系统中,⾃动实现部分装⼊和部分替换功能,能从逻辑上为⽤户提供⼀个⽐物理主存容量⼤得多的、可寻址的“主存储器”。实际上,虚拟存储器对⽤户隐蔽可⽤物理存储器的容量和操作细节,虚拟存储器的容量与物理主存⼤⼩⽆关,⽽受限于计算机的地址结构和可⽤的磁盘容量,如Intel x86的地址线是32位,则程序可寻址范围是4GB,Windows 和Linux都为应⽤进程提供⼀个4GB的逻辑主存。
17.局部性的概念,有什么⽤ *
局部性:某存储单元被引⽤之后,程序倾向于过短时间再次引⽤该单元(时间局部性),或者倾向于过⼀段时间引⽤该单元附近的存储单元(空间局部性)
18.在现代存储器层次中,当处理器发出⼀个内存地址调⽤时,会如何来寻 *
19.缺页中断率的计算公式  缺页率f=F/A      (F为不成功访问次数,S为运⾏中成功访问的次数,A=S+F)
五.⽂件管理
1.⽂件系统是对磁盘使⽤的抽象
(1)⽂件系统的功能:让⼈可以⽅便地存取数据(2)特点:①可以看做是对使⽤磁盘的抽象,使⼈们可以不⽤去管磁盘具体是如何来存储,读取数据②屏蔽了底层的磁盘使⽤上⾯的繁琐细节,⽽⽤⼀种简单的逻辑结构呈现给⽤户
1. ⽂件系统的设计⽬标:让⽤户可以仅凭⽂件名来操作⽂件
2. ⽂件系统包括两⼤基本要素:⽂件、⽬录
⽂件:保存的信息的组织形式
边界发现蒙古野驴⽬录:保存⽂件的有关信息
⽂件系统就是对⽂件和⽬录的组织和操作
壬辰战争2.⽂件的概念,⽂件名、⽂件类型、⽂件属性等

本文发布于:2024-09-22 23:25:01,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/41103.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:进程   程序   资源   管理
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议