一、进程
进程通常由程序、数据集合、进程控制块PCB组成。
PCB是进程的唯一标识,操作系统就是根据进程PCB来感知进程的存在的,并依此对进程进行管理和控制。
PCB有三种组织方式
线性方式 | 把PCB组织在一张线性表中,每次查找需要扫描全表。 |
连接方式 | 吧具备同一状态的PCB,用其中的链接字链接成一个队列,PCB存储在一个连续的区域。 |
索引方式 | 把同一状态的的进程归入一个索引表,多个状态对应不同的索引表。 |
二、前驱图
前驱图是一个有向无循环图,由节点和有向边组成,节点代表各个节点的操作,而节点间的有向边表示两个程序段操作之间的前趋关系。
用这种图可以描述多个程序或进程之间的执行顺序。
【程序的顺序执行】
一个应用程序由若干程序段组成,每一程序段完成特定的功能,他们在执行时,都要按照某种先后次序执行,仅当前一程序段执行完后,再运行后一程序段,这种执行过程被称为程序的顺序执行。
程序顺序执行时,具有以下三个特征:
顺序性:处理机的操作严格按程序规定顺序执行
封闭性:程序一旦开始执行,其计算结果不受外界因素影响
可再现性:程序执行只要初始条件一样,不论如何停顿,重复执行多少次结果都一样
【程序的并发执行】
程序顺序执行时,虽然减少了开发周期,但系统资源的利用率却很低,为此,在系统中引入了多道程序技术,使得程序或程序段间能并发执行。
事实上,并非所有的程序都能并非执行,只有不存在前趋关系的程序之间才可能并发执行。
程序并发执行时,具有以下三个特征:
间断性:在执行过程中,由于要共享资源与相互合作,使得这些并发的程序间形成了相互制约的关系,从而导致了 “ 执行 — 暂停 — 执行 ” 这种间断性的活动规律。
失去封闭性:由于共享资源,资源状态由多道程序改变,程序运行失去了封闭性,即程序运行受其他程序的影响。
结果不可再现性:结果的不确定,使得程序执行将没有任何意义
三、PV操作
1)P操作
a. 将信号量S的值减去1,即S = S -1
b. 如果S>=0 ,则程序继续执行;否则该进程置为等待状态
2)V操作
a. 将信号量S的值加上1,即S = S +1
b. 如果S>0 ,则进程继续执行;否则说明有等待队列的等待进程,需要唤醒等待;
四、 存储管理
有分区存储、分段存储、分页存储、段页式存储以及虚拟存储;
这部分要知道计算方案;参考:https://blog.csdn.net/u010293698/article/details/48913295