Chapter 3 基本概念

前一章 | 首頁 | 下一章

OS User Interface

Command Interpreter(命令解譯器)

System Call(系統呼叫)

  1. Def:
  2. 作為user program執行時與OS之間的溝通介面,當user program需要OS提供服務時,藉由呼叫system call(伴隨trap to monitor mode)通知OS,OS可依據system call ID查表,啟動service routine執行,得到結果,再傳回給user program,完成服務請求
  3. System Call種類:(P3-8~3-9)
    1. Process Control
    2. File Management
    3. Device Management
    4. Information Maintenance
    5. Communication
  4. system call的參數傳遞
  5. 有三種方法:
    1. 法一:利用registers儲存參數
    2. 法二:將參數存在memory中的某個表格或Block,同時將此表格的起始位址存在一個register中,將此register傳給OS:
    3. 法三:利用system stack保存參數
      • push(保存)參數
      • OS利用POP取出參數
      • 不限制參數的數目及長度

Layered Approach(for OS design and implementation)

(P3-14~3-15)
Def:
Top-down decomposition、Bottom-up testing(Top-Down細分功能,Bottom-Up測試)

Virtual Machine(虛擬機器)

Java Virtual Machine

註:Automatic garbage collection的語言:Java、Smalltalk、LISP、Ada

Mechanism & Policy(少考,屬於軟工)

Mechanism Policy
"How" to accomplish a task decide "what" will be done
變動頻率小。很少變動or不變 變動頻率較大。經常變動
優點:mechanism與policy之分開考量,有助於增加系統的flexibility

Microkernel

小整理

  1. Multiprogramming與Multiprocesses
  2. Multiprogramming不一定是Multiprocesses
    Multiprocesses一定是Multiprogramming
  3. Multiprogramming與Time sharing
  4. Multiprogramming不一定是Time sharing
    Time sharing一定是Multiprogramming
  5. Multiprogramming與Multiusers
  6. Multiprogramming不一定是Multiusers
    Multiusers一定是Multiprogramming
  7. Real time與On-Line system
  8. Real time一定是On-Line system
    On-Line system不一定是Real time