操作系统8-进程和系统调度(I)

什么叫进程

 

一个进程就是程序运行的实体。程序运行实体需要他自己的资源:栈,堆,等。在一些操作系统进程叫任务(tasks).在程序执行当中,进程是有多种状态的。一个进程可以有它的优先度。一个进程有他得地址空间,例如windows 给进程4gb空间(划分给不同的用户)。

 

当程序执行,一个进程会由以下段(segments):

 

程序代码(代码段)

数据段

寄存器 包括(程序计算器和CPU数据寄存器)

 

总体来说,进程是在运行时数据、资源和状态的信息。多线程编程要求一个进程可以在适当的时间被分配和取消分配到CPU。因此操作系统需要一个系统调度来实现这个需求。系统调度就是负责分配进程资源。

 

 

进程调度(Process Scheduling)

 

最大的发挥CPU的功效是多线程编程的目的。操作系统有很多组件去实现这个目的。第一个主要的组件是作业调度程序(Job scheduler).作业调度程序就是一个程序当系统资源已经被占满时,把作业(job)塞进队列里。

 


 

进程控制块(Processcontrol blocks, PCBs)

 

 

每个进程的状态都用进程控制块来表现。进程控制块用来记录进程在生命周期中(初始化,创建,运行等)的状态信息。记录信息是比较重要,因为CPU是共享给所有任务的。当任务切换是,需要上下文切换(context switches)PCB的作用显现出来了。

 

PCB的结构包括:

 

进程状态(process state),可以是newreadyrunningwaiting blocked

 

程序计数器(Program counter),接着要运行的指令地址。

 

CPU寄存器 主要用途在于中断时暂时存储数据,以便稍后继续利用;其数量及类因电脑架构有所差异。

 

CPU排班法,优先级、排班队列等指针以及其他参数

 

存储器管理如标签页表等。

 

会计信息:如CPU与实际时间之使用数量、时限、账号、工作或进程号码。

 

输入输出状态,打开文件,以分配的资源和其他占有的资源的列表,

 

 

 

(电脑的进程), http://www.dnxxj.com/questions/2ca21a1b68943ed/%E7%94%B5%E8%84%91%E8%BF%9B%E7%A8%8B.html

 

 

关于进程的异步性), http://www.dnxxj.com/questions/2ca7536da29aa43/%E5%85%B3%E4%BA%8E%E8%BF%9B%E7%A8%8B%E7%9A%84%E5%BC%82%E6%AD%A5%E6%80%A7.html

 

 

进程调度策略), http://www.dnxxj.com/questions/4769ac8927a741/%E8%BF%9B%E7%A8%8B%E8%B0%83%E5%BA%A6%E7%AD%96%E7%95%A5.html

 

作业调度和进程调度的区别), http://www.dnxxj.com/questions/47577be9b566cc/%E4%BD%9C%E4%B8%9A%E8%B0%83%E5%BA%A6%E5%92%8C%E8%BF%9B%E7%A8%8B%E8%B0%83%E5%BA%A6%E7%9A%84%E5%8C%BA%E5%88%AB.html

 

进程控制块), http://baike.baidu.com/link?url=DXTZN5Y0qXulym_YLOv2pl8CXT3VJGgTAzIB3EbGPKw5UxW2Grvq2D2hypsXc7emoV_fgHvtJfQF2SJ54KP9va

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值