青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

無我

讓內心永遠燃燒著偉大的光明的精神之火!
靈活的思考,嚴謹的實現
豪邁的氣魄、頑強的意志和周全的思考

【轉】計算機與操作系統啟動原理

計算機與操作系統啟動原理
                                      
轉載自:http://wolfhacker.blogchina.com/wolfhacker/1719979.html
近由于學習操作系統原理,加上自己對底層的興趣,查閱了不少資料,現結合《INSIDE WINDOWS NT》以及網上不少網友的文章,以及自己的粗略理解,整理出關于操作系統啟動的詳細資料,以資共享,當然這其中有不少是摘錄的文字,請原文作者原諒,如果有錯誤,還請各位指正:
在剛開機加電時,根據X386CUP的特性,代碼段(CS,CODE SEGMENT)寄存器的值為全1,指令計數器(IP,INSTRUCTION POINTER)的值為全0,既CS=FFFF、IP=0000。這時CPU根據CS和IP 的值執行FFFF0H處的指令。由于FFFF0H已經到了基本內存的高地址頂端,所以,FFFF0H處的指令一般總是一個JMP指令,jump到另一個位於ROM BIOS中的位置(就是執行BIOS中的系統測試代碼,隨著制作BIOS廠商的不同而會有些許差異 )它負責開機自檢。如檢查內存,鍵盤等。在自檢過程中,ROM BIOS會在上位內存(UMB,UPPERMEMORY BLOCK)中進行掃描,看看是否存在合法的設備控制卡ROM BIOS(如:SCSI卡上的ROM),如果有,就執行其中的一些初始化代碼。緊接著系統測試碼之后,控制權會轉移給ROM中的啟動程序(ROM bootstrap routine),這個程序會將磁盤上的第零軌第零扇區讀入內存中(這就是一般所謂的boot sector,如果你曾接觸過電腦病毒,就大概聽過它的大名。假定硬盤是系統的啟動磁盤。硬盤的第一扇區稱為主引導記錄(MBR, MASTER BOOTRECORD)。MBR 的長度為512字節。可分為兩部分:第一部分為引導(PRE-BOOT)區,占了446個字節;第二部分為分區表(PARTITION PABLE),共有66個字節,記錄硬盤的分區信息。預引導區的作用之一是找到標記為活動(ACTIVE)的分區,并將活動分區的引導區讀入內存。如果用軟盤啟動計算機,ROM BIOS 讀入的是軟盤的引導區,既軟盤的第一個扇區。),至於被讀到內存的哪里呢? --絕對位置07C0:0000(即07C00h處),這是IBM系列PC的特性。經過一系列復雜操作后,最后將控制權轉移給操作系統。

