日期内核版本架构作者GitHubCSDN
2016-07-21Linux-4.6X86 & armgatiemeLinuxDeviceDriversLinux进程管理与调度

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 进程的描述


CSDNGitHub
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 进程的创建


CSDNGitHub
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 进程的加载与运行


CSDNGitHub
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 进程的退出


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

6 进程的调度


CSDNGitHub
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

CSDNGitHub
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 CFS调度器之唤醒WAKE_AFFINE 机制–Linux进程的管理与调度(三十一)study/kernel/01-process/05-schedule/07-cfs/08-wake_affine

7 公众号


工作以后,很长时间,没写博客了。近期准备重新拾起来,知识是无界的,我最喜欢的就是把技术当笔记一样分享出来跟大家一起讨论,一些思考。

近期开了公众号和知乎, 刚开始运营,欢迎大家多多支持。

推荐大家关注下我的公众号,内核干货,谢谢。

后期所有博文都将在这些平台同步推送,大家选择自己关注的平台即可。当然推荐大家把公众号关注了,谢谢。

CSDN公众号知乎自建站点
kernel-csdn内核干货知乎oskernellsb
kernel-csdn公众号 "内核干货"知乎在这里插入图片描述
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