【Todo】Linux进程调度算法学习

参考这篇文章 http://blog.chinaunix.net/uid-27052262-id-3239260.html

Linux支持三种进程调度策略,分别是SCHED_FIFO 、 SCHED_RR和SCHED_NORMAL。Linux支持两种类型的进程,实时进程和普通进程。实时进程可以采用SCHED_FIFO 和SCHED_RR调度策略;普通进程采用SCHED_NORMAL调度策略。

本文主要讨论普通进程的调度算法,为了描述方便,后面章节中的“进程”指“普通进程”。

从Linux2.6.23内核到目前最新的Linux3.3.5内核的普通进程(采用调度策略SCHED_NORMAL)采用了绝对公平调度算法,CFS(completely fair schedule)。CFS从RSDL/SD中吸取了完全公平的思想,不再跟踪进程的睡眠时间,也不再区分交互式进程。它将所有的进程都统一对待,这就是公平的含义。CFS 调度中,进程数据结构中的动态优先级成员prio还继续有效,只是内核不再动态调整进程的动态优先级了。

时间: 2024-10-10 04:21:24

【Todo】Linux进程调度算法学习的相关文章

进程调度算法Linux进程调度算法

这次介绍一下操作系统的进程调度算法 操作系统的调度分为三种:1.远程调度(创建新进程):2.中程调度(交换功能的一部分):3.短程调度(下次执行哪个进程) 这次讲述的就是短程调度,可以简单的看作咱们平时所说的进程调度啦 当发生下面几种情况的时候会调用短程调度器,然后就看下次执行那个进程啦 时钟中断 I/O中断 操作系统调用 信号(如信号量) 进程调度算法: 先来先服务(FCFS) 短作业优先(SPN) 最短剩余时间(SRT) 时间片轮转 最高响应比优先 公平共享调度 先来先服务 就和名字一样,哪

Linux进程管理学习资料

下面是一些Linux进程管理相关的资料. 博客 Process Creation(一) Process Creation(二) 进程切换分析(1):基本框架 进程切换分析(2):TLB处理 文档 == 原文地址:https://www.cnblogs.com/pengdonglin137/p/8126059.html

linux进程调度算法

linux下的调度算法有两种: CFS 完全公平调度算法,宏为SCHED_BATCH SCHED_NOMAL 实时调度算法,宏为SCHED_FIFO SCHED_RR Reference [1].http://blog.chinaunix.net/uid-26611383-id-3789974.html [2].http://blog.csdn.net/hs794502825/article/details/10495161

Linux System Programming 学习笔记(六) 进程调度

1. 进程调度 the process scheduler is the component of a kernel that selects which process to run next. 进程调度器需要使 处理器使用率最大化,并且提供 使多个进程并发执行的虚拟 Deciding which processes run, when, and for how long is the process scheduler's fundamental responsibility. 时间片:th

操作系统的常用的进程调度算法

一.调度与调度算法 操作系统管理了系统的有限资源,当有多个进程(或多个进程发出的请求)要使用这些资源时,因为资源的有限性,必须按照一定的原则选择进程(请求)来占用资源.这就是调度. 目的是控制资源使用者的数量,选取资源使用者许可占用资源或占用资源. 在操作系统中调度是指一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法.对于不同的的系统和系统目标,通常采用不同的调度算法. 调度算法要求:高资源利用率.高吞吐量.用户满意等原则. 进程调度所采用的算法是与整个系统的设计目标相

【Linux】 进程调度算法

Linux中的进程调度算法分类如下: 一.先来先服务和短作业(进程)优先调度算法 1.先来先服务调度算法(FCFS) 先来先服务(First Come First Service,FCFS)调度算法是一种最简单的.不可抢占式的调度算法,既可用于作业调度,也可用于进程调度.该算法按照进程进入就绪队列的先后顺序选择可以占用处理器的进程.每次调度都是从后备作业队列中选择一个或多个最先进入该队列的作业,将它们调入内存,为它们分配资源.创建进程,然后放入就绪队列.在进程调度中采用FCFS算法时,则每次调度

Linux System Programming 学习笔记(五) 进程管理

1. 进程是unix系统中两个最重要的基础抽象之一(另一个是文件) A process is a running program A thread is the unit of activity inside of a process the virtualization of memory is associated with the process, the threads all share the same memory address space 2. pid The idle pro

linux学习之八---Linux进程基础知识

一.linux进程 linux是一个多用户多任务的操作系统. 多用户是指多个用户可以在同一时间使用计算机: 多任务是指linux可以同时执行几个任务. 进程简单来说就是运行中的程序,Linux系统的一个重要特点是可以同时启动多个进程.根据操作系统的定义:进程是操作系统资源管理的最小单位. 1.Linux进程的概念 进程是一个动态的实体,是程序一次执行过程,并且进程是操作系统资源分配的基本单位. 进程与程序的区别:进程是动态的,程序是静态的:进程是运行中的程序,而程序还是保存在硬盘上的可执行代码.

Linux 进程学习

------------------------------------------------------------------------------------------- ps 显示瞬间进程的状态,并不动态连续,如果想对进程进行时间控制,应该用top     -A 列出所有的行程  -w 显示加宽可以显示较多的资讯  -au 显示较详细的资讯  -aux 显示所有包含其他使用者的进程 #平时用的比较多的是 ps axu  # -e 显示所有进程 -f 显示所有进程的所有信息 -r 只