COSCUP x RubyConf TW 2021

藉由實作多任務核心來體驗作業系統概念
07-31, 15:30–16:00 (Asia/Taipei), TR309
Language: 漢語


Translate Title

Bridge Operating System Concepts and Practice with A Multi-tasking Kernel

Abstract

今日的數位世界已充斥著各式作業系統,除了從作業系統教科書學習概念以外,我們能否親身體驗作業系統核心的建構並學習相關底層系統呢?本議程將介紹一款具體而微的作業系統核心,搭配 GNU Toolchain 和 QEMU,針對 Arm 處理器,並提供分時多工、核心和使用者層級的執行緒、動態載入 ELF 執行檔、記憶體管理、檔案系統,和堆疊溢位偵測等特徵。主體原始程式碼約 2000 行的規模,可在 Arm/AArch64 處理器架構上執行,也支援 Raspberry Pi 4B,這樣的軟硬體組合,特別適合想體驗系統軟體開發的朋友。

Talk Length

30

您是否知悉並同意如採遠端形式分享,需提供預錄影片(您需同意大會才能接受您的稿件) – yes Difficulty

中階

slido url

https://app.sli.do/event/curc8xs1

hackmd url

https://hackmd.io/@coscup/ryHfQ6vAu/%2F%40coscup%2FBJgfmaDCO

English Abstract

In nowadays, we can find lots of operating systems in the digital world. Apart from learning in OS textbooks, how can we experience the construction of an OS kernel and studying the relative system software? In this agendum, we will introduce a minimal OS kernel with GNU Toolchain and QEMU. It provides several features like time-sharing, multi-tasking, user-level thread, loading ELF dynamically, memory management, filesystem, stack overflow detection, etc. The whole system is composed of about 2K lines of code and can be run on Arm/AArch64 architecture (including Raspberry Pi 4B).

other info

OscarShiang (GitHub)