一、进程相关概念
1、OS运行
Kernel和 process(进程);
2、内存地址:
线性内存
物理内存
3、CPU:
a)x86CPU执行环:
第0环是执行特权命令(最内圈);
第1和2环是没使用的;
第3环是用户的运行程序(最外圈);
b)程序运行采用轮流替换的方式,这种方式可以有优先级控制,由内核主导运行;
4、内核运行机制:
a)内核空间和用户空间;
b)内核空间中的内核数据结构:
task structure(任务结构),信息:
PPID:
PID:7
Name:Jerry
c)进程执行在内存中,进程的描述信息在内核中;
d)当旧的进程退出,新的进程在内存中执行,会出现内存出现千疮百孔的现象。当程序的进程有bug,也极有可能出现此进程吞噬其他进程; 因此为避免出现内存当中的bug,在80286的cpu之后,把内存分为线性地址和物理地址;
e)内存空间又被换分为页框;
二、进程浅谈
1、内存中的进程空间组成:
forbidden: 内存保留的
program text:只读的,存放全局变量
数据:uninitialized
initialized data
runtime heap:堆内存,内核发现内存中的堆动态的增长,增长到一定程度内核会申请新的页面读入新的文件;
user stack:栈,存放本地变量
Memory mappe region for shared libraried:共享库;
2、进程
a)CPU中的芯片有MMU:Memory Management Unit,用于把进程的页面转换成CPU的物理页框,转换的过程需要用到的共享资源保存在缓存中;缓存内容更新的过程使用TLB调整;
b)cpu中进程之间的切换叫Context (上下文切换)或者叫环境切换;
c)进程属性:
进程号
占用多少内存空间
用户cron任务
父进程
CPU time
d)查看CPU内存空间时会出现2种空间:
RSS:residentsize,常驻内存集
VSZ:虚拟内存集
3、线程(thread)
优点:多线程可实现用户共享打开的文件;线程比内存更节省空间;
本文出自 “Nick Liu的博文” 博客,请务必保留此出处http://zkhylt.blog.51cto.com/3638719/1412745
Linux01-Linux进程管理浅谈43,布布扣,bubuko.com
原文地址:http://zkhylt.blog.51cto.com/3638719/1412745