1、进程
进程是具有独立功能的程序在一个数据集合上的
动态性:进程的一次执行,生命周期有创建、活动、暂停、终止等过程。
并发性:多个进程实体同存于内存中,能在同一时间段内运行。
独立性:进程实体能独立运行,独立获得自由,独立接收调度。
异步性:进程按照各自独立的,不可预知的速度执行,异步性会导致执行结果的不可再现性。
结构性:程序段、数据集合、PCB(描述进程运行状态,是进程存在的唯一标志)。
进程映像是静态的,而进程是动态的。
2、线程
线程是轻量级进程,是任务调度的最小单位,一个进程可以有一个或多个线程,各线程之间共享进程的内存空间,线程调度时上下文切换比进程上下文切换快很多。
3、死锁
四个必要条件:互斥、持有并保持、循环等待、不可抢占。
死锁的预防:破除四个必要条件,破除环路等待---资源有序访问,破除不可抢占---资源可抢占,破除持有并保持。
死锁的避免:资源请求图算法(避免出现环),银行家算法(安全性算法--->资源请求算法)
4、进程调度算法
先来先服务、短作业优先、动态/静态优先级、高响应比优先、时间片轮转法。
5、内存管理
分区:外碎片,无法实现虚拟内存。
虚拟内存:使得每个进程认为他拥有连续可用的内存空间,实际上是通常被划分物理内存碎片,还有些部分在外存上,在需要时用到交换技术。
分页:每个进程拥有它连续可用的内存空间,进程的逻辑空间划分为页,物理内存空间划分为页大小的页框,内存中存储页表,
逻辑地址=进程内页号 + 页内地址
进程内页号===》页表(快表)转换===》物理内存页框号
线性地址===》物理地址
静态页式:把进程的整个内存空间都读入内存。
请求页式:只调入正在运行的页,需要新的页时,通过换页技术(LRU,FIFO)。
段式:二维地址===》物理地址,段的大小不固,段是信息的逻辑单位,通过段表转换地址。
段页式:段页式地址===》页式地址===》逻辑地址。