操作系统之哲学原理4----进程

进程概论

进程=程序+执行

进程是人根据需要发明的。

单一操作员单一控制端(等待人输入命令)、批处理(等待IO操作)均存在效率低下问题,故将多个程序同时加载到计算机内,这些同时加载进内存的程序就是进程。

进程模型

从存储角度看,进程就是内存的某片空间。

从逻辑角度看,进程可以执行、也可以挂起。为了记住执行位置,每个进程有程序计数器。

进程是提供的一种抽象,目的是通过并发提高效率。

进程的物理基础是程序。

多个进程共享同一物理内存,需要内存管理。

多个进程共享同一CPU,需要进程调度。

进程的产生与消亡

进程产生事件:

系统初始化(神造人)

创建子进程(人生人)

用户请求创建新进程(试管婴儿)

进程消亡事件:

寿终:运行结束退出

自杀:因错误自行退出

他杀:被其它进程结束

处决:因异常被强行终结

进程的状态

典型情况有三大状态:执行、阻塞、就绪

具体实现:Windows有7个状态,Solaris有6个状态。

进程与地址空间

就是进程要用的所有资源。

进程管理

记录进程信息的结构:进程控制块(PCB)。PCB的具体实现各个操作系统不尽相同。

操作系统根据PCB管理进程。所有进程的PCB组成一个列表,保存在内核空间。

进程创建大体过程:

分配PCB

初始化寄存器(管理执行状态)

初始化页表(存储管理)

将程序代码读进内存

处理器设置为“用户态”

从程序起始位置开始执行

进程创建在不同操作系统里过程细节不尽相同。

进程管理的难点在兼顾效率和公平。

进程的缺陷(线程来弥补)

一个时间只能做一件事,如果被阻塞(等待输入),则进程运行停止。

现实情况下,进程在等待输入时,可以先做一些其它事情。或者进程内有多个事情可以同时进行。

———————————————————————————————————————————

欢迎关注我的微博:大雄_RE。专注软件逆向,分享最新的好文章、好工具,追踪行业大佬的研究成果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值