操作系统:进程,中断,处理器调度

您所在的位置:网站首页 阻塞状态又叫 操作系统:进程,中断,处理器调度

操作系统:进程,中断,处理器调度

2023-06-18 22:04| 来源: 网络整理| 查看: 265

0.操作系统概论

1.操作系统四大特性:并发性(所有程序在宏观上并发执行),共享性(操作系统与多个用户共享系统中所有资源),异步性(操作系统运行轨迹是随机的),虚拟性(虚拟CPU,虚拟存储,虚拟设备)。

2.硬件环境*

(1)绝对时钟与间隔时钟

间隔时钟每隔一段时间就会发生时钟中断。

利用间隔时钟可以实现逻辑时钟:如设置50ms的逻辑时钟。

(2)堆与栈*

堆:属于用户空间,保存动态变量。例如:new

用户栈:属于用户空间,功能:1.用户函数调用时局部变量 2.传送调用操作系统时传给操作系统的参数。

系统栈:又叫核心栈,属于系统空间,功能:1.操作系统程序时的局部变量 2.保存中断嵌套时的中断现场。3.保存目态运行产生中断时的现场。

(3)寄存器

PSW(与微机系统的标志寄存器联系):程序状态字,表示当前程序的运行环境,有一位可表示当前CPU的运行状态(管态还是目态)。

(4)特权指令和非特权指令

(5)处理器状态

1.进程

1.什么是进程?进程是程序的一次执行。

2.进程的组成:PCB,程序(代码加数据)。

3.进程控制块:PCB,标志进程存在的唯一标志。

4.引起进程创建的事件*:用户登录,作业调度,提供服务,应用请求。

5.引起进程撤销的事件:正常结束,异常结束,外界干预。

注意:

1.进程没有运行进程则一定没有就绪进程。

2.系统中没有就绪和运行进程,但可以有阻塞进程(死锁)。

3.进程的封闭性是指进程执行的结果只取决于自身,不受外界影响。

4.全局变量在正文段,局部变量在数据堆栈段。

5.进程自身决定由运行态->就绪态(主动),而由阻塞态->就绪态需要协助进程帮助。(被动)

6.

线程:

1.用户级线程,当线程执行一个系统调用时,进程内所有线程阻塞。

2.内核级线程,线程调度和管理由内核实现。

进程与线程区别:

1.进程是分配单位,线程是执行单位。

2.引入线程后,进程只作为除CPU外的系统资源的分配单元。

3.调度:线程是资源调度的基本单位。

4.并发性:同一进程之间的线程可并发执行,不同进程之间的线程也可并发执行。线程切换不一定有进程切换。

5.拥有资源:进程是系统中拥有资源的独立单位,而线程不拥有系统资源。同一进程内的线程具有相同的地址空间。

6.独立性:同一进程的线程共享进程地址空间和资源。

7.系统开销:线程切换系统开销小,并且同一进程内的线程进行同步与通信甚至无需操作系统干预。

父进程与子进程区别:

1.父进程与子进程可并发执行

2.父进程与子进程拥有不同的进程控制块

3.父进程与子进程不能共享虚拟地址空间。

4.fork()系统调用,对于父进程返回子进程PID,对于子进程,若创建成功返回0,失败返回-1.

进程间通信:共享内存,消息传递,管道。

2.中断处理全过程(包含中断续元)

中断状态转换图 操作状态转换具体动作创建进程无->就绪初始化PCB(地址映射寄存器,PSW为目态)首次调度选中就绪->核心运行将下降进程现场压入PCB,使用上升进程PCB恢复现场首次返回目态核心运行->目态运行置PSW,PC目态发生中断(等待某事件)目态运行->核心运行将目态现场压入系统栈等待某事件核心运行->等待态 将核心运行现场保存到PCB中,PCB进入等待队列。事件发生等待态->就绪态PCB进入就绪队列再次调度选中就绪态->核心运行使用PCB恢复现场非嵌套返回核心运行->目态运行由系统栈恢复现场,置PSW,PC.目态发生中断目态运行->核心运行将目态现场压入系统栈中断嵌套核心运行->核心运行将中断现场压入系统栈中断嵌套返回核心运行->核心运行

由系统栈恢复现场

非中断嵌套返回核心运行->目态运行由系统栈恢复现场进程结束核心运行->终止回收内存资源,撤销PCB

 

中断续元,用户自行处理中断过程:

1.目态运行发生溢出中断

2.硬件PSW,PC压入系统栈

3.与中断源对应的中断向量送入PSW,PC

4.进行中断处理程序

5.访问用户的中断续元表,假定是

6.系统栈中的信息转移至用户栈

7.中断续元运行环境及入口送入PSW,PC

8.控制权转交给中断续元

9.执行,遇到ret指令后由用户栈弹出现场信息送入PSW,PC

10.中断返回

3.处理器调度(调度谁,什么时候调度,具体怎么调度)

一些概念:

周转时间=完成时间-就绪时间。

响应时间=等待时

1.先到先服务算法

2.短作业优先算法(平均周转时间最短)

3.最短剩余作业优先算法(可剥夺)

4.最高响应比优先算法:最高响应比=1+等待时间/运行时间

5.最高优先数优先算法

6.循环轮转算法(分时系统)

7.分类排队算法

8.反馈队列算法

4.实时调度

开始截止期:最迟开始时间

完成截止期:最晚完成时间

发生周期:每隔多长时间发生一次,发生周期性实时任务的间隔时间

Ci=运行时间

Ti=发生周期

EDF:可调度的必要条件\sum_{1}^{n}Ci/Ti=1,可剥夺,以完成截止期作为选择标准。

RMS:可调度条件:\sum_{1}^{n}Ci/Ti=n(2^{1/n}-1),不可剥夺,以发生周期作为标志,选择发生周期最小的。

进程切换时:为何PSW,PC要用一条指令恢复?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3