linux进程小结(1)
来源:互联网 发布:服装出口数据 编辑:程序博客网 时间:2024/06/05 06:10
大家都知道linux的进程是可以抢占的,抢占一般会出现在这两种情况:
1.一个进程进入TASK_RUNNING状态,内核会检查该进程的动态优先级是否大于正在运行的进程,如果是的话则通过调度程序运行新进程
2.当一个进程的时间片用完时,也会根据优先级来判断接下来运行哪个进程
需要指出的是被抢占的进程并没有被挂起,依然处于TASK_RUNNING状态,只是不再使用CPU。
linux的进程的分类大致有两类:
第一种分类将进程分为"IO受限"型以及“”CPU受限“型,前者频繁的使用'IO设备'并将大量的时间用于等待‘IO输入’,后者需要消耗大量的CPU时间用于计算。
第二种分类将进程分为三种:
1.交互式进程:需要花很多时间等待用户的输入,当检查到输入后需要很快的进行响应,但是本身占用CPU运行的时间并不长。典型应用场景有命令shell等,平均延时在50~150ms左右。
2.批处理进程:需要消耗的大量的CPU工作时间。典型场景如 编译和科学计算。
3.实时进程:这类进程拥有很高的优先级,很短的响应时间、响应时间相对稳定。典型场景如音频和视频程序。
我们通常将交互式进程和批处理进程称之为普通进程。
普通进程有两种优先级:静态优先级和动态优先级。
静态优先级决定了时间片的大小以及当其他进程时间片用完时的优先级。动态优先级的作用在前面说过了,动态优先级如其名是会实时变化的,由bonus的数值和其静态优先级决定的。bonus的值依赖于进程过去的情况,与进程的平均随眠值有关。同等静态优先级的情况下,睡眠时间越长,动态优先级越高。
实时进程有两种调度方式:FIFO和RR。
FIFO指的是最新的进程最优先处理,RR刚好相反,最老的进程最优先处理。实时进程的调度方式仅限于同等优先级的,优先级更高的实时进程无视任何调度方式,优先级更高的永远最先执行。
- linux进程小结(1)
- LINUX进程小结
- Linux进程ID小结
- linux进程状态小结
- Linux 进程调度小结
- Linux进程管理小结
- linux进程状态小结
- 进程、线程小结(1)
- Linux--Linux进程编程小结
- linux下进程统计小结
- Linux的进程管理小结
- Linux下进程间通信(小结)上
- Linux下进程间通信(小结)下
- Linux期末复习知识点小结(四)——进程
- Linux网络进程通信实验小结
- Linux进程通信:命名管道FIFO小结
- Linux进程通信:命名管道FIFO小结
- Linux进程通信:命名管道FIFO小结
- 设计模式——单例模式
- 课程练习四-problem V
- mysql性能调优(一):join查询(2)
- 野蛮生长-开始ING
- Activity、FragmentActivity
- linux进程小结(1)
- HDU 1875:畅通工程再续
- hadoop集群的搭建
- java语言程序设计基础篇第五章编程练习题
- 三种排序算法的python实现+装饰器统计每种算法耗时
- Linux中的内存段
- Windows下定时关机
- 使用Elasticsearch + Logstash + Kibana搭建日志集中分析平台实践
- HMAC-SHA1签名认证算法