freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

linux操作系統(tǒng)分析-資料下載頁(yè)

2025-07-17 15:48本頁(yè)面
  

【正文】 用戶任意讀 /寫(xiě)物理內(nèi)存 2022/8/14 xlanchen: Linux OS Analysis 44/152 ?因此,要區(qū)分用戶態(tài)和內(nèi)核態(tài): ?禁止用戶程序和底層硬件直接打交道 (最簡(jiǎn)單的例子,如果用戶程序往硬件控制寄存器寫(xiě)入不恰當(dāng)?shù)闹?,可能?dǎo)致硬件無(wú)法正常工作 ) ?禁止用戶程序訪問(wèn)任意的物理內(nèi)存 (否則可能會(huì)破壞其他程序的正常執(zhí)行,如果對(duì)核心內(nèi)核所在的地址空間寫(xiě)入數(shù)據(jù)的話,會(huì)導(dǎo)致系統(tǒng)崩潰) 2022/8/14 xlanchen: Linux OS Analysis 45/152 ?什么是用戶態(tài)和內(nèi)核態(tài)? ?一般現(xiàn)代 CPU都有幾種不同的指令執(zhí)行級(jí)別 ?在高執(zhí)行級(jí)別下,代碼可以執(zhí)行 特權(quán)指令 ,訪問(wèn) 任意的物理地址 ,這種 CPU執(zhí)行級(jí)別就對(duì)應(yīng)著內(nèi)核態(tài) ?而在相應(yīng)的低級(jí)別執(zhí)行狀態(tài)下,代碼的掌控范圍會(huì)受到限制。只能在對(duì)應(yīng)級(jí)別允許的范圍內(nèi)活動(dòng) ?舉例: intel x86 CPU有四種不同的執(zhí)行級(jí)別 03, Linux只使用了其中的 0級(jí)和 3級(jí)分別來(lái)表示內(nèi)核態(tài)和用戶態(tài) 2022/8/14 xlanchen: Linux OS Analysis 46/152 ?如何區(qū)分一段代碼是核心態(tài)還是用戶態(tài) ? cs寄存器的最低兩位表明了當(dāng)前代碼的特權(quán)級(jí) ? CPU每條指令的讀取都是通過(guò) cs:eip這兩個(gè)寄存器: 其中 cs是代碼段選擇寄存器, eip是偏移量寄存器。 ?上述判斷由硬件完成 ?一般來(lái)說(shuō)在 Linux中,地址空間是一個(gè)顯著的標(biāo)志:0xc0000000以上的地址空間只能在內(nèi)核態(tài)下訪問(wèn),0x00000000- 0xbfffffff的地址空間在兩種狀態(tài)下都可以訪問(wèn) 注意 :這里所說(shuō)的地址空間是邏輯地址而不是物理地址 2022/8/14 xlanchen: Linux OS Analysis 47/152 虛擬內(nèi)存 ?物理內(nèi)存有限,是一種稀缺資源 ?局部性原理 ?空間局部性 ?時(shí)間局部性 ?按需調(diào)頁(yè) ?頁(yè)框 ?利用磁盤(pán)上的交換空間 2022/8/14 xlanchen: Linux OS Analysis 48/152 ?進(jìn)程的虛擬地址空間 ?獨(dú)立的地址空間( 32位, 4GB),每個(gè)進(jìn)程一個(gè) ?在 Linux中, 3G以上是內(nèi)核空間, 3G以下是用戶空間 ?4G的進(jìn)程地址空間使用進(jìn)程私有的二級(jí)頁(yè)表進(jìn)行地址轉(zhuǎn)換(虛擬地址 ?物理地址) ?頁(yè)面大?。?4KB ?頁(yè)目錄、頁(yè)表 ?若對(duì)應(yīng)的內(nèi)容在內(nèi)存中,則對(duì)應(yīng)的二級(jí)頁(yè)表項(xiàng)記錄相應(yīng)的物理頁(yè)框信息 ?否則根據(jù)需要進(jìn)行裝載或者出錯(cuò)處理 2022/8/14 xlanchen: Linux OS Analysis 49/152 ?進(jìn)程調(diào)度后,執(zhí)行一個(gè)新的被調(diào)度的進(jìn)程之前,要先進(jìn)行頁(yè)表切換 ?Linux中的內(nèi)核空間 ?每個(gè)進(jìn)程 3G以上的空間用作內(nèi)核空間 ?從用戶地址空間進(jìn)入內(nèi)核地址空間不經(jīng)過(guò)頁(yè)表切換 ?而是通過(guò)中斷 /異常 /系統(tǒng)調(diào)用入口(也只能如此) 2022/8/14 xlanchen: Linux OS Analysis 50/152 站在 CPU執(zhí)行指令的角度 CPU eip esp 0xc0000000 c=gets() main … some action 進(jìn)程管理 wait keyborad queue 進(jìn)程 x 進(jìn)程 x idle intr 8259 keyboard 中斷處理 Wakeup progress 內(nèi)核其他模塊 esp eip esp cs ds等等 esp 系統(tǒng)調(diào)用處理 idtr 2022/8/14 xlanchen: Linux OS Analysis 51/152 從內(nèi)存的角度來(lái)看 物理內(nèi)存 0x00000000 內(nèi)核代碼 內(nèi)核靜態(tài)數(shù)據(jù) 0x00400000 0x20220000 用戶代碼或數(shù)據(jù) 0xc0000000 虛擬空間 ( 512M) ( 3G) 在 Linux中,物理內(nèi)存 總是被映射在 3G以上 的空間中, 若物理內(nèi)存過(guò)大,需 使用其他的映射技術(shù) 0x00000000 0xe0000000 0xffffffff 2022/8/14 xlanchen: Linux OS Analysis 52/152 第一章、緒論 ?主要內(nèi)容 ?Linux簡(jiǎn)介 ?一些預(yù)備知識(shí) ?操作系統(tǒng)基本概念 ?堆棧 ?內(nèi)核態(tài) vs 用戶態(tài) ?虛擬內(nèi)存 ?分析和實(shí)驗(yàn)驗(yàn)證環(huán)境 ?VMware。 virtualbox ?SourceInsight ?相關(guān)工具介紹: GNU Tools等 2022/8/14 xlanchen: Linux OS Analysis 53/152 VMware ?模擬 x86硬件平臺(tái) ?可以在 Windows、 Linux等平臺(tái)上運(yùn)行 ?VMWare模擬出來(lái)的硬件包括: ?主板、內(nèi)存、硬盤(pán) (IDE和 SCSI)、 DVD/CDROM、軟驅(qū)、網(wǎng)卡、聲卡、串口、并口和 USB口。 ?上述硬件是固定型號(hào)的,與 Host OS的實(shí)際硬件無(wú)關(guān) ?可以直接從 ISO文件上安裝 ?在一個(gè) VMware上安裝的的操作系統(tǒng)形成的虛擬機(jī),可以拷貝到其他裝有 VMware的機(jī)器上 2022/8/14 xlanchen: Linux OS Analysis 54/152 virtualbox ? ?Windows和 Kubuntu下都可以安裝 ?Kubuntu下安裝的是 virtualboxose (Open Source Edition) 2022/8/14 xlanchen: Linux OS Analysis 55/152 SourceInsight ?源代碼閱讀和編輯工具 ?擁有內(nèi)置的對(duì) C/C++, C和 Java等程序的分析。 ?能分析源代碼并動(dòng)態(tài)維護(hù)符號(hào)數(shù)據(jù)庫(kù),能自動(dòng)顯示有用的上下文信息。 ?到 的試用版,試用期估計(jì)在 30天左右 2022/8/14 xlanchen: Linux OS Analysis 56/152 當(dāng)前源碼文件 當(dāng)前文件的 符號(hào)表 當(dāng)前所看的符號(hào)上下文 當(dāng)前所看符號(hào)的調(diào)用關(guān)系 所有文件列表 Project相關(guān)信息 按目錄,文件列表 文件類型配置信息符號(hào)表 符號(hào)類型分類 2022/8/14 xlanchen: Linux OS Analysis 57/152 作業(yè) 1: ?C語(yǔ)言中堆棧的作用是什么? ?為什么要有內(nèi)核態(tài)與用戶態(tài)的區(qū)別?
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1