第二章操作系統(tǒng)的界面_第1頁
第二章操作系統(tǒng)的界面_第2頁
第二章操作系統(tǒng)的界面_第3頁
第二章操作系統(tǒng)的界面_第4頁
第二章操作系統(tǒng)的界面_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

第二章操作系統(tǒng)的界面2.1系統(tǒng)的生成與啟動系統(tǒng)的生成系統(tǒng)的啟動實例分析2.1系統(tǒng)的生成與啟動/系統(tǒng)的生成系統(tǒng)的生成(SYSGEN)在系統(tǒng)生成過程中,下列信息必須確定:(1)CPU的類型。(2)內(nèi)存的容量。(3)可用設備的類型和數(shù)量;(4)操作系統(tǒng)的功能選項或使用的參數(shù)。2.1系統(tǒng)的生成與啟動/系統(tǒng)的生成系統(tǒng)的生成(SYSGEN)多種方法生成:(1)根據(jù)以上信息修改OS源碼,完全編譯(2)編譯過的庫中選擇合適的模塊連接生成(3)構(gòu)造完全由各種表驅(qū)動的系統(tǒng)2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動系統(tǒng)的啟動裝入操作系統(tǒng)內(nèi)核以啟動計算機系統(tǒng)的過程。初始引導核心初始化系統(tǒng)初始化2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動系統(tǒng)的啟動裝入操作系統(tǒng)內(nèi)核以啟動計算機系統(tǒng)的過程。了解基本概念

BIOS

內(nèi)存地址2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動BIOS

“BasicInputOutputSystem”的縮略語,中文名稱“基本輸入輸出系統(tǒng)”。它是一組固化到計算機內(nèi)主板上一個ROM芯片上的程序,它保存著計算機最重要的基本輸入輸出的程序、中斷程序、系統(tǒng)設置信息、開機上電自檢(POST)程序和系統(tǒng)啟動自舉程序。2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動BIOS中斷程序:完成硬件設備的初始化系統(tǒng)設置程序:設置CMOS參數(shù)POST上電自檢:完成對硬件配制的檢測BIOS系統(tǒng)自舉:在自檢成功后將磁盤上的引導程序裝入內(nèi)存,讓其運行以裝入系統(tǒng);

2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動內(nèi)存地址機器中的內(nèi)存一般有般安裝有32MB、64MB或128MB內(nèi)存,這些內(nèi)存的每一個字節(jié)都被賦予了一個地址,以便CPU訪問內(nèi)存。

2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動系統(tǒng)的啟動初始引導階段

BIOS的工作2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動系統(tǒng)的啟動核心初始化階段在操作系統(tǒng)的內(nèi)核代碼裝入內(nèi)存后,引導程序?qū)⒖刂茩?quán)轉(zhuǎn)交給內(nèi)核可執(zhí)行代碼,從此核心代碼開始執(zhí)行。內(nèi)核首先進行初始化工作,包括對硬件以及接口電路的初始化,對內(nèi)核所有數(shù)據(jù)結(jié)構(gòu)進行初始化。2.1系統(tǒng)的生成與啟動/系統(tǒng)的啟動系統(tǒng)的啟動系統(tǒng)初始化工作主要任務是做好準備工作,使系統(tǒng)處于命令接受狀態(tài),這時用戶就可使用計算機來完成自己的工作。在這個階段,操作系統(tǒng)為用戶創(chuàng)建工作環(huán)境,接受并解釋執(zhí)行用戶的程序和指令。例如:Window系統(tǒng)啟動出現(xiàn)桌面,Unix/Linux系統(tǒng)啟動出現(xiàn)的命令行界面或X-Window界面,均表明系統(tǒng)已經(jīng)成功啟動,用戶可以使用計算機了。2.1系統(tǒng)的生成與啟動/實例分析Windows系統(tǒng)的啟動從按下計算機開關(guān)啟動計算機,到登入到桌面完成啟動,一共經(jīng)過了以下幾個階段:

1.預引導(Pre-Boot)階段;

2.引導階段;

3.加載內(nèi)核階段;

4.初始化內(nèi)核階段;

5.登錄。2.1系統(tǒng)的生成與啟動/實例分析預引導階段

