Linux学习笔记14:进程管理

---进程管理---

程序怎么执行?
                1,将程序从硬盘复制到kernel中
                2,将程序复制到一个独立的内存空间

内存空间有什么组成?
                用户内存空间 + kernel

什么是进程?
                程序自己 + 内存空间 + 数据 + 线程 等程序执行须要的各类资源

                线程(thread):进程执行的最小单位

分类:
                前台任务:一次执行 ls
                后台任务:一直在执行 init       pstree -p       查看

CoW:写时复制

进程:都是由父进程建立,怎么建立?      fork(), clone()

CPU进行线程切换叫作上下文!

缓存失效:CPU处理一个进程时被切换到另外一个进程,形成当前缓存失效。这种现象极大浪费CPU性能

内存存储单位:Page Frame 页框   4K

物理地址空间:应用程序在内存中的真实存储位置
线性地址空间:应用程序认为本身的存储位置

MMU:memory management unit     在cpu中,负责转换物理地址和线性地址

内存释放算法:LRU 近期最少使用算法算法

规则:淘汰老旧,老旧更新。

进程间通讯:
                同一台主机
                                pipe    管道
                                socket  套接字
                                signal  信号    ^ + c 等
                                shm     shared memory
                                semaphore       信号量
                不一样主机
                                socket  ip和端口
                                RPC     remote procedure call   远程过程调用
                                MQ      消息队列

进程优先级:
                实时进程:  0-99
                非实时进程:100-139
reltime
nice
top

Linux内核:抢占式多任务

进程类型:
                守护进程:daemon,在系统引导过程当中启动的进程,和终端无关进程
                前台进程:跟终端相关,经过终端启动的进程

进程状态:
                运行态:running
                就绪态:ready
                睡眠态:
                                可中断:interruptable
                                不可中断:uninterruptable
                中止态:stopped
                僵死态:zombie
相关文章
相关标签/搜索