一,进程的概念:
内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等;
Process: 运行中的程序的一个 副本,是被 载入内存的一个指令集合进程ID (Process ID ,PID )号码被用来标记各个进程UID 、GID 、和SELinux 语境决定对文件系统的存取和 访问权限,通常从执行进程的 用户来继承存在生命周期;
task struct :Linux 内核存储进程信息的数据结构格式;
task list :多个任务的的task struct 组成的链表;
二,进程创建:
init :第一个进程
父子关系
进程:都由其父进程创建,COW
fork(), clone()
三,进程的优先级:
系统优先级: 数字越小,优先级越高
0-139(CentOS4,5) )
各有140个运行队列和过期队列
0-98 ,99 (CenOS6)
实时优先级: 99-0 :值最大优先级最高
Nice 值:-20 ,19 对应系统优先级100-139 或99
四,进程内存:
Page Frame: 页框,用存储页面数据,存储Page 4k
LRU :Least Recently Used 近期最少使用算法, 释放内存,物理地址空间和线性地址空间
MMU :Memory Management Unit 负责转换线性和物理地址(cpu管理单元)
IPC: Inter Process Communication
同一主机上
signal
shm: shared memory
semophore 信号量,一种计数器
不同主机上:
rpc: remote procedure call
socket: IP 和端口号
五,进程状态:
运行态:running
就绪态:ready
睡眠态:
可中断:interruptable (S)
不可中断:uninterruptable (D)
停止态:stopped, 暂停于内存中,但不会被调度,除非手动启动
僵死态:zombie ,结束进程,父进程结束前,子进程不关闭
进程类型:
守护进程: daemon, 在系统引导过程中启动的进程,和终端无关进程
前台进程:跟终端相关,通过终端启动的进程
注意:两者可相互转化
进程的分类:
CPU-Bound :CPU 密集型,非交互
IO-Bound :IO 密集型,交互