按下計算機電源使計算機啟動,并且在WindowsXP專業(yè)版操作系統(tǒng)啟動之前這段時間,我們稱之為預引導(Pre-Boot)階段,在這個階段里,計算機首先運行PowerOnSelfTest(POST),POST檢測系統(tǒng)的總內(nèi)存以及其他硬件設備的現(xiàn)狀。2.1系統(tǒng)的生成與啟動/實例分析預引導階段

如果計算機系統(tǒng)的BIOS(基礎輸入/輸出系統(tǒng))是即插即用的,那么計算機硬件設備將經(jīng)過檢驗以及完成配置。計算機的基礎輸入/輸出系統(tǒng)(BIOS)定位計算機的引導設備,然后MBR(MasterBootRecord)被加載并運行。在預引導階段,計算機要加載WindowsXP的NTLDR文件。

2.1系統(tǒng)的生成與啟動/實例分析引導階段包含4個小的階段。

首先,計算機要經(jīng)過初始引導加載器階段(InitialBootLoader),在這個階段里,NTLDR將計算機微處理器從實模式轉(zhuǎn)換為32位平面內(nèi)存模式。在實模式中,系統(tǒng)為MS-DOS保留640kb內(nèi)存,其余內(nèi)存視為擴展內(nèi)存,而在32位平面內(nèi)存模式中,系統(tǒng)(WindowsXPProfessional)視所有內(nèi)存為可用內(nèi)存。2.1系統(tǒng)的生成與啟動/實例分析引導階段包含4個小的階段

接著,NTLDR啟動內(nèi)建的mini-filesystemdrivers,通過這個步驟,使NTLDR可以識別每一個用NTFS或者FAT文件系統(tǒng)格式化的分區(qū),以便發(fā)現(xiàn)以及加載WindowsXPProfessional,到這里,初始引導加載器階段就結(jié)束了。

2.1系統(tǒng)的生成與啟動/實例分析引導階段包含4個小的階段。

接著系統(tǒng)來到了操作系統(tǒng)選擇階段,如果計算機安裝了不止一個操作系統(tǒng)(也就是多系統(tǒng)),而且正確設置了boot.ini使系統(tǒng)提供操作系統(tǒng)選擇的條件下,計算機顯示器會顯示一個操作系統(tǒng)選單,這是NTLDR讀取boot.ini的結(jié)果。2.1系統(tǒng)的生成與啟動/實例分析引導階段

NTLDR就是從boot.ini查找WindowsXPProfessional的系統(tǒng)文件的位置的。如果在boot.ini中只有一個操作系統(tǒng)選項,則系統(tǒng)不出現(xiàn)操作系統(tǒng)選擇菜單,直接引導到那個唯一的系統(tǒng)或者默認的系統(tǒng)。在選擇啟動WindowsXPProfessional后,操作系統(tǒng)選擇階段結(jié)束,硬件檢測階段開始。

2.1系統(tǒng)的生成與啟動/實例分析引導階段

在硬件檢測階段中,將收集計算機硬件信息列表并將列表返回到NTLDR,這樣做的目的是便于以后將這些硬件信息加入到注冊表HKEY_LOCAL_MACHINE下的hardware中。硬件檢測完成后,進入配置選擇階段。如果計算機含有多個硬件配置文件列表,可以通過按上下按鈕來選擇。如果只有一個硬件配置文件,計算機不顯示此屏幕而直接使用默認的配置文件加載WindowsXP專業(yè)版。

2.1系統(tǒng)的生成與啟動/實例分析引導階段引導階段結(jié)束。在引導階段,系統(tǒng)要用到的文件一共有:NTLDR,Boot.ini,,ntokrnl.exe,Ntbootdd.sys,bootsect.dos(可選的)。

2.1系統(tǒng)的生成與啟動/實例分析加載內(nèi)核階段

在加載內(nèi)核階段,ntldr加載稱為WindowsXP內(nèi)核的ntokrnl.exe。系統(tǒng)加載了WindowsXP內(nèi)核但是沒有將它初始化。接著ntldr加載硬件抽象層(HAL,hal.dll),然后,系統(tǒng)繼續(xù)加載HKEY_LOCAL_MACHINE\system鍵,NTLDR讀取select鍵來決定哪一個ControlSet將被加載??刂萍邪O備的驅(qū)動程序以及需要加載的服務。2.1系統(tǒng)的生成與啟動/實例分析加載內(nèi)核階段

