首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

Windows 95 虛擬裝置驅動程式 (VxD) 開發概覽

     編輯:VC 教學

CIH 病毒利用 VxD 技術感染系統,掌握 VxD 程式設計等於破解其運作原理。本文系統介紹 VxD 的角色、架構與開發流程。

什麼是 VxD?

VxD 是運行在 Ring 0 特權層級的 32 位元可執行程式,管理硬體裝置或已安裝軟體等系統資源,讓多個應用程式能同時存取這些資源。Windows 透過 VxD 實現多工:處理中斷、執行 I/O 操作且不干擾其他應用程式。大多數 VxD 管理硬體,部分管理軟體(如模擬 ROM BIOS),也有提升 16 位元驅動程式效能的 VxD。

標準 VxD 與開發準備

Windows 內建多種標準 VxD 支援常見硬體。若需支援非標準硬體或新增功能,可修改現有 VxD 或從頭撰寫。Windows 95 DDK 提供大量原始碼供參考。開發 VxD 需具備:

  • 組合語言與 Intel 處理器架構深厚功力
  • 保護模式、V86 模式、平坦記憶體模型、中斷/異常處理、特權級、分頁記憶體管理、I/O 保護等核心概念
  • 熟悉目標硬體規格、ROM BIOS 及相關軟體

建立 VxD 的步驟

  1. 研讀硬體手冊中 VxD 相關章節
  2. 撰寫控制程序、VxD 服務與 API 函數
  3. 建立模組定義檔(.def),匯出裝置描述區塊
  4. 組譯連結產生 .VxD 檔案
  5. 使用除錯版 Windows 95 測試(可搭配 SoftICE)
  6. 撰寫 INF 安裝檔,修改登錄並複製檔案至 SYSTEM 目錄
  7. 打包發布

本文為入門教學,詳細的 VMM 功能、VxD 服務與 API 請參閱 DDK 文件。後續章節將深入實作細節。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved