操作系统原理之进程管理(第二章)

作者: 日期:2019-10-08

程序的顺序执⾏: 先进⼊内存的程序先执⾏,在⼀个程序执⾏完毕之前,不能执⾏其他程序。

 

 

 特点:顺序性、 封闭性 、可再现性

程序的并发执⾏:程序并发执⾏是指在同⼀时间间隔内运⾏多个程序。⼀个程序执⾏结束 前,可以运⾏其他程序

特点:

使用12306买票时,每个用户提交订单,余票都会减少,这体现了 程序并发执行的特点

********************************进程**********************************

程序:具有独立功能的 一组指令的集合;静态的、永久的

进程:允许并发执行的程序在某个 数据集合上的运行过程;进程是由正文段、用户数据段及进程控制块共同组成的执行环境;动态的、暂时的

进程的特征:

进程与程序的联系:

进程控制块:进程控制块是进程实体的⼀部分,是操作系统中最重要的数据结构;进程控制块中记录了操作系统所需要的、⽤于描述进程及控制进程运⾏所需的全部信息

进程的状态:

 

 

 进程的组织方式:链接⽅式、 索引⽅式 、进程队列

创建:⽤户登录、 作业调度 、提供服务、 应⽤请求 时需要创建进程

操作系统启动并正常工作后,系统中的已有进程在执行时可以通过系统调用创建新进程

创建新进程的步骤

 

阻塞:请求系统服务 、启动某种操作 、新数据尚未到达、 ⽆新⼯作可做 进入阻塞状态

唤醒

终止

进程控制的原语操作有:创建原语、阻塞原语、唤醒原语、撤销原语

操作系统管理计算机系统资源,提供⽅便的接⼝,扩充硬件的功能等

操作系统内核是计算机硬件的第⼀次扩充 与硬件关系密切

内核的功能:

什么是中断

中断是改变处理器执⾏指令顺序的⼀种事件;出现中断时,计算机停⽌现在程序的运⾏,转向对这些中断事件的处理,处 理结束后再返回到现⾏程序的间断处

为什么需要中断

引⼊中断机制后,cpu可以与其他设备并⾏⼯作,能有效提⾼cpu的利⽤率

 

***********************************时钟******************************************

 

 时钟的重要性:时钟是计算机系统的脉搏,计算机的很多活动都是由定时测量来驱动的

时钟的应用:

计算机系统中的时钟: 实时时钟rtc、 os时钟

 

 

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

计算机开机加电后,操作系统通过bios获取当前的值作为系统时间

操作系统的 时钟机制: 依靠时钟硬件和 时钟驱动程序来保存当前的⽇期和时间 、维持定时器 

时钟驱动程序的功能:

*************************系统调⽤************************

系统调⽤:系统调⽤是⼀群预先定义好的模块; 提供⼀条管道让应⽤程序能由此到核⼼程序的服务; 系统调⽤是系统程序与⽤户程序之间的接⼝

⽤户空间:⽤户进程所处的地址空间

⽤户态执⾏:cpu执⾏⽤户空间的代码时,称该进程处于⽤户态执⾏

系统空间:含有⼀切系统核⼼代码的地址空间

系统态执⾏:cpu执⾏系统核⼼代码时,称该进程处于系统态执⾏

系统调用与一般函数调用的区别如下:

同步机制:保证在多任务共享系统资源的情况下,程序执⾏能得到正确的结果 

多道程序环境下 进程之间的关系

临界资源:必须以互斥⽅式访问的共享资源称为临界资源

临界区:进程中访问临界资源的那段代码称为临界区

同步机制:保证在多任务共享系统资源的情况下,程序执⾏能得到正确的结果

同步机制应遵循的准则:

同步机制的方法:信号量机制、

******************************信号量机制****************************

信号量机制:⽤信号量的取值来表示资源的使⽤状况,以此为基础实现进程同步;信号量

信号量机制分类:

整型信号量机制:整型信号量是表示共享资源状态且只能由特殊的原⼦操作改变的整型量;

原理:定义⼀个整型变量,⽤该变量的值来标记资源的使⽤情况,初始值为1

整型信号量 =0 有资源可⽤  ;整型信号量 =0 资源忙,需等待

整型信号量机制中,用于申请资源的是 wait 原子操作

整型信号量机制中,用于释放资源的是 signal 原子操作

 

 

 

 

 

 记录型信号量机制:原理:定义⼀个记录型变量,⽤该变量的值来标记资源的使⽤情况

s.value =0时,s.value的值表示资源数量; s.value 0时,s.value的绝对值表示等待队列中 阻塞进程的数量

 

 **************************and型信号量机制***************

 基本思想:将进程在整个运行过程中所需要的资源一次性地全部分配给进程

***********************管程*******************************

管程是描述共享资源的数据结构和在数据结构上的共享资源管理程序的集合。 包括变量的定义、变量的初始化代码,以及管理共享资源的过程

管程的说明: 管程是可供程序员调⽤的软件包; 每次只有⼀个进程调⽤管程执⾏,任意时刻管程中只有⼀个活跃进程; 管程是⼀种编程语⾔的构件

进程通信机制:

线程的概念:线程是进程中可以 独立执行的子任务;线程是进程中的一个实体,是被系统独立调度和分派的基本单位

线程只拥有在运行中必需的资源,包括程序计数器、一组寄存器和 栈,但它可与同一进程的其他线程共享进程所拥有的全部资源。

在支持线程的操作系统中,线程 是被系统独立调度和分派的基本 单位,而进程 则是资源分配的基本单位。

线程分类:

 

 

线程控制块:

线程与进程的关系

 

 

管程的说明 管程是可供程序员调⽤的软件包 每次只有⼀个进程调⽤管程执⾏,任意时刻管程中只有⼀个活跃进程 管程是⼀种编程语⾔的构件

首页
电话
短信
联系