Process 进程
进程为操作系统的基本调度单位,占用系统资源(cpu,内存)完成特定任务,所有说进程是操作系统的标准执行单元
进程与程序的差别
- 程序是静态资源,存储与电脑磁盘中(disk磁盘资源)
- 程序执行后会创建进程,负责完成功能,
进程是程序启动后的结果,是程序的动态表现(CPU,内存,磁盘)
单任务处理系统
WindowsDos、MacAhpha,单任务操作系统同一时间只能执行一个任务
单任务系统时代硬件资源发展初期,受硬件限制电脑性能交叉
共享
上世纪60年代,硬件迅猛发展,单任务操作系统无法完全发挥硬件的全部性能,所有的计算机科学类研究主体为发挥最大硬件性能
共享访问,将硬件资源CPU,内存,缓存,硬盘等等进行共享
多进程可以同时访问使用这些资源,实现硬件利用最大化,最终诞生了多任务操作系统,在一台设备上可以同时执行多个任务(Process进程),最好的利用硬件资源
CPU共享
分时复用原则(可以将CPU的执行时间切割为若干时间片,时间片分给多个进程,让多个进程可以交替轮转使用CPU)
swp交换技术
内存共享
内存资源是可以被多个进程访向和共享的,不会进程分配固定占用的内存,这样会影响内存的重用性。 实现原理: 内存分区1,首先分配给进程a。进程a进入不活跃状态,通过**swp**将分区1中进程a的信息交换出去。内存分区分配给进程b使用。
进程的生存环境
虚拟内存技术
x86操作系统最大支持三级寻址(4K,4M,4G)
x64操作系统理论上限是16EiB但是实际上根本不需要这么大,一般为256TB。
32位系统虚拟内存间接寻页
0-4G
64位系统虚拟内存间接寻页
0-16T
进程运行状态
进程权限状态转换
内核层与用户层指的是不同访问级别的CPU,系统调用引发的权限转换起始就是CPU权限切换 .用户态转换到内核态,本质就是CPU从低权模式 转换到高权模式。
三种访问可以触发层级转换(权限转换)
- 系统调用,调用系统函数
- 软件中断(int0x80),时间片耗尽触发软中断
- 异常触发层级转换