转自:http://blog.csdn.net/gatieme/article/details/51456569

版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gatieme

 
 
日期 内核版本 架构 作者 GitHub CSDN
2016-07-21 Linux-4.6 X86 & arm gatieme LinuxDeviceDrivers Linux进程管理与调度

1 项目链接


项目 描述
KernelInKernel 一个运行在linux上的小巧内核, 修改了linux-kernel的start_kernel以启动我们自己的内核, 基于jserv/kernel-in-kernel(基于linux-4.1.0)和mengning/mykernel(基于linux-3.9.4), 适合学习和研究调度算法
Linux进程管理与调度 CSDN博客–Linux进程管理与调度
LDD-LinuxDeviceDrivers 与CSDN博客同步更新, 但是除了包含博客的内容, 还包含了一些以驱动方式实现的实验代码

2 进程的描述


CSDN GitHub
Linux进程描述符task_struct结构体详解–Linux进程的管理与调度(一) study/kernel/01-process/01-task/01-task_struct
Linux的命名空间详解–Linux进程的管理与调度(二) study/kernel/01-process/01-task/02-namespace
Linux进程ID号–Linux进程的管理与调度(三) study/kernel/01-process/01-task/03-pid

3 进程的创建


CSDN GitHub
Linux下的进程类别(内核线程、轻量级进程和用户进程)以及其创建方式–Linux进程的管理与调度(四) study/kernel/01-process/02-create/01-duplicate
Linux下0号进程的前世(init_task进程)今生(idle进程)—-Linux进程的管理与调度(五) study/kernel/01-process/02-create/02-idel
Linux下1号进程的前世(kernel_init)今生(init进程)—-Linux进程的管理与调度(六) study/kernel/01-process/02-create/03-init
Linux下2号进程的kthreadd–Linux进程的管理与调度(七) study/kernel/01-process/02-create/04-kthreadd
Linux下进程的创建过程分析(_do_fork/do_fork详解)–Linux进程的管理与调度(八) study/kernel/01-process/02-create/05-do_fork
Linux进程内核栈与thread_info结构详解–Linux进程的管理与调度(九) study/kernel/01-process/02-create/06-thread_info
Linux内核线程kernel thread详解–Linux进程的管理与调度(十) study/kernel/01-process/02-create/07-kernel_thead

4 进程的加载与运行


CSDN GitHub
Linux进程启动过程分析do_execve(可执行程序的加载和运行)—Linux进程的管理与调度(十一) study/kernel/01-process/03-execute/01-do_execve
LinuxELF文件格式详解–Linux进程的管理与调度(十二) study/kernel/01-process/03-execute/02-elf
ELF文件的加载过程(load_elf_binary函数详解)–Linux进程的管理与调度(十三) study/kernel/01-process/03-execute/03-load_elf_binary

5 进程的退出


CSDN GitHub
Linux进程退出详解(do_exit)–Linux进程的管理与调度(十四)) study/kernel/01-process/04-exit/01-do_exit

6 进程的调度


CSDN GitHub
Linux进程调度器概述–Linux进程的管理与调度(十五) study/kernel/01-process/05-schedule/01-introduction
Linux进程调度策略的发展和演变–Linux进程的管理与调度(十六) study/kernel/01-process/05-schedule/02-develop
Linux进程调度器的设计–Linux进程的管理与调度(十七) study/kernel/01-process/05-schedule/03-design
Linux核心调度器之周期性调度器scheduler_tick–Linux进程的管理与调度(十八) study/kernel/01-process/05-schedule/03-design/02-periodic_scheduler
Linux进程核心调度器之主调度器–Linux进程的管理与调度(十九) study/kernel/01-process/05-schedule/03-design/03-main_scheduler
Linux用户抢占和内核抢占详解(概念, 实现和触发时机)–Linux进程的管理与调度(二十) study/kernel/01-process/05-schedule/03-design/04-preempt
Linux进程上下文切换过程context_switch详解–Linux进程的管理与调度(二十一) study/kernel/01-process/05-schedule/03-design/05-context_switch
Linux进程优先级的处理–Linux进程的管理与调度(二十二) study/kernel/01-process/05-schedule/03-design/06-priority
Linux唤醒抢占—-Linux进程的管理与调度(二十三) study/kernel/01-process/05-schedule/03-design/07-wakeup

7 调度普通进程-完全公平调度器CFS


CSDN GitHub
Linux进程调度之CFS调度器概述–Linux进程的管理与调度(二十四) study/kernel/01-process/05-schedule/07-cfs/01-cfs/
Linux CFS调度器之负荷权重load_weight–Linux进程的管理与调度(二十五) study/kernel/01-process/05-schedule/07-cfs/02-load_weight/
Linux CFS调度器之虚拟时钟vruntime与调度延迟–Linux进程的管理与调度(二十六) study/kernel/01-process/05-schedule/07-cfs/03-vruntime/
Linux CFS调度器之队列操作–Linux进程的管理与调度(二十七) study/kernel/01-process/05-schedule/07-cfs/04-queue/
Linux CFS调度器之pick_next_task_fair选择下一个被调度的进程–Linux进程的管理与调度(二十八) study/kernel/01-process/05-schedule/07-cfs/05-pick_next/
Linux CFS调度器之task_tick_fair处理周期性调度器–Linux进程的管理与调度(二十九) study/kernel/01-process/05-schedule/07-cfs/06-task_tick_fair/
Linux CFS调度器之唤醒抢占–Linux进程的管理与调度(三十) study/kernel/01-process/05-schedule/07-cfs/07-task_new_fair/