對于linux而言,開機磁盤的boot sector上的正是linux的bootsect程序,也就是說,bootsect是第一個被讀入內存中并執行的程序。(鑒于大家研究linux不多,linux有源代碼可參,bootsect.S->setup.S->head.S ->main.c,所以我就將linux以后的啟動略去,主要看Windows的啟動,且主要對于NT而言,2k類似。--因為9X已成為歷史)對于NT而言,boot sector上的正是Windows引導扇的引導代碼(他是在Windows安裝時被寫入的).  當引導扇區被引導后,他首先查找NTLDR.(該文件必須存在于根目錄下,否則系統提示: 
BOOT:Couldn't find NTLDR.或A kernel file is missing from the disk.NT.接著該死機了)NTLDR首先將CPU從實模式轉換到保護模式下.當NTLDR將所有的1M以下的內存頁描述符創建好后,NTLDR再開啟頁映射功能,現在NT可以訪問4G內存了.然后,NTLDR通過內建的文件系統代碼來查找根目錄下的BOOT.INI并根據BOOT.INI(這也是我們可以修改啟動選項的地方)的內容提示用戶可選的操作系統.當用戶在缺省的時間內沒有選擇.NTLDR就引導缺省的操作系統.然后NTLDR加載NTDECT.COM.調用INTxx來執行一大堆的BIOS系統調用.用來進行系統配置的檢測.所有檢測到的東西將被存到系統注冊表的HKLMHARDWAREDESCRIPTION項下.  接下來被加載的2個文件組成了WINDOWS NT的核心.那就是:HAL.DLL,NTOSKRNL.EXE.這2個文件在裝載時將被檢測PE校驗和,如果有問題或找不到.NT又要死機了.加載完這2個文件后,NTLDR再加載所有引導必須的驅動程序,然后加載HKEY_LOCAL_MACHINESYSTEMServices里的值SERVICE_BOOT_START的DRIVER.(此時不初始化.)然后NTLDR就會鎖定NTOSKRNL.EXE的main()函數,然后將控制轉移給NTOSKRNL.EXE.  接下來NT開始了自己復雜的OS核心初始化.首先調用ExpInitializeExecutive,而該函數則調用HAL.DLL里引出的函數HallnitSystem().這時.NT就完成了對中斷控制器的初始化和時間片的設定.當HallnitSystem()返回,接下來進行的就是對內存管理器,安全引用監視器,對象管理器,進程管理器的初始化.在內存管理器完成初始化后,NT才顯示Microsoft (R) Windows NT (TM) Version 4.0 (Build 1381)之類的.而后面的SERVICE PACK號碼則是從注冊表里HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlWindowsCSDVersion取出.當進程管理器初始化完成后(進程管理器是NTOSKRNL.EXE里最后被初始化的一個管理器),進程管理器產生2個進程.一個,乃是IDLE進程.一個,乃是SYSTEM進程.而當返回到ExpInitializeExecutive后,ExpInitializeExecutive就變成了IDLE線程.而IDLE線程的優先級是最低的. 
現在調用HAL激活多CPU的功能.然后將依次調用Object Manager, Executive, Kernel, Security Reference Monitor,Memory Manager,Cache Manager,Configuration Manager,I/O Manager, Process Manager. 
其中IO管理器負責完成啟動值為SERVICE_BOOT_START的驅動程序的初始化,緊接著,啟動注冊表內啟動值為SERVICE_SYSTEM_START的裝載. 
所有的DRIVER完成初始化后,還沒有任何USER MODE的程序,也沒有任何環境子系統.系統進程將調用核心函數ExInitializeSystem創建SMSS進程.就是SESSION MANAGER進程.SMSS是第一個USER MODE的應用程序.他又是一個真正的NATIVE APPLICATION.他不依賴于任何子系統.SMSS唯一需要的就是NTDLL.DLL.而且就是他創建了WIN32子系統. 
然后SMSS開始工作: 
創建LPC端口對象SmApiPort.2個線程,等待客戶請求如加載子系統等. 
創建環境變量. 
定義DOS符號聯接. 
創建附加的頁面調度文件. 
從HKEY_LOCAL_MACHINESYSTEMCurrentControlSetSession ManagerBootExecute找出引導時加載的NATIVE APPLICATION. 通常有CHKDSK.EXE等. 
調用CONFIG MANAGER完成對 HKEY_LOCAL_MACHINESAM,HKEY_LOCAL_MACHINESAMSECURITY, HKEY_LOCAL_MACHINESOFTWARE配置. 
然后加載WIN32K.SYS.這時系統就被切換到圖形狀態. 
啟動WIN32子系統.即CSRSS.EXE. 
啟動WINLOGON.EXE. 
創建用于調試的LPC端口,并創建線程來監視. 
完成了這些工作后,SMSS就永遠等待WINLOGON和CSRSS的進程對象.把自己掛起. 
WINLOGON在被啟動后.啟動SCM(服務管理器).將所有的"自動啟動"的SERVICE啟動起來.當然,WINLOGON并不等待任何SERVICE的完成啟動.很有可能用戶已經登陸而SERVICE沒有啟動出來.當用戶的START組里有某些應用程序需要依賴于某些SERVICE的存在的話,就有可能出錯.
當所有的SERVICE啟動無誤后,現在HKEY_LOCAL_MACHINESYSTEMCurrentControlSet就成為了LAST KNOWN GOOD CONTROL SET. 
當啟動SCM后,WINLOGON就創建個工作站,代表KBD,MOUSE,MONITOR.并確保連SERVICE也不能訪問該工作站,以保證安全性.當工作站創建好后,就打開3個桌面.APP,SCR SAVER,WINLOGON.然后就是建立LSA和LPC聯接.用于登陸.注銷.口令操作. 
通過調用LsaLookupAuthenticationPackage獲取MSV1_0的相關ID,用于驗證身份.創建WINLOGON窗口類.確保SAS序列鍵按下后窗口過程被調用.只有WINLOGON桌面解鎖后才能切換到其他應用程序桌面. 
在LOGON時,WINLOGON調用GINA來確認用戶登陸.(這樣也提供了一個替換NT本身登陸驗證操作的方法)當用戶驗證身份完畢,登陸成功,桌面就被解鎖.并且調用USERINIT.EXE.該程序會查找出用戶的SHELL并啟動他.然后自己就結束生命.
就這樣,一個操作系統就完全啟動了。

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/yxin1322/articles/617595.aspx

posted on 2009-09-15 18:02 Tim 閱讀(616) 評論(0)  編輯 收藏 引用 所屬分類: windows系統

<2012年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

導航

統計

公告

本博客原創文章,歡迎轉載和交流。不過請注明以下信息:
作者:TimWu
郵箱:timfly@yeah.net
來源:www.shnenglu.com/Tim
感謝您對我的支持!

留言簿(9)

隨筆分類(173)

IT

Life

搜索

積分與排名

最新隨筆

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲深夜福利| 久久精品女人| 欧美日韩成人在线播放| 亚洲欧洲一区二区在线观看| 欧美激情免费在线| 欧美精品日韩一区| 亚洲专区在线视频| 欧美一区精品| 亚洲精品久久嫩草网站秘色 | 久久精品亚洲精品| 亚洲欧美色婷婷| 久久国产精品一区二区| 亚洲欧洲在线免费| 久久久久女教师免费一区| 91久久国产综合久久| 欧美中文在线观看国产| 亚洲精品日韩一| 久久婷婷国产麻豆91天堂| 99热这里只有成人精品国产| 亚洲精品午夜| 国产精品婷婷| 亚洲人成网站777色婷婷| 亚洲欧美日韩精品久久| 亚洲第一成人在线| 亚洲在线成人精品| 日韩视频在线一区| 欧美成人一区二区在线| 久久国产视频网| 欧美日韩美女| 欧美激情精品久久久久久久变态 | 亚洲国产精品成人综合| 欧美一区中文字幕| 亚洲视频在线观看免费| 亚洲性图久久| 国产亚洲欧美日韩日本| 欧美1区2区| 欧美视频中文在线看| 午夜精品国产精品大乳美女| 欧美福利影院| 久久不射中文字幕| 欧美激情综合色| 久热精品视频在线| 久久美女性网| 久久久91精品国产一区二区精品| 欧美凹凸一区二区三区视频| 蜜臀va亚洲va欧美va天堂| 久久夜精品va视频免费观看| 玖玖精品视频| 1000部国产精品成人观看| 久久久国产一区二区| 久久综合伊人| 亚洲精品视频一区二区三区| 欧美久久电影| 亚洲欧美日韩在线一区| 久久久久九九九| 女同性一区二区三区人了人一 | 国产又爽又黄的激情精品视频| 亚洲专区一区| 在线欧美影院| 美女视频网站黄色亚洲| 久久精品欧美日韩精品| 国产日韩成人精品| 欧美wwwwww| 亚洲精品在线观| 国产精品扒开腿做爽爽爽软件 | 久久免费少妇高潮久久精品99| 欧美福利一区二区| 亚洲美女免费精品视频在线观看| 精品动漫一区二区| 亚洲——在线| 老鸭窝亚洲一区二区三区| 亚洲国产精品电影| 久久国产精品亚洲va麻豆| 欧美黄色小视频| 在线一区二区日韩| 欧美日韩综合精品| 蜜桃精品一区二区三区 | 欧美在线视频导航| 韩国女主播一区二区三区| 亚洲国产精品久久久久秋霞不卡 | 久久成人资源| 亚洲人成在线观看网站高清| 欧美日韩四区| 久久久久久精| aaa亚洲精品一二三区| 狠狠久久亚洲欧美| 欧美mv日韩mv国产网站app| 亚洲视频二区| 欧美va亚洲va日韩∨a综合色| 一本久久综合| 1024成人| 国产日韩欧美成人| 欧美日韩黄色一区二区| 久久精品官网| 亚洲精品中文字幕女同| 欧美在线www| 国产精品一区二区三区久久久| 欧美激情视频在线播放 | 久久精品亚洲| 亚洲视频网站在线观看| 亚洲福利免费| 国内成人精品2018免费看| 欧美日韩国产综合网 | 国产欧美精品在线| 欧美日韩国产999| 老鸭窝毛片一区二区三区| 欧美在线欧美在线| 亚洲精品自在在线观看| 亚洲精品一区中文| 精品成人一区二区三区| 国产午夜久久久久| 欧美午夜在线视频| 欧美精品免费看| 欧美成人精品在线观看| 久久国产精品黑丝| 西瓜成人精品人成网站| 亚洲免费视频网站| 亚洲视频在线观看三级| 日韩亚洲欧美一区| 欧美激情在线免费观看| 免费黄网站欧美| 久久天堂国产精品| 国产精品色婷婷| 国产精品日韩一区二区| 欧美午夜精品一区| 欧美日韩免费一区二区三区视频| 你懂的国产精品永久在线| 免费在线观看日韩欧美| 男女激情久久| 欧美va亚洲va香蕉在线| 欧美成人免费视频| 欧美电影专区| 欧美日本一区二区高清播放视频| 欧美一区在线直播| 欧美日韩在线高清| 国产精品女人网站| 国产精品性做久久久久久| 欧美性淫爽ww久久久久无| 国产精品videossex久久发布| 欧美三级视频在线| 国产精品网曝门| 国产一区二区三区的电影 | 亚洲国产影院| 亚洲人午夜精品免费| 日韩天堂av| 日韩小视频在线观看| 亚洲精品之草原avav久久| 国产精品99久久久久久有的能看| 99国产精品久久久久久久成人热| 中文精品视频一区二区在线观看| 亚洲午夜免费福利视频| 欧美呦呦网站| 欧美 日韩 国产在线| 欧美日本一区| 国产欧美短视频| 亚洲高清免费| 亚洲无限乱码一二三四麻| 欧美在线视屏| 91久久精品国产91性色tv| 亚洲电影免费| 一本色道久久综合一区| 久久精品二区三区| 欧美黄网免费在线观看| 国产欧美精品一区二区三区介绍| 国产欧美一区二区精品婷婷| 国产综合色在线| 亚洲精品自在久久| 久久国产精品99久久久久久老狼| 欧美a级理论片| 亚洲一级在线| 欧美精品大片| 激情综合网址| 亚洲成色www久久网站| 亚洲欧美日韩成人高清在线一区| 麻豆精品在线视频| 亚洲精品视频在线看| 久久五月天婷婷| 国产精品久久久久影院色老大 | 亚洲人成亚洲人成在线观看| 亚洲永久免费精品| 欧美国产日韩在线| 欧美专区福利在线| 欧美特黄一级| 亚洲精品小视频| 美女脱光内衣内裤视频久久影院 | 久久爱www久久做| 亚洲精品在线视频观看| 久久久久综合| 国产拍揄自揄精品视频麻豆| 中日韩美女免费视频网址在线观看| 免费在线视频一区| 午夜精品久久久久久久99水蜜桃| 欧美日韩精品二区| 亚洲欧洲一区二区在线观看 | 免费不卡在线观看av| 亚洲永久在线观看| 欧美少妇一区| 亚洲国产一成人久久精品| 久久综合给合久久狠狠狠97色69| 亚洲在线观看视频网站|