[心得] 曹孝櫟 作業系統設計與實作
⊕課名⊕
作業系統設計與實作
▲教授▲
曹孝櫟
★修課年度★
1082
£教了什麼£(課程大概內容。或是額外學會了什麼東西。)
Booting
Process Management
Memory Management
Kernel Synchronization
Interrupt
File System Block IO
Network Protocol
Multicore
Power Management
◆上課方式◆(投影片、團體討論、老師教學風格)
主要是自己看之前的上課錄影+討論課
然後因為疫情所以每週的討論課改成 Google Meet
只有最後幾周變回實體
Demo 也是用 Google Meet 分享螢幕
討論課主要是每週的影片看完要上傳一個問題,老師會挑一些有趣的問題來討論
▼考試作業▼
分成 Lab 跟 Workshop
總而言之 Lab 就是要寫一個可以在 Raspi 上跑的作業系統,Pi 會發
作業網站:https://grasslab.github.io/osdi/en/index.html
8+1 個 Lab
Lab 0: Environment Setup
就看你可不可以跑東西上去 Pi
Lab 1: Hello World
弄個 Uart 跟寫個簡單的 Shell
Lab 2: Bootloader
主要是要寫一個 Bootloader 然後可以透過 Uart 拿 kernel 並開機
Lab 3: Exception and Interrupt
練習作 Exception, Interrupt handler
Exception Label Switch
Lab 4: Multitasking
Lab 5: Virtual File System
Lab 6: Allocator
Lab 7: Virtual File System
Lab 8: File System Meets Hardware
後面幾個懶的寫了
基本上前幾個比較像是練習 Bare metal
網路上很多教學,應該不難
後面幾個可能就是看著 Spec 想辦法變出來
Lab 都有分成 require, elective & question
elective 算是加分題,會叫你變出別的功能或是用比較優質的方法改善 require
question 是 Demo 的時候助教會問你然後你要會回答的
當然助教通常會問更多問題,不過如果是自己寫的話應該都答的出來吧
Workshop 就是一人會被分配到一個主題
我是被分到 RiscV interrupt & execption
然後你要作個簡報,最好是要有包含 Trace code 或是實做,然後要深入一點
一開始的時候,有些人的有點淺老師好像不太滿意
分數的話應該很甜吧,Lab 都有作,加分題加減寫一下應該都很高分
¥其他¥(是否注重出席率or嚴禁遲到?需要的基礎?)
疫情所以全線上,連 Demo 都不用出門,真的很讚
¢最後想說的話¢
修完之後才發現自己什麼都不知道
但可能有變成 gdb 大師
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.210.137 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/NCTU-Teacher/M.1611831592.A.B6C.html
推
01/28 22:12,
3年前
, 1F
01/28 22:12, 1F
※ 編輯: s094392 (114.32.243.84 臺灣), 01/29/2021 14:42:51
推
02/05 19:46,
3年前
, 2F
02/05 19:46, 2F