操作系统概念(复习资料)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1概念
单道、多道程序的特点与区别: 单道:一次只能运行一个程序多道:一次可以运行多个程序。
对称和非对称多处理器: 非对称: 每个处理器完成各自的任务, 主从处理器(主从关系)2.操作系统构造
对称: 每个处理器完成所有的任务
集群和多处理器区别: 前者有多个独立的计算机系统后者只有一个
中断和陷阱的主要区别: 陷阱是由程序造成的,并且与程序同步。如果程序一而再的被运行,
陷阱将总在指令流中相同位置的精确发生。而中断则是由外部事件和其时钟造成的,不具有重复性
用户态与核心态: 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器处于特权级最高的(0级)内核代码
中执行。当进程处于内核态时,执行的内核代码会使用当前进程的内核栈。每个进程都有自己的内核栈。当进程在执行用户自己的代码时,则称其处于用户运行态(用户态)。即
此时处理器在特权级最低的(3级)用户代码中运行。当正在执行用户程序而突然被中断程序中断时,此时用户程序也可以象征性地称为处于进程的内核态。因为中断处理程序将使用当前进程的内核栈。这与处于内核态的进程的状态有些类似
2.操作系统结构
操作系统主要功能: 文件管理,处理器管理,设备管理,用户接口,存储器管理
参数传递的几种方式: 计算机向用户提问(需系统调用从键盘读入参数), 通过窗口来获得参数
设备管理与文件管理
层次化与模块化的内存设计及优缺点: 具有很明显的层次, 每层相互独立, 层与层通过某些接口连接, 易于实现, 但运行时间太慢
3.进程
什么是进程
PCB包括哪些内容
进程切换要执行那些操作(context-switching)
进程通讯
权限设置(进程通讯中,共享内存,管道的权限)
PCB: 进程状态,进程编号,程序计数器,CPU存储器,CPU调度信息,内存管理信息,记账信息,I/O状态信息
4.线程
线程需要条件: 应用程序要执行多个相似的任务
线程组成: CPU使用的基本单元, 线程ID,程序计数器,寄存器集合,栈
线程间共享: 代码段,数据段,其它系统资源(文件), 堆
线程私有: 栈,寄存器
****多用户进程-> 核心线程-> CPU数目直接的关系
5.CPU调度
为何需要Scheduling (CPU):提高CPU的利用率
Scheduling 设计约束: 抢占调度,进程间的切换带来的时间花费
FCFS(First Come First Served):
SJF(Short Job First):
PS(Priority Scheduling):
RR(Round Robin):
时间片长度:长度太短,进程间频繁地进行上下文切换,运行时间大大增加。
长度太长就变成了FCFS算法
6.进程同步
解决临界区问题三条件:互斥,前进,有限等待
忙等待:当一个进程位于临界区内时,其它试图进入临界区的进程都必须进入代码中的连续循环。
忙等待后果:浪费了CPU时钟.
Semaphore 信号量取值范围(单类型的资源): 1-n ~~~ 1
能否用disable interrupt方式实现访问互斥: 不能
7.死锁
死锁的必要条件: 互斥,占有并等待,资源不能被抢夺,循环等待
死锁预防,死锁避免和死锁检测
Banker’s Algorithm
8.内存管理
地址绑定
编译时:首地址变了,就要重新编译一下。
载入时:可重定位代码
运行时:
连续内存分配、分页、分段
内存碎片: 内部碎片和外部碎片
不同内存分配形式会产生何种碎片? (外, 内, 内)
页地址空间(单层页表)
页表映射方法,共享页该如何操作?(相同的页表号码): 代码页共享数据页不共享段空间的映射
段空间的地址表示,与实际内存地址的映射
9.虚拟内存
虚拟内存引入的目的:使程序员不受物理内存的限制
优点: 方便共享
基本的页面替换算法:FIFO,Optimal 和LRU(least recent used)
页面分配方法:全局和本地页面分配(替换)
10.文件系统接口
文件引入
顺序读取,直接读取
单层结构目录:便于理解和实现
双层结构目录:解决了文件名的冲突
树状结构目录:能访问其它用户的文件
无环结构目录:可以共享文件和目录(树形结构不可行)
文件权限: 100可读010可写001可执行
11.文件系统实现
文件块的分配方式:
连续分配方式
链接分配方式
索引分配方式
问题,给定一个文件的偏移量,如何定位到具体的逻辑存储块。。。
性能:如何解决内存和二级存储器之间速度不一致问题:增加缓存
常考大题:
CPU调度3个算法算平均时间
死锁的4个必要条件
死锁Banker’s Algorithm算法
段空间的地址表示,与实际内存地址的映射
内存分配: 连续内存分配, 分页, 分段
基本的页面替换算法
推荐资料
/link?url=mFX9UF4zdTpR03XHlP7AYyviMNW8I32vx-PD1S980Cd8eK d8Z26LWbV3ZQarvy1QjKGok7sim71aO44FhxlbSmdqbT72u2fVtYfd16PB_E_