linux进程(子进程创建和系统调度策略)

1定义

一个进程是一个程序执行的一次过程,程序是静态的,但进程是动态的过程概念。它是linux进行资源分配和派发的基本单位。

进程涉及到PID号,就是进程标识号(Process Idenity Number,PID)。一个PID唯一的标识一个进程

2.进程在内存中的存在形式

一个进程在内存中有三部分的数据:”数据段”“代码段”“堆栈段”。

代码段,是存放了程序代码的数据,假如机器中有数个进程运行相同的一个程序,那么他们可以共享一个代码段。而数据段则存放程序的全局变量,常数以及动态数据分配的数据空间

堆栈段则存放的是子程序的返回地址,子程序的参数以及程序的局部变量。堆栈段包括进程控制块PCB。PCB位于进程核心堆栈的底部,不需要额外分配空间。

3.子进程的创建

Fork函数,调用的过程中系统将创建一个与当前进程相同的进程。它与原来的进程具有相同的数据,连接关系和在程序同一处执行的连续性。

要注意的是:子进程获得同父进程相同的数据,但是同父进程使用不同的数据段和堆栈段。

4.linux系统调度策略

①SCHED_OTHER 分时调度策略

②SCHED_FIFO 实时调度策略,先到先服务

③SCHED_RR 实时调度策略,时间片轮转

 

posted @ 2016-08-24 15:10  Pumpkin0227  阅读(244)  评论(0编辑  收藏  举报