iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 3
1
自我挑戰組

作業系統概論系列 第 3

DAY3 作業系統架構(下)

  • 分享至 

  • xImage
  •  

作業系統設計跟執行

  1. 每一個OS的內部架構中都不一樣,而且差異性也很大。
  2. 設計每一個OS,都基於使用目的跟網路規範為基準,加以設計更改。
  3. 因為每一部電腦選用的硬體、系統有差異,所以在選擇OS中也會有所差別。
  4. 依照不同目的去設計OS。其目的可分為兩類:
  • 使用者:
    為了讓使用者可以方便使用,所以在設計上會傾向於易於學習、安全、快速等。
  • 系統:
    讓OS易於學習、實作、好維護、有效率等。
    而以上兩項目的,在設計時需要同時達到。
  1. 可分為兩個重要的理論來思考:
  • 目標(Policy):
    思考要做哪些事情。
  • 機制(Mechanism):
    思考如何去做要做的事情。和電腦軟體有關。
    依據以上兩個理論來思考的話,在做事上較具有彈性,而且是在進行大程式時需要注意的地方。

作業系統執行

  1. 多種類型。
  2. 是種混和型語言。
  3. 使更多高階語言更簡單連接到硬體,但速度會變慢。
  4. Emulation可以允許OS在其他電腦硬體上使用,但是效率不好。

作業系統架構

  1. 使用在一般用途上的OS是一個龐大的程式。
  2. 多種方法可以進行架構。
  • 簡單的架購:MS-DOS。
  • 複雜的架構:UNIX。
  • 分層架構:an abstrcation。
  • 微核心架構:Mach。

MS-DOS

  1. 在最小的空間裡,提供大多數的功能。

UNIX

  1. 受到硬體功能限制。
  2. 原始的UNIX架構有限。

Layered Approach

  1. OS被分割成好多猶如甜甜圈一樣的圓圈架構,可是這僅供在設計上有幫助,在實作上便不一定。

Microkernel

  1. 從內核中移動到使用者空間裡。
  2. 最有名的微核心系統--Mach。Mac OS X的核心設計便是以Mach為基礎。
  3. 取代使用者間利用模組溝通的方式,改為以訊息傳遞,但是可能會增加系統負荷量。
  4. 優點: 使得OS的核心變小成微核心,將其他的部分分配到使用者模組中去職。
  5. 是目前的設計趨勢。

模組(Modules)

  1. 在現代OS執行中,扮演裝載器核心模組的角色。
  2. 需要使用時,再下載入系統使用。
  3. 好處是方便管理、有共同介面好溝通。
  4. 有相似的層級系統,但更具有彈性,如:Linux、Solaris等。

混合系統(Hybrid System)

  1. 現代的OS並非一個純粹的系統,是一個混合型系統。
  • 在混合系統中,包含了解決性能安全上的需求。

iOS系統

  1. 被知名的蘋果公司採用,使用在iPone,iPad產品中。
  2. 在iOS系統中包含Cocoa Touch、Media Srevices、Core Services和Core OS服務。

Android系統

  1. 由Google公司以Open Handset Alliance(OHA)發展,屬於開放式架構。
  2. 其堆疊架構與iOS架構相像。
  3. 以可修改的Linux為基礎,提供行程、記憶體等管理。
  4. 需要透過虛擬機才能夠跨平台使用。

作業系統除錯方法

  1. 除錯方法主要是找到錯誤所在並加以修正。
  2. 在應用程式發生錯誤時,會產生core dump檔案儲存行程的記憶體。
  3. 當OS發生錯誤時,會產生crash dump檔案,包含內核記憶體。

調整效能(Performance Tuning)

  1. 可以消除困難,提高系統性能。
  2. OS必須提供計算與顯示系統行為的方法。

作業系統的產生

  1. OS被設計成一個能在各種類別裡執行的系統。
  2. 每一種OS都不一樣,需要依照各電腦安裝的硬體設備,選擇適合的OS來使用。
  3. SYSGEN程式就是需要確認關於硬體的組態資訊,再選擇適合的內核下載下來。

系統開始(System Boot)

  1. 當電腦或系統在開啟時,便會啟動開始執行固定內存位置。會從固定的地方開始下載。
  2. OS必須要讓硬體能夠得到並且開始執行。
  • bootstrap loader:儲存在ROM或EEPROM中定位內核,下載進入記憶體裡並執行。
  • 有時候下載bootstrap loader時,會透過boot block修改位置,然後再藉由ROM載入。
  1. 當內核下載到記憶體裡時,OS便會開始執行。

上一篇
DAY2 作業系統結構(上)
下一篇
DAY4 處理器概念(上)
系列文
作業系統概論30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0

個人覺得在介紹OS類型架構的那邊,有圖輔助會更加容易理解,只是文字敘述沒法。
//1110418(一)0705_By Zi

我要留言

立即登入留言