Linux系统编程--进程控制(一)

一、linux 进程

1、进程概念

百度

2、进程标识

进程ID:每个进程都通过惟一的进程ID标识, 进程ID是一个非负数。

每个进程除了进程ID外还有一些其他标识信息,都可通过相应的函数获得。
函数表

3、Linux进程的结构

Linux中一个进程由3部分组成:代码段、数据段、堆栈段

4、Linux进程状态

(1)R 运行状态
(2)S可中断等待状态
(3)D不可中断等待状态
(4)Z僵死状态
(5)T停止状态

二、进程的内存映像

命令行参数和环境量 ——————– 高地址




未被初始化数据段


数据段


代码段——————————————-低地址


栈:存放局部变量,函数参数
堆:动态分配内存
未初始化数据段:bss段,未初始化的变量
数据段:全局变量,静态变量,静态局部变量
代码段: 包含了进程运行的程序机器语言指令。文本段具有只读属性,以防止进程通过错误指针意外修改自身指令。

三、虚拟内存

布局

1.每个进程都有自己独立的4G内存空间,但实际上这个内存是不存在的,是虚拟内存,每次访问内存空间地址的时候,都需要翻译成实际物理地址。
2.每个进程只需要把自己当前需要的虚拟内存空间映射并保存到物理内存上。
3.页表用来记录内存地址上的数据是否在物理内存上,如果存在,在哪里。
4.查看页表,如果对应的数据没在物理内存上,则发生缺页中断。
5.处理缺页中断:从磁盘上将需要的数据复制到物理内存。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值