windows xp. 教學目標 了解 windows xp 作業系統的特性 了解 windows xp...

Post on 21-Dec-2015

300 Views

Category:

Documents

5 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Windows XP

教學目標

了解 Windows XP 作業系統的特性 了解 Windows XP 的機制與架構

– 系統元件– 環境子系統– 檔案系統– 網路機制

Windows XP 的特色

微核心架構 採用主從式架構來實作多個作業系統的特性,以

使用者模式的行程模擬各種作業系統環境 安全性 :

– 透過反覆檢視程式碼與自動化軟體分析測試, Windows XP 確保它的安全性超過美國政府認定的 C-2 安全分類。

可靠性 :– Windows XP 利用硬體的虛擬記憶體機制防止系統與應用程式受

到意外的破壞。同時 Windows XP 內建的 NTFS 檔案系統,可以在系統當機後自動復原。 Windows XP 並被美國政府評估具備C2 以上的安全等級。

Windows XP 的特性 (2nd)

相容性 :– Windows XP 可執行相容 MS-DOS 、 Win16 、 OS/2 、 LAN Manager 、 IEEE

1003.1(POSIX) 、 Win32 的應用程式。並支援 FAT 、 HPFS 、 ISO9660 與NTFS 等檔案系統。

高性能 :– 在 Windows XP 內較高優先權的執行緒可以取得系統的執行權。

擴充性 :– Windows XP 使用階層式架構來實現擴充性的架構。

可攜性 :– Windows XP 系統的主要部分由 C 與 C++ 語言完成,程式碼本身具備可攜性。

國際性 :– Windows XP 設計成適合不同國家的人使用,經由國家語言支援 (NLS) API 可針

對不同地區內,提供不同的時間與貨幣表示方法。

Windows XP 系統方塊圖

硬體抽象層

硬體抽象層是一個隱藏硬體差異的軟體階層,可增加 Windows XP 的可攜性。

上層的軟體不必在乎抽象層內不同硬體操作的細節,增加系統的可攜性,並使得核心的維護管理簡單化

Windows XP 核心的工作

核心分派程式與同步機制 執行緒和排班 軟體中斷 例外和中斷 電源失效復原

核心分派程式與同步機制

沒有單獨的一個排班程式 排班機制分散在核心中跟排班相關的觸發機制來完成,

也就是核心分派程式 主要工作

– 執行緒的排班– 同步機制– 計時器管理– 軟體中斷(非同步與延遲程序呼叫)– 例外事件分派

核心分派程式與同步機制 (2nd)

分派物件– 引發核心分派程式執行排班與分派動作的時機 – 包括事件物件 (event object) 、互斥物件 (mutex) 、

排斥物件 (mutant) 、號誌物件 (semaphore object) 、執行緒物件 (thread object) 、行程物件 (process object) 、計時器物件

具互斥功能的同步機制– 事件物件、互斥物件、號誌物件

Windows XP 執行緒狀態轉移圖

剛產生 就緒

待命

執行中

等待

結束

過渡

被搶先下個要執行

分頁被移出

分頁回來了

重新啟動

執行結束被搶先或者

時間分量用完

等待事件等待結束

本文切換

初始化完成

等待結束

排班

多層回饋佇列排班法– 即時級 (16~31) 、可變級 (1~15) 、系統級 (0)

提供硬性和軟性處理器偏好 降低執行優先權

– 可變級執行緒的可用時間分量( quantum )結束時 – 背景視窗 ( 並減少時間分量 )

提升執行優先權– 可變級執行緒由等待狀待恢復成就緒狀態時 – 前景視窗 ( 並增加時間分量 )

可搶先式排班,但不是硬性即時

軟體中斷

延遲程序呼叫 (DPC) 非同步程序呼叫 (APC)

延遲程序呼叫 (DPC)

核心要呼叫某個沒有即時性的系統呼叫,它可以將延緩程序呼叫 (deferred procedure call , DPC)物件放入佇列中,並產生 DPC 中斷

核心限定的中斷優先級 (IRQL)通常比延緩程序中斷優先級高,所以延遲程序呼叫被暫緩執行。當核心限定的中斷優先級降到比 DPC 中斷優先級小時, DPC 物件由佇列取出,並呼叫該沒有即時性的系統呼叫

非同步程序呼叫 (APC)

