Code Monkey home page Code Monkey logo

yu3peng / linux-archive Goto Github PK

View Code? Open in Web Editor NEW

This project forked from draveness/linux-archive

0.0 1.0 0.0 96.9 MB

Linux archive for studying the process scheduler. 调度系统设计精要 http://draveness.me/system-design-scheduler

Makefile 0.34% C 93.95% Assembly 2.37% C++ 1.34% Shell 0.04% Perl 0.07% Objective-C 1.82% Awk 0.01% GDB 0.01% Roff 0.01% OpenEdge ABL 0.01% sed 0.01% Python 0.01% Raku 0.01% UnrealScript 0.01% Yacc 0.03% Lex 0.01% ASP 0.01% Scilab 0.01%

linux-archive's Introduction

linux-archive

Linux archive for studying the process scheduler

Version Scheduler
0.01 Initial Scheduler
2.4.0 O(n) Scheduler
2.6.8.1 O(1) Scheduler
2.6.23 CFS Scheduler

系统设计精要是一系列深入研究系统设计方法的系列文章,文中不仅会分析系统设计的理论,还会分析多个实际场景下的具体实现。这是一个季更或者半年更的系列,如果你有想要了解的问题,可以在文章下面留言。

调度是一个非常广泛的概念,很多领域都会使用调度这个术语,在计算机科学中,调度就是一种将任务(Work)分配给资源的方法[^1]。任务可能是虚拟的计算任务,例如线程、进程或者数据流,这些任务会被调度到硬件资源上执行,例如:处理器 CPU 等设备。

system-design-and-scheduler

图 1 - 调度系统设计精要

本文会介绍调度系统的常见场景以及设计过程中的一些关键问题,调度器的设计最终都会归结到一个问题上 — 如何对资源高效的分配和调度以达到我们的目的,可能包括对资源的合理利用、最小化成本、快速匹配供给和需求。

mind-node

图 2 - 文章脉络和内容

除了介绍调度系统设计时会遇到的常见问题之外,本文还会深入分析几种常见的调度器的设计、演进与实现原理,包括操作系统的进程调度器,Go 语言的运行时调度器以及 Kubernetes 的工作负载调度器,帮助我们理解调度器设计的核心原理。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.