NTLDR加載HKEY_LOCAL_MACHINE\system\service\...下start鍵值為0的最底層設備驅(qū)動。當作為ControlSet的鏡像的CurrentControlSet被加載時,ntldr傳遞控制給內(nèi)核,初始化內(nèi)核階段就開始了。2.1系統(tǒng)的生成與啟動/實例分析初始化內(nèi)核階段

在初始化內(nèi)核階段開始的時候,彩色的WindowsXP的logo以及進度條顯示在屏幕中央,在這個階段,系統(tǒng)完成了啟動的4項任務:

內(nèi)核使用在硬件檢測時收集到的數(shù)據(jù)來創(chuàng)建了HKEY_LOCAL_MACHINE\HARDWARE鍵。

內(nèi)核通過引用HKEY_LOCAL_MACHINE\system\Current的默認值復制ControlSet來創(chuàng)建了CloneControlSet。CloneControlSet配置是計算機數(shù)據(jù)的備份,不包括啟動中的改變,也不會被修改。2.1系統(tǒng)的生成與啟動/實例分析

系統(tǒng)完成初始化以及加載設備驅(qū)動程序,內(nèi)核初始化那些在加載內(nèi)核階段被加載的底層驅(qū)動程序,然后內(nèi)核掃描HKEY_LOCAL_MACHINE\system\CurrentControlSet\service\...下start鍵值為1的設備驅(qū)動程序。2.1系統(tǒng)的生成與啟動/實例分析這些設備驅(qū)動程序在加載的時候便完成初始化,如果有錯誤發(fā)生,內(nèi)核使用ErrorControl鍵值來決定如何處理,值為3時,錯誤標志為危機/關(guān)鍵,系統(tǒng)初次遇到錯誤會以LastKnownGoodControlSet重新啟動,如果使用LastKnownGoodControlSet啟動仍然產(chǎn)生錯誤,系統(tǒng)報告啟動失敗,錯誤信息將被顯示,系統(tǒng)停止啟動;2.1系統(tǒng)的生成與啟動/實例分析值為2時錯誤情況為嚴重,系統(tǒng)啟動失敗并且以LastKnownGoodControlSet重新啟動,如果系統(tǒng)啟動已經(jīng)在使用LastKnownGood值,它會忽略錯誤并且繼續(xù)啟動;當值是1的時候錯誤為普通,系統(tǒng)會產(chǎn)生一個錯誤信息,但是仍然會忽略這個錯誤并且繼續(xù)啟動;當值是0的時候忽略,系統(tǒng)不會顯示任何錯誤信息而繼續(xù)運行。2.2操作系統(tǒng)提供的服務和用戶接口操作系統(tǒng)操作系統(tǒng)計算機用戶程序接口(系統(tǒng)調(diào)用)命令接口、圖形接口2.2操作系統(tǒng)提供的服務和用戶接口2.2.1操作系統(tǒng)提供的基本服務執(zhí)行程序:系統(tǒng)必須能將程序裝入內(nèi)存并運行該程序。數(shù)據(jù)I/O:程序運行時可能需要I/O操作。信息存?。河脩舭凑瘴募麃斫ⅰ⒆x寫、修改以及刪除文件,使信息的存取更加方便、可靠。通信服務:一個進程需要與另外一個進程交換信息。錯誤檢測和處理:操作系統(tǒng)通常需要知道可能出現(xiàn)的錯誤。2.2操作系統(tǒng)提供的服務和用戶接口2.2.2命令接口

操作系統(tǒng)的命令接口應包括一組命令、終端處理程序和命令解釋程序。其中,命令解釋程序的主要作用是在屏幕上給出提示符,請求用戶輸入命令,然后讀入命令,并識別命令,再轉(zhuǎn)到相應的命令處理程序去執(zhí)行,并將處理結(jié)果送屏幕上顯示。若用戶鍵入的命令有錯,命令解釋程序未能識別,或在執(zhí)行過程中出現(xiàn)錯誤,則顯示出錯信息。2.2操作系統(tǒng)提供的服務和用戶接口2.2.2命令接口

