qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          操作系統(tǒng)課堂筆記(2)操作系統(tǒng)的硬件環(huán)境之中央處理器

          專門設(shè)計了一系列基本機制:
            - 具有特權(quán)級別的處理器狀態(tài),能在不同特權(quán)級運行的各種特權(quán)指令
            - 硬件機制使得OS可以和普通程序隔離, 實現(xiàn)保護和控制
            1.CPU的構(gòu)成與基本工作方式
            處理器由運算器、控制器、一系列的寄存器以及高速緩存構(gòu)成
            運算器實現(xiàn)指令中的算術(shù)和邏輯運算,是計算機計算的核心
            控制器負(fù)責(zé)控制程序運行的流程,包括取指令、維護CPU狀態(tài)、CPU與內(nèi)存的交互等等
            處理器中的寄存器
            寄存器提供了一定的存儲能力,速度比主存快得多,造價高,容量一般都很小
            兩類寄存器:
            用戶可見寄存器,高級語言編譯器通過算法分配并使用之,以減少程序訪問內(nèi)存次數(shù)
            控制和狀態(tài)寄存器,用于控制處理器的操作
            由OS的特權(quán)代碼使用, 以控制其他程序的執(zhí)行
            用戶可見寄存器
            機器語言直接引用
            包括數(shù)據(jù)寄存器、地址寄存器以及條件碼寄存器
            數(shù)據(jù)寄存器(data register)又稱通用寄存器
            主要用于各種算術(shù)邏輯指令和訪存指令
            地址寄存器(address register)用于存儲數(shù)據(jù)及指令的物理地址、線性地址或者有效地址,用于某種特定方式的尋址。如index register、segment pointer、stack pointer
            條件碼寄存器保存CPU操作結(jié)果的各種標(biāo)記位, 如算術(shù)運算產(chǎn)生的溢出、符號等等
            控制和狀態(tài)寄存器
            用于控制處理器的操作
            大部分對于用戶是不可見的
            一部分可以在某種特權(quán)模式(由OS使用)下訪問
            常見的控制和狀態(tài)寄存器:
            程序計數(shù)器(PC:Program Counter),記錄將要取出的指令的地址
            指令寄存器(IR:Instruction Register),包含最近取出的指令
            程序狀態(tài)字(PSW:Program Status Word),記錄處理器的運行模式信息等等
            2.特權(quán)指令和非特權(quán)指令
            特權(quán)指令:只能由操作系統(tǒng)使用的指令
            使用多道程序設(shè)計技術(shù)的計算機指令系統(tǒng)必須要區(qū)分為特權(quán)指令和非特權(quán)指令
            特權(quán)指令一般引起處理器狀態(tài)的切換
            處理器通過特殊的機制將處理器狀態(tài)切換到操作系統(tǒng)運行的特權(quán)狀態(tài)(管態(tài))
            然后將處理權(quán)移交給操作系統(tǒng)中的一段特殊代碼,這一個過程稱為陷入
            CPU如何知道當(dāng)前運行的是操作系統(tǒng)還是一般應(yīng)用軟件?有賴于處理器狀態(tài)的標(biāo)識
          3.處理器的狀態(tài)
            根據(jù)運行程序?qū)Y源和機器指令的使用權(quán)限將處理器設(shè)置為不同狀態(tài)——程序狀態(tài)字PSW
            多數(shù)系統(tǒng)將處理器工作狀態(tài)劃分為管態(tài)和目態(tài)
            管態(tài):操作系統(tǒng)管理程序運行的狀態(tài),較高的特權(quán)級別,又稱為特權(quán)態(tài)(特態(tài))、核心態(tài)、系統(tǒng)態(tài)
            目態(tài):用戶程序運行時的狀態(tài),較低的特權(quán)級別,又稱為普通態(tài)(普態(tài))、用戶態(tài)
            具體處理器將CPU狀態(tài)劃分為兩種、三種或四種
            4.程序狀態(tài)字PSW (Program Status Word )
            在PSW中專門設(shè)置一位,根據(jù)運行程序使用指令的權(quán)限而設(shè)置CPU狀態(tài)
            CPU的工作狀態(tài)碼——指明管態(tài)還是目態(tài),用來說明當(dāng)前在CPU上執(zhí)行的是操作系統(tǒng)還是一般用戶,從而決定其是否可以使用特權(quán)指令或擁有其他的特殊權(quán)力
            條件碼——反映指令執(zhí)行后的結(jié)果特征
            中斷屏蔽碼——指出是否允許中斷
            CPU狀態(tài)的轉(zhuǎn)換
            目態(tài)→管態(tài)
            唯一途徑  是  中斷(廣義)
            管態(tài)→目態(tài)
            設(shè)置PSW(修改程序狀態(tài)字) 可實現(xiàn)
            一條特殊的指令:訪管指令
            供用戶調(diào)用操作系統(tǒng)的功能(服務(wù))
            INT,TRAP,SYSCALL
          相關(guān)文章:
          http://www.51testing.com/index.php?action-viewnews-itemid-852486-php-1

          posted on 2013-09-27 10:34 順其自然EVO 閱讀(276) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 天祝| 北流市| 阿鲁科尔沁旗| 隆尧县| 喀喇沁旗| 邢台县| 巴塘县| 濉溪县| 武威市| 鹿邑县| 行唐县| 富锦市| 红原县| 富宁县| 建水县| 祥云县| 天柱县| 乌鲁木齐市| 滨州市| 常州市| 手游| 谢通门县| 高陵县| 庆元县| 陵川县| 水城县| 海林市| 剑河县| 廊坊市| 镇康县| 长子县| 怀集县| 肥乡县| 湖南省| 伊宁市| 保定市| 明光市| 驻马店市| 赫章县| 梧州市| 昂仁县|