iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
自我挑戰組

當你凝視linux, linux也在凝視你 系列

趁著鐵人賽期間,想以粗略的方式理解linux kernel的基礎概念

鐵人鍊成 | 共 30 篇文章 | 12 人訂閱 訂閱系列文 RSS系列文
DAY 1

Day1 30天計畫總覽

今日要點 起源 介紹 起源 購入了奔跑吧linux套書,為了強迫自己每天推進一點進度,決定參與鐵人賽的挑戰,要在30天內好好的養成學習linux的習慣,...

2021-09-16 ‧ 由 chengchen 分享
DAY 2

Day2 簡單介紹linux kernel 的架構

linux 是作業系統,是硬體與應用程式之間溝通的橋樑,應用程式想要使用硬體,都需要有作業系統的協助。 上圖是linux的架構圖,列出了linux kernel...

2021-09-17 ‧ 由 chengchen 分享
DAY 3

Day3 program, process, thread傻傻分不清楚

昨天講完了linux的核心架構,今天就開始讓我們認識重要的部分吧。以下是三個名詞,程式(program)、行程(process)、執行序(thread),在作業...

2021-09-18 ‧ 由 chengchen 分享
DAY 4

Day4 橫空出世的 kernel_clone

前言 昨天的最後提到建立user process的三個系統呼叫:fork(),vfork(),clone(),與建立Kernel thread的兩種系統呼叫系統...

2021-09-19 ‧ 由 chengchen 分享
DAY 5

Day5 process 的生命週期

前言 昨天講了process 怎麼來的,今天來講講process 的生命週期。 process 的生命週期(理論) 上圖來自Operating System...

2021-09-20 ‧ 由 chengchen 分享
DAY 6

Day6 讓 scheduler 規劃未來

Day6 讓 scheduler 規劃未來 tags: 鐵人賽 前言 昨天講到了行程的生老死別,那麼行程是如何被挑中,成為那百中選一能夠執行的行程呢?那就不得不...

2021-09-21 ‧ 由 chengchen 分享
DAY 7

Day7 初探CFS scheduler (上)

前言 上次講完了過去 Linux 的排程器,今天就來講講 CFS (complete fair scheduler) 在 Linux 核心的文件 CFS Sch...

2021-09-22 ‧ 由 chengchen 分享
DAY 8

Day8 初探CFS 中

前言 昨天要處裡要返回台北的家當,所以只有簡單的介紹CFS 是什麼,以及CFS使用了什麼樣的資料結構,今天讓我們來看看到底CFS內部到底在做什麼事情。 vrun...

2021-09-23 ‧ 由 chengchen 分享
DAY 9

Day9 初探CFS 下

前言 昨天講到了利用兩個查表的方式來計算,會比直接計算來的節省運算資源,今天就來看看到底要vruntime到底要怎麼計算。 vruntime vruntime...

2021-09-24 ‧ 由 chengchen 分享
DAY 10

Day10 分頁與分段的記憶體管理

前言 前幾天講完了行程管理的部分,其中有個部分講到,所謂的ready 或者說 task_running 的狀態,代表著行程的資料已經被移到記憶體,準備好可以執行...

2021-09-25 ‧ 由 chengchen 分享