大家比較熟悉的命令解釋程序有MS-DOS/windows98的,windows2000的cmd.exe以及UNIX/Linux的shell程序。2.2操作系統(tǒng)提供的服務和用戶接口2.2.2命令接口下面列舉出部分常用DOS內(nèi)部命令(help<command>來查找)磁盤操作類:

chkdsk

磁盤檢查;fdisk

磁盤分區(qū);format磁盤格式化文件目錄類:

md

建立目錄;cd

設置或顯示當前目錄;rd刪除目錄;copy復制文件;rename文件更名;del刪除文件;type顯示文件內(nèi)容其他類:ver

顯示版本號;time顯示系統(tǒng)時間;date顯示系統(tǒng)日期。2.2操作系統(tǒng)提供的服務和用戶接口2.2.3圖形用戶接口(GUI)為了方便用戶地使用,Apple公司在20世紀80年代中期推出了圖形用戶接口(GUI)。使用GUI來操作計算機,用戶不需要記憶復雜的操作命令,只需要用鼠標點擊代表相應命令的圖形(稱為圖標)來運行程序,因而極大地方便了用戶2.2操作系統(tǒng)提供的服務和用戶接口2.2.4程序接口程序接口又稱應用編程接口API(ApplicationProgrammingInterface),允許運行程序調(diào)用操作系統(tǒng)的服務和功能。程序接口由一組系統(tǒng)調(diào)用(SystemCall))組成,用戶程序使用“系統(tǒng)調(diào)用”就可獲得操作系統(tǒng)的底層服務,使用或訪問系統(tǒng)的各種軟硬件資源。2.2操作系統(tǒng)提供的服務和用戶接口2.2.4程序接口系統(tǒng)調(diào)用的概念兩種運行程序類型管理程序用戶程序處理機工作狀態(tài)劃分核心態(tài)(管態(tài)kernelmode)用戶態(tài)(用戶態(tài)usermode)2.2操作系統(tǒng)提供的服務和用戶接口2.2.4程序接口系統(tǒng)調(diào)用的概念系統(tǒng)調(diào)用實質(zhì)上是應用程序請求操作系統(tǒng)內(nèi)核完成某一功能的一種特殊的過程調(diào)用每個操作系統(tǒng)都提供幾百種系統(tǒng)調(diào)用,包括:外存文件與目錄的讀寫,各種I/O設備的使用,在程序中啟動另一個程序,查詢和統(tǒng)計系統(tǒng)資源使用情況等等。系統(tǒng)調(diào)用就是用戶程序?qū)Σ僮飨到y(tǒng)的調(diào)用2.2操作系統(tǒng)提供的服務和用戶接口2.2.4程序接口系統(tǒng)調(diào)用的實現(xiàn)系統(tǒng)調(diào)用可以進入操作系統(tǒng)內(nèi)核,而過程調(diào)用則不能進入操作系統(tǒng)的內(nèi)核。對于系統(tǒng)調(diào)用,控制是由原來的用戶態(tài)轉(zhuǎn)換為系統(tǒng)態(tài),這是借助于中斷和陷入機制來完成的,在該機制中包括中斷和陷入硬件機構(gòu)和中斷和陷入處理程序兩部分。2.2操作系統(tǒng)提供的服務和用戶接口2.2.4程序接口系統(tǒng)調(diào)用的實現(xiàn)

(1)每個系統(tǒng)調(diào)用對應一個功能號,要調(diào)用操作系統(tǒng)的某一特定例程,必須在指令中給出對應的功能號。

(2)按功能號實現(xiàn)調(diào)用的過程大體相同,即都是通過對功能號的解釋分別轉(zhuǎn)入對應例行子程序。2.2操作系統(tǒng)提供的服務和用戶接口2.2.4程序接口系統(tǒng)調(diào)用的實現(xiàn)

2.2操作系統(tǒng)提供的服務和用戶接口Win32API和UNIX/Linux系統(tǒng)調(diào)用粗略對應關(guān)系UNIX/LinuxWin32說明forkCreatProcess

創(chuàng)建進程waitpid

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論