Skip to content

Overview

作業系統是什麼?

  • Software abstraction layer of hardware
  • Resource management
  • CPU scheduling
  • Memory management
  • File systems

為何要有作業系統?

優點:簡單直觀

  1. 早期只有batch,程式需要完全跑完才能執行下一個程式
  2. I/O系統速度比CPU慢非常多,導致CPU常常處在idle狀態
  3. 人們想要跟電腦有互動,但因為I/O太慢,而且程式在跑的時候無法中斷,導致輸入一個訊號可能要很久才能拿到回應

於是人們開始思考如何降低CPUidle時間

Spooling (Simultaneous Peripheral Operation On-Line)

作業系統例子

  • Windows 10
  • OSX
  • OpenBSD
  • Arch linux

Linux只是一個kernel,要加上user space programs,如file manager, terminal emulator, desktop environment才算是完整的作業系統