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

正文內容

現(xiàn)代微機原理與接口技術接口第10章-在線瀏覽

2024-11-05 18:47本頁面
  

【正文】 5 4 3 2 1 0 PWT PCD 4KB對齊的頁表基地址 P RW US AVL A 0 頁目錄項 PWT PCD 4KB對齊的頁框基地址 P RW US AVL A D 頁表項 63 36 35 12 11 9 8 7 6 5 4 3 2 1 0 0 G Pentium III 36位地址下的 4KB分頁方式地址轉換 32位線性地址 頁目錄項號 頁面號 偏移 CR3 36位物理地址 31 30 29 21 20 12 11 0 頁目錄 頁表 PDPT項號 頁目錄指針表 4 64位 512 64位 512 64位 低 12位 高 24位 現(xiàn)代微機原理與接口技術 25 32位線性地址 頁目錄項號 偏移 CR3 36位物理地址 31 30 29 21 20 0 頁目錄 PDPT項號 頁目錄指針表 4 64位 512 64位 頁目錄項 PWT PCD 2MB對齊的頁框基地址 P RW US AVL A D 63 36 35 21 20 12 11 9 8 7 6 5 4 3 2 1 0 1 G 低 21位 高 15位 Pentium III 36位地址下的 2MB分頁方式地址轉換 現(xiàn)代微機原理與接口技術 26 計算機底層硬件 操作系統(tǒng)內核與 VxD 操作系統(tǒng)提供的接口 應用軟件 虛擬機與 VxD的引入 特權級 3 特權級 0 Windows 9x驅動程序編寫 現(xiàn)代微機原理與接口技術 27 Windows 9x SYSVM Win16地址空間 Win16程序 Win16程序 Win16程序 Win16程序 Win32程序 Win32地址空間 Win32程序 Win32地址空間 …… DOSVM DOS程序 DOSVM DOS程序 …… 現(xiàn)代微機原理與接口技術 28 I/O端口訪問 執(zhí)行 in, out指令 CPL ≤ IOPL? IOPM相關位 =0? 進行 I/O操作 否 否 產生一個一般保護異常 是 是 IOPM是對所有 VM都起作用的權限機制,它以位( bit)來代表每個端口。 IOPL用以表示指定的 I/O操作處于特權級的哪一級。 CPL當前段的 I/O優(yōu)先級,它實際上是 CS段選擇符的第 0~第 1位。 其他各種 VxD可以通過安裝回調例程來響應處理各種異常和中斷 ,但是它們不能改變中斷描述符表 IDT中給出的各種 VMM異常處理程序。 對于硬件中斷, VMM則將控制權交給 VPICD(虛擬可編程中斷控制器)處理, VPICD就調用其他 VxD通過系統(tǒng)服務 VPICD_Virtualize_IRQ安裝的回調例程處理硬件中斷。 現(xiàn)代微機原理與接口技術 33 VMM異常處理程序使用 IRET或 IRETD指令返回到虛擬機中,虛擬機中的應用程序重新獲得控制從而繼續(xù)執(zhí)行。 程序如下: 特殊應用:如何利用保護模式下中斷的處理流程設法使自己從用戶級轉到核心級? 現(xiàn)代微機原理與接口技術 35 include include include // DWORDLONG, //DWORD,WORD等數(shù)據(jù)類型 DWORD _cr0; // 用來保存 CR0寄存器的值 void _declspec( naked) newint3( void) // 運行在核心級的 // 中斷 3處理程序 { _asm { mov eax,cr0 // 這是必須在核心級才能執(zhí)行的 // 特權指令 mov _cr0,eax } _asm iretd // 中斷返回( 為什么不是 ret?) } 現(xiàn)代微機原理與接口技術 36 int main( int argc, char* argv[]) {DWORDLONG idtr,saveidt; WORD newgate[4]={0x0000,0x0028,0xee00,0x0000}; // 中斷門描述符, DPL=3 _asm { sidt idtr // 將 IDTR的值存在 idtr變量開 // 始的 6個字節(jié)中 mov ebx,DWORD ptr[idtr+2] // 把 IDT的 // 基地址讀入 EBX寄存器 add ebx,24 // 選擇中斷 3作為進入核心級的 // 入口,中斷 3的門描述符 // 的地址是 IDT基地址加上 3*8 // (每個門描述符 8個字節(jié)) mov esi,ebx lea edi,saveidt 現(xiàn)代微機原理與接口技術 37 movsd // 保存原來中斷 3的門描述符 movsd // 到 saveidt中 lea eax,newint3 mov newgate,ax shr eax,16 mov [newgate+6],ax // 向新的中斷描述符中填入 // 中斷處理程序的入口偏移量 lea esi,newgate mov edi,ebx movsd // 用新中斷描述符在 IDT中 movsd // 替換原來的中斷 3描述符 int 3h // 觸發(fā)中斷 3,使程序跳轉到 // 0級執(zhí)行中斷處理程序 現(xiàn)代微機原理與接口技術 38 lea esi,saveidt mov edi,ebx movsd movsd // 恢復原來中斷 3的門描述符 } printf( cr0=0x%x,_cr0); // 輸出結果 return 0; } 現(xiàn)代微機原理與接口技術 39 虛擬設備驅動程序( VxD)基礎 1. VxD的文件結構 VxD的五個段 ? VxD_CODE 保護模式下的代碼段 含設備驅動程序回調例程、服務程序、 API接口函數(shù)和控制程序。 ? VxD_ICODE 保護模式下的初始化代碼段 初始化的時候用的服務程序和過程。初始化后被丟棄。 現(xiàn)代微機原理與接口技術 40 typedef struct tagDDB { DWORD DDB_Next; // VMM使用這一項來指出 // 下一個 DDB的地址 WORD DDB_SDK_Version; // 建立該 VxD所使用的 // SDK/DDK的版本號 WORD DDB_Req_Device_Number; // 設備 ID。一個物理設備可以有多個這樣的數(shù)據(jù)結構。每個物理設備被創(chuàng)建一個 PDO 功能設備對象 : 簡稱 FDO,在 PDO之上,描述設備功能的相關數(shù)據(jù)結構。用于修改現(xiàn)有功能驅動程序的行為。 現(xiàn)代微機原理與接口技術 46 FiDO FDO FiDO PDO 上層過濾器驅動程序 功能驅動程序 下層過濾器驅動程序 總線驅動程序 IRP I/O系統(tǒng)服務 Win32子系統(tǒng) 應用程序 I/O管理器 用戶態(tài) 核心態(tài) 設備對象棧 46頁 現(xiàn)代微機原理與接口技術 47 WDM驅動程序模型中,每個硬件設備可以有多個驅動程序: 功能驅動程序 :管理 FDO所代表的設備,負責其初始化、處理 I/O操作完成時產生的中斷事件并為用戶提供一種適當?shù)脑O備控制方式。硬件或軟件人員可利用過濾器驅動程序修改現(xiàn)有功能驅動程序的行為。這個驅動程序實際上和同類設備共同擁有。 2. 硬件設備的驅動程序種類 現(xiàn)代微機原理與接口技術 48 總線驅動程序檢測到新的硬件 用戶使用控制面板中的 “ 添加新硬件 ” 向導安裝一個設備 PnP管理器為該設備和它的驅動程序在注冊表的配置表中添加一些條目 PnP管理器可能需要調整已經(jīng)分配給已存在設備的資源,使需要的資源對新設備可用 3. 設備驅動程序安裝的順序 硬件接入 PnP管理器創(chuàng)建 PDO 現(xiàn)代微機原理與接口技術 49 驅動程序被裝入后,執(zhí)行 DriverEntry程序。該函數(shù)創(chuàng)建一個 FiDO,從而在過濾器驅動程序和 FiDO之間建立了水平連接 按照 INF文件的指令安裝驅動程序 現(xiàn)代微機原理與接口技術 50 PnP管理器繼續(xù)向上執(zhí)行,依次裝入并調用每個低層過濾器、功能驅動程序和每個高層過濾器,直到完成整個設備對象棧 AddDevice把 PDO連接到 FiDO上 PnP管理器給設備發(fā)送各種 PnP IRP PnP管理器給 發(fā)送 “ 啟動設備 ” PnP IRP告訴驅動程序已經(jīng)給它分配了哪些資源 , 驅動程序使用這些資源分配啟動它的設備 驅動程序處于等待處理 IRP的狀態(tài) 現(xiàn)代微機原理與接口技術 51 當應用程序因要向驅動程序提出各類請求(如讀、寫數(shù)據(jù)等)而調用相關函數(shù)的時候,
點擊復制文檔內容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1