操作系统复习(四)[王道]

第一章.
1.操作系统特征
(1)并发

(2)共享:资源分为临界/非临界资源
并发与共享互为条件,有并发才能谈共享,做好了共享的管理才能实现并发

(3)虚拟:把一个物理上的实体变为若干逻辑上的对应物
例如:虚拟处理器技术通过多道程序设计技术,采用让多道程序并发执行的方法,来分时使用一个处理器。让每个用户感觉有一个处理器专门为它服务。

(4)异步:多道程序环境允许多个程序并发执行,每个进程并不是一贯到底,以不可预知的速度向前推进。

2.中断
(1)外中断:来自CPU执行指令以外的事件的发生,如设备发出的I/O结束请求。与当前处理机运行的程序无关。
(2)内中断(异常):来自CPU执行指令内部的事件,例如地址越界,算术溢出等。
内中断不能被屏蔽

3.中断处理过程
(1)关中断
(2)保存断点:保存程序计数器(PC)
(3)得到中断服务程序入口地址
(4)保存现场和屏蔽字:保存某些通用寄存器的内容
(5)开中断
(6)执行中断服务程序
(7)关中断
(8)恢复现场和屏蔽字
(9)开中断,中断返回

4.使用系统调用时,从用户态转为核心态
中断或异常时,用户态转为核心态

大内核:将OS主要功能作为一个整体运行在核心态,各管理模块共享信息,具有性能优势。

微内核:内核中只保留最基本的功能(如进程管理),其他不需要在核心态执行的功能转移到用户态执行。这些移出的功能根据分层原则分为若干服务程序。微内核结构有效地分离了内核与服务,服务与服务使得它们之间的接口更清晰,维护代价降低。
微内核结构需要频繁的在核心态和用户态切换,执行开销较大。

第二章.进程管理
1.为了实现程序并发执行,引入进程控制块(PCB)

为什么要引入进程?
答:多道程序环境下,各程序之间需要共享系统资源,导致各个程序在执行过程中相互制约,程序执行过程具有间断性的特征。这些特征是程序执行过程中发生的,具有动态性的特点。而传统程序本身是指令的集合,是静态的。因此需要引入具有动态性的进程来描述和支持程序的并发执行。

2.进程映像(进程实体)包含:程序段,数据段,PCB
PCB是进程存在的唯一标志

3.引入进程后,进程是进程实体的运行过程,是系统进行资源调度和分配的独立单位。
进程是动态的,进程映像是静态的

进程的定义
答:进程是程序关于某个数据集合的一次运行活动。它可以拥有和申请系统资源,是一个动态的概念。

4.进程状态
(1)运行态
(2)就绪态:进程获得了除CPU外的一切所需资源,只等待CPU即可运行。
(3)阻塞态:等待某种资源,即使CPU空闲也不能运行
(4)创建态:进程正在被创建
(5)结束态

5.创建进程
(1)为新进程分配一个唯一的进程标识号,申请空白PCB
(2)为进程分配资源,分配必要的内存空间。若资源不足,进入阻塞态
(3)初始化PCB,包括初始化标志信息,设置进程优先级等
(4)若进程就绪队列有空余位置,则加入队列,等待被调度运行

6.阻塞是主动的(缺少资源时,主动申请阻塞,有运行态转为阻塞态)
唤醒是被动的(当资源到达时,由相关进程进行唤醒)

7.进程通信方式
(1)共享存储:
低级方式的共享是基于数据结构的共享,高级方式(指传输大量数据)的共享是基于存储区的共享

(2)消息传递
(3)管道通信
管道类似于共享存储的升级版本。采用共享存储时,若一个进程在进行写操作,其它进程无法访问存储区。而采用管道时,进程读数据时不会因为其他进程在写数据而阻塞。

8.线程
(1)引入线程的目的:减小程序在并发执行时的时空开销,提高OS的并发性能。
由于线程切换时,可能引起进程切换,也可能不引起,因此切换开销降低。所以可以让更多的线程参与并发,不会影响响应时间等问题。
线程是“轻量级进程”

(2)同一进程的所有线程之间共享进程所拥有的全部资源。{不同进程间的资源相互独立}
同一进程中的多个线程可并发执行。

(3)引入线程后,
进程是拥有资源(CPU除外)的基本单位。
线程则成为CPU的分配单元。
线程不拥有系统资源(只有必不可少的一些资源),但线程可访问其对应进程的系统资源。由于线程不拥有资源,因此线程切换的开销很小。

(4)线程实现方式:
用户级线程:线程管理工作由用户程序完成
内核级线程:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值