Overview¶
作業系統是什麼?¶
- Software abstraction layer of hardware
- Resource management
- CPU scheduling
- Memory management
- File systems
為何要有作業系統?¶
優點:簡單直觀
- 早期只有
batch,程式需要完全跑完才能執行下一個程式 I/O系統速度比CPU慢非常多,導致CPU常常處在idle狀態- 人們想要跟電腦有互動,但因為
I/O太慢,而且程式在跑的時候無法中斷,導致輸入一個訊號可能要很久才能拿到回應
於是人們開始思考如何降低CPU的idle時間
Spooling (Simultaneous Peripheral Operation On-Line)¶
作業系統例子¶
- Windows 10
- OSX
- OpenBSD
- Arch linux
Linux只是一個kernel,要加上
user space programs,如file manager, terminal emulator, desktop environment才算是完整的作業系統