Try   HackMD

Linux 核心設計: 作業系統術語及概念

這是上課筆記,原始課程在這裡:

Original by jserv


Section Time Description
1 00:00:00 1. Linux 原始碼的規模。
2. tokei
3. cache 以及其相關知識:cacheinfo.h
4. 星之卡比。
5. 虛擬記憶體管理,起源於 Mach microkernel。
6. 大同公司的 Unix ,用於大學聯考電腦閱卷。
2 00:14:52 1. procfs : Unix 的 plan 9 真正實現 everything is a file,並且最終被Linux 採用。
2. TCP/IP stack 的發展,最終也被Linux 採用。
3. BPF 封包過濾機制,最終被 Linux 採用 變成 eBPF。
3 00:22:51 1. eBPF 與 觀察作業系統 的關聯:virtual machine.
2. XDP
3. 9P 通訊協定,最終被 Linux 採用變成 virtualization 的基礎。
4 00:33:44 1. LXC / Docker / Linux container,作業系統層級的虛擬化。
(virtual machine 是 硬體層級的虛擬化)
2. 看漫畫學 Linux。
00:39:00 休息
5 00:43:14 1. 看漫畫學 Linux。
2. 檔案系統的重要性,VFS。
3. Process.
4. fork 的哲學 / posix_spawn 的修正。
5. multics / ms-dos
6 01:02:10 1. 多執行緒的產生:NPTL。
2. Manage Process affinity in Linux.
3. zombie processes.
4. OSTEP book : Virtualization / Concurrency / Persistence
7 01:15:15 1. 記憶體管理。
2. overcommit
8 01:21:00 1. 資安的強化 會影響到性能。
2. 傳統 網頁伺服器 /事件驅動 網頁伺服器。
3. Linux 到發跡:UNIX and BSD 對簿公堂。
4. khttpd : in-kernel httpd 作為加速。
9 01:37:31 1. kernel space / user space
2. HAL (Hardware Abstraction Layer)
3. X window
4. CTSS
5. fork / join
6. scheduler
01:51:42 休息
10 01:53:21 1. illusion.
2. 開發 作業系統 心得分享。
11 02:03:18 1. Monolithic kernel / Micro kernel
2. minix is a micro kernel / Linux is a monolithic kernel.
3. TCB : Trusted Computing Base
4. micro kernel 性能問題。
12 02:20:20 1. mklinux
2. operation system personalities
3. kernel module.
13 02:29:13 1. GNU Hurd.
2. Hybrid kernel : macOS
3. DragonFly BSD : Hammer 檔案系統 搬出 kernel
14 02:39:41 1. virtual machine 的考量。
2. microVM : Firecracker
3. unikernel : 只有一個 process
4. library OS : Exokernel
5. MazuNIX : 小型可研究的作業系統。
6. nanovms
15 02:53:56 1. Container Sandbox : google gVisor
2. Address space
3. Green thread : user space support multi-thread
4. kernel 記憶體管理。
16 03:00:40 1. Process context / interrupt context
2. Multi-tasking
3. 並行程式設計。
4. Linux 核心搶佔。
17 03:18:45 1. realtime KVM.
2. SMP / ASMP.
3. CPU scalability
4. RCU
5. cpu land
6. Advanced Operating System