进程管理

现代计算机中,进程是资源分配的单位,线程是处理机调度的基本单位。

有C/C++占用内存的使用情况如下:

1,正文段:代码和数据赋值段(二进制代码和常量存放在正文段,)

2,数据堆段:动态分配的存储区在数据堆段

3,数据栈段:临时使用的变量在数据栈段

例:若一个进程有PCB,共享正文段,数据堆段和栈段构成,请指出下列C语言 描述的内容在进程的那个部分?

I:全局赋值变量 II:为赋值的局部变量 III:函数调用实参传递值 IV:用malloc动态分配的存储区 V:常量值  VI:进程的优先级

A PCB           B 正文段          C:堆段       D:栈段

正文段:              全局变量          常量值

 数据堆段:        用malloc动态分配的存储区     

数据栈段:       未赋值的局部变量      函数调用的实参传递值 

PCB:               进程的优先级


PCB:实际包含的内容主要有4部分:

进程标识信息:ID号以及父进程ID号;

进程控制信息:当前状态,调度信息

进程资源信息:内存,设备,文件数据

CPU现场信息:程序计数器,堆栈

线程表(TCB):所包含的内容,较PCB少,线程本身不直接拥有系统资源,使用进程的资源。同样具有运行就绪阻塞状态。切换快,并发读高。

 较典型的进程定义有:

 (1) 进程是程序的一次执行。

 (2) 进程是一个程序及其数据在处理机上顺序执行时所发生的活动。

 (3) 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

 在引入了进程实体的概念后,我们可以把传统OS中的进程定义为:“进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位”。 


进程的3中状态:执行,阻塞,执行

引入挂起状态的原因 
(1 )终端用户的请求。 
(2) 父进程请求。 
(3) 负荷调节的需要。 
(4) 操作系统的需要。 


在分时系统中,导致进程创建的典型事件是用户登录,;在批处理中,导致进程创建的典型事件是作业调度,作业调度的作用为将外存的作业创建为内存的进程。或者,将正常运行结束的进程今次那个审计并将结果提交给用户,,不涉及进程和线程的调度,因为进程和线程的调度,均在内存发生,作业录入是在收纳作业时,才进行,不涉及进程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值