執行緒呼叫同步系統呼叫時,執行緒必須等到系統呼叫結束後,才可繼續進行下一步驟。

呼叫非同步系統呼叫時,執行緒可以立即繼續執行下一步驟。 – 呼叫非同步系統呼叫時,會傳入一個非同步程序呼叫

(asynchronous procedure call , APC)給系統。– 當非同步系統呼叫服務結束時,執行緒將被中斷而自

動執行非同步程序呼叫。

核心物件管理程式

物件導向的系統 所有的物件都會依照其物件型態實現一套虛擬函

示,以方便管理程式的管理和使用者模式下的程式操作 – create() 、 open() 、 close() 、 delete() 、 query_na

me() 、 parse() 、 security()

當核心物件的參考計數降為 0時,系統將刪除此核心物件,永久性的物件除外。

虛擬記憶體管理程式

空間配置 記憶體的保留與交付 虛擬位址的轉換和分頁表的架構共用記憶體 分頁替換

– 工作集合模式

虛擬記憶體的配置

虛擬記憶體位址的轉換

本地程序呼叫管理程式

各子系統間的訊息傳遞服務– 各個環境子系統、安全管理、網頁服務、網路檔案系統、隨插

即用 採用的技術

– 透過通訊埠的訊息佇列,將少量的訊息由一個行程複製到另一個行程。此種方法一次最多複製 256 個位元組。

– 透過共用記憶段物件傳送大量的訊息,將資料放在共用的段落,以避免大量的複製資料。

– 快速本地程序呼叫 (quick LPC) 透過一個減輕負擔的主機執行緒,一個提供共用記憶區的 64KB 分段物件與一個提供同步機制的事件配對物件 (event-pair object)傳遞資料

本地程序呼叫示意圖

環境子系統

MS-DOS 環境 Win16 環境 Win32 環境 POSIX 子系統 OS/2 子系統

檔案系統

FAT12– 最大僅到 512MB

FAT16– 最大到 4GB

FAT32– 最大可以支援 32GB 的硬碟分割區

HPFS– IBM 位 OS/2 作業系統發展的檔案系統

NTFS– 微軟位 NT 作業系統發展的檔案系統

跨距磁碟區示意圖

等量磁碟區示意圖

鏡射磁碟區示意圖

同位磁碟區示意圖

通訊協定

伺服器訊息區段 (server message-block , SMB) – 一種共同網際網路檔案系統 (Common Internet File

System , CIFS) NetBIOS

– 建立網路上兩個邏輯名稱之間的邏輯連結,以及支援SMB 對話時所需的可靠資料傳輸。

NetBEUI– IBM於 1985年發表的 NetBIOS 使用者擴充介面

通訊協定 ( 續 )

TCP/IP– 目前廣泛使用在網際網路的通訊協定

點對點通道協定 (point-to-point tunneling protocol , PPTP)– 遠端伺服機器可以在傳送的資料內加以編碼,並支援多重通訊協定的虛擬私有網路 (virtual private networks , VPNs) 。

IPX– Novell 的 IPX資料服務,被廣泛的用於 PC 的區域網路上。

通訊協定 ( 續 )

WebDAV– 網路分散創作暨版本協定是一種以 http為基礎的跨越

網路合作創作協定 AppleTalk

– AppleTalk通訊協定是 Apple公司制定的通訊協定,讓麥金塔電腦之間可以簡單地分享檔案。

遠端程序呼叫示意圖

網域

信任關係– 單向 (one-way trust): 若 A信任 B ,但無特別指定 B信任 A ,則 B 不信任 A 。

– 轉移 (transitive trust):轉移信任是雙向的,若 A信任B , B信任 C ,則 A 、 B 、 C彼此互相信任。

– 互相連結 (cross-link trust): 若 A 與 B常常互相連結,每次都要透過標準的信任認證,是非常耗費資源。所以 A 與 B此時可以建立互相連結的信任關係,直接認證另一節點。

小結

Windows XP 支援多工的作業環境與多種的應用程式執行環境,包括 MS-DOS 、 Win16 、 Win32 與 POSIX 應用程式執行環境。

Windows XP 提供虛擬記憶體、整合式的快取、先佔式多工、國際化與安全的機制,充分利用硬體的特性與新技術,使得 Windows XP 成為個人電腦上一套先進的作業系統。

top related