Linux进程管理与调度-之-目录导航【转】的更多相关文章

  1. linux 进程管理与调度(一)

    进程结构 进程在内核的源代码中以结构体表示,篇幅很长,在此列举一小段关键代码,可以发现是个双向链表,具体的可以在内核目录下找一个叫"sched.h"的头文件. struct tas ...

  2. Linux进程管理专题

    Linux进程管理 (1)进程的诞生介绍了如何表示进程?进程的生命周期.进程的创建等等? Linux支持多种调度器(deadline/realtime/cfs/idle),其中CFS调度器最常见.Li ...

  3. Linux进程管理 (2)CFS调度器

    关键词: 目录: Linux进程管理 (1)进程的诞生 Linux进程管理 (2)CFS调度器 Linux进程管理 (3)SMP负载均衡 Linux进程管理 (4)HMP调度器 Linux进程管理 ( ...

  4. Linux进程管理 (7)实时调度

    关键词:RT.preempt_count.RT patch. 除了CFS调度器之外,还包括重要的实时调度器,有两种RR和FIFO调度策略.本章只是一个简单的介绍. 更详细的介绍参考<Linux进 ...

  5. [Wolfgang Mauerer] 深入linux 内核架构 第二章 进程管理与调度【未完】

     作为Linux开发爱好者,从事linux 开发有三年多时间.做过bsp移植,熟悉u-boot代码执行流程:看过几遍<linux 设备驱动程序开发>,分析过kernel启动流程,写过驱动, ...

  6. 深入Linux内核架构——进程管理和调度(上)

    如果系统只有一个处理器,那么给定时刻只有一个程序可以运行.在多处理器系统中,真正并行运行的进程数目取决于物理CPU的数目.内核和处理器建立了多任务的错觉,是通过以很短的间隔在系统运行的应用程序之间不停 ...

  7. Linux进程管理知识整理

    Linux进程管理知识整理 1.进程有哪些状态?什么是进程的可中断等待状态?进程退出后为什么要等待调度器删除其task_struct结构?进程的退出状态有哪些? TASK_RUNNING(可运行状态) ...

  8. Linux进程管理 (1)进程的诞生

    专题:Linux进程管理专题 目录: Linux进程管理 (1)进程的诞生 Linux进程管理 (2)CFS调度器 Linux进程管理 (3)SMP负载均衡 Linux进程管理 (4)HMP调度器 L ...

  9. Linux进程管理子系统分析【转】

    本文转载自:http://blog.csdn.net/coding__madman/article/details/51298732 Linux进程管理: 进程与程序: 程序:存放在磁盘上的一系列代码 ...

随机推荐

  1. BFS例题:A计划

    ContribContrib/a11y/accessibility-menu.js 关于 BFS要点: 1.若为可化为的坐标系图形,可用结构体存储其x值,y值和步数.(一般开now 和 next ,n ...

  2. 36-应用Jwtbearer Authentication

    新建.net core webapi项目 E:\coding\netcore>dotnet new webapi --name JwtAuthSample 创建需要用到的实体对象类 namesp ...

  3. spring源码学习中的知识点

    一.循环依赖 循环依赖就是循环引用,就是两个或多个bean之间互相持有对方. 1.构造器循环依赖 表示通过构造器注入造成的循环依赖,此依赖是无法解决的,只能抛出BeanCurrentlyInCreat ...

  4. linux环境下kettle部署(JDK安装配置,kettle安装配置,资源库配置,定时执行job)

    一.部署准备 1.1 java安装(略) 1.2 JDK配置 1.     命令行键入“cd /etc”进入etc目录 2.     命令行键入“vi profile”打开profile文件 3.   ...

  5. 4 CSS的20/80个知识点

    1.css的基本构成 样式选择器 id选择器 元素选择器 2.css的盒模型 border padding margin 3.Atom快捷键 4.程序 (1)初始程序 <!DOCTYPE htm ...

  6. laravel5.5任务调度

    目录 1. 定义调度 1.1 使用Closure 1.2 Artisan 命令调度 1.3 队列任务调度 1.4 Shell 命令调度 1.5 调度频率设置 1.6 闭包测试限制 1.7 避免任务重复 ...

  7. Android学习笔记(四)之碎片化Fragment实现仿人人客户端的侧边栏

    其实一种好的UI布局,可以使用户感到更加的亲切与方便.最近非常流行的莫过于侧边栏了,其实我也做过很多侧边栏的应用,但是那些侧边栏的使用我 都不是很满意,现在重新整理,重新写了一个相对来说我比较满意的侧 ...

  8. JMeter学习笔记(十一) 关于 CSV Data Set Config 的 Sharing mode 对取值的影响

    关于 CSV Data Set Config 的一些介绍之前已经梳理过了,可以参考: https://www.cnblogs.com/xiaoyu2018/p/10184127.html . 今天主要 ...

  9. unity灯光Lightmapping、LightProbes

    1.为什么要用Lightmapping? 简单来说就是实时灯光计算十分耗时,随着光源越多,计算耗时会倍增.使用Lightmap模拟灯光带来的效果,便不用去计算灯光,会带来性能上的大大提升. 当然一个复 ...

  10. PAT——甲级1046S:shortest Distance

    这道题,折磨了我一个多小时,前前后后写了三个算法. 1046 Shortest Distance (20 point(s)) The task is really simple: given N ex ...