操作系统到底是个什么鬼?(三)

303 阅读6分钟

进程的特征 1.并发性

多个进程实体能在同一时间间隔同时运行

2.动态性

进程是程序的运行过程

3.独立性

进程是独立运行和资源调度的基本单位,因为有的操作系统没有线程只有进进程

4.异步性

进程的执行断断续续,何时执行,何时暂停都无法预知

5.结构特征

进程实体包括:正文段、用户数据段和进程控制块(PCB)

补充:程序和进程的联系(联系上一篇程序与进程的区别) 1.进程是程序的一次执行

2.一个程序可以对应多个进程

3.同一个进程可以顺序的执行几个程序

重点说一下进程控制块(PCB) PCD是进程实体的一部分,是操作系统中最重要的数据结构

PCD中记录了操作系统所需要的,它用于描述进程以及控制进程运行所需要的全部信息;

PCB包括:

1.进程描述符信息

用于唯一标识一个进程的信息

2.处理机状态信息

处理机状态信息又包括:

通用寄存器

指令寄存器(其实是程序计数器)

程序状态字(PSW)

用户栈指针

3,进程调度信息

进程调度信息包括:

进程状态信息

进程优先级

其他信息

4.进程控制信息

进程控制信息包括:

程序和数据的地址

进程同步

通信机制

资源清单

链接指针

进程的状态 1.执行态

单处理机系统中处于执行态的顶多一个,几个处理机就有几个

2.就绪态

可以有无数个

3.阻塞态

等待或者是封锁的状态

补充:就绪态和阻塞态的区别: 如果把执行程序看做是出门,就绪态就是已经穿好衣服化好妆等全部完成了,就差出门这一步了,而阻塞态则是还没有准备好。

三种状态之间的转换: 就绪态一旦被进程调度策略选中,就成了运行态;

时间片用完了之后又回到了就绪态;或者是优先级不够高

补充:为什么不是阻塞态呢? 因为只是暂停而已,随时都可以出发再次干活,而阻塞不一样,阻塞是并没有全部准备好。 当运行的时候发现当初准备的东西不够,需要再次回准备,这叫做等待某一事件,

等待某一事件可以是启动外围设备、申请资源或者是出现故障 进入了阻塞态;

当准备好之后再次出发,这叫做等待的事件发生了,又回到了就绪态;

等待的事件发生了可以是**外围设备工作结束、等待的资源得到满足或者是故障排除 注意:阻塞不能直接到执行,必须先排在就绪队列,同时就绪也不能到阻塞,都已经全部准备好了不可能是缺少条件的,只有运行时才会出情况或者是发现缺少某种条件

进程的组织 1.链接方式

把系统中具有相同相同状态的进程控制块PCB用其中的链接字连成一个队列,有点类似于链表

2.索引方式

系统根据所有进程的状态,建立索引表,索引表的每一个表项指向一个PCB物理块,相当于目录

3.进程队列

把具有相同状态的进程控制块用队列组织起来

进程的控制 1.创建

需要创建新进程的情况:

用户登录

作业调度

提供服务

应用请求

如何创建新进程(创建新进程的步骤):

申请空白PCB

为新进程分配资源

初始化PCB

将新进程插入就绪队列

进程的执行情况;

父进程与子进程并发执行

父进程执行,直到某个子进程或者全部子进程执行完毕

进程的的地址空间的情况:

子进程共享父进程的地址空间

子进程拥有独立的地址空间

2.阻塞

需要阻塞的情况:

请求系统服务

启动某种操作

新数据尚未到达

无新工作可做

完成阻塞的过程:

将进程的状态改为阻塞态

将进程插入相应的阻塞队列

转到进程调度程序,从就绪队列中选择进程为其分配CPU

3.唤醒

进程唤醒的过程:

将进程从阻塞队列中移除

将进程状态由阻塞改为就绪态

将进程插入就绪队列

4.终止

进程终止的情况:进程正常执行完毕

进程终止的过程:

从PCB中读取进程状态

若进程正在执行,则终止进程的执行

释放资源

将终止进程的PCB移除

操作系统的内核 操作系统内核是计算机硬件的第一次扩充,内核执行操作系统与硬件个关系密切,执行频率高的模块,常驻内存。

操作系统内核的功能:

1.支撑功能

中断处理 中断:改变处理器执行程序的顺序的一种事件

出现中断时,计算机停止当前程序的运行,转向对这些中断事件的处理,处理结束后再返回到钢材执行的程序的间断处

为什么需要中断:

引入中断机制之后,CPU可以与其他设备并行工作,能有效的提高CPU得利用率,改善系统的性能,支持系统的的异步操作

中断的分类;

同步中断 也叫做内部中断或异常

异步中断 也叫做外部中断,又分为:外部可屏蔽中断和外部不可屏蔽中断

引起中断的原因:

1.人为设置中断

2.程序性事故

3.硬件故障

4.I/O设备

5.外部事件

中断的响应:

1.响应中断的条件

2.响应中断的时机

中断的处理

响应中断

转中断处理程序

执行中断程序

返回

时钟管理

时钟就是计算机的脉搏,计算机的很多活动都是由定时测量来驱动的,以下是大部分计算机的时钟源:

实时时钟 也叫做PTC时钟或者是CMOS,存储的是当前的北京时间,只要有电就干活,开机获取的就是这个时间

OS时钟 产生于PC主板上的定时/计时芯片,在开机时有效,由操作系统控制

原语操作 操作系统的时钟机制,包括:

1.时钟硬件

可编程间隔定时器PIT:

1.晶振

2.计数器

3.保持寄存器

2.时钟驱动程序

1.维护日期和时间,维持定时器

2.递减当前进程在一个时间片内的剩余执行时间,防止运行超时

3.对CPU的使用情况记账

4.递减报警计数器

2.资源管理功能

进程管理

存储管理

设备管理