<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      EDKII工程結構介紹

      EDK2工程結構介紹

      目錄

      一、EDK2工程目錄的一級結構

      ayuan@ayuan-virtual-machine:~/src/edk2$ tree -L 1
      .
      ├── ArmPkg			# ARM架構相關代碼
      ├── ArmPlatformPkg
      ├── ArmVirtPkg
      ├── BaseTools		# 編譯EDK2所需基礎工具集,包含編譯器,鏈接器等
      ├── Build			# 構建輸出目錄,編譯后生成的文件,包括各種平臺的固件鏡像
      ├── Conf			# target.txt文件用于定義要構建的平臺,構建目標和工具鏈配置
      ├── CONTRIBUTING.md
      ├── CryptoPkg		# OpenSSL加密支持
      ├── DynamicTablesPkg
      ├── edksetup.bat
      ├── edksetup.sh		# 環境配置腳本,設置編譯環境變量,初始化工作環境
      ├── EmbeddedPkg
      ├── EmulatorPkg
      ├── FatPkg
      ├── FmpDevicePkg
      ├── IntelFsp2Pkg
      ├── IntelFsp2WrapperPkg
      ├── License-History.txt
      ├── License.txt
      ├── Maintainers.txt
      ├── MdeModulePkg		# 模塊化核心包
      ├── MdePkg				# 最基礎的核心包,UEFI標準定義,基本數據類型和庫函數
      ├── NetworkPkg			# 網絡協議棧
      ├── OvmfPkg				# 虛擬機固件
      ├── PcAtChipsetPkg
      ├── pip-requirements.txt
      ├── PrmPkg
      ├── ReadMe.rst
      ├── RedfishPkg
      ├── SecurityPkg			# 安全功能
      ├── ShellPkg			# shell命令行界面
      ├── SignedCapsulePkg
      ├── SourceLevelDebugPkg
      ├── StandaloneMmPkg
      ├── UefiCpuPkg			#  x86 CPU相關功能
      ├── UefiPayloadPkg
      └── UnitTestFrameworkPkg
      
      29 directories, 8 files
      

      二、常用的目錄文件

      2.1 BaseTools--構建工具鏈

      1. 主要的子目錄

        BaseTools/
        ├── Source/
        │   ├── C/        # 用 C 寫的底層工具(如 GenFw、GenFds)
        │   ├── Python/   # Python腳本,如 build.py、TargetTool.py
        │   └── Vfr/      # 處理 VFR (Visual Form Representation) 文件
        └── Scripts/
        
      2. BaseTools相當于編譯器+腳本+構建系統。EDk2中所有工程編譯都依賴這個目錄里的工具,在編譯EDk2工程之前,首先就要執行make -C BaseTools。編譯出的關鍵命令如:GenFw、GenFds、buildVfrCompile等。隨后執行edksetup.sh,上面編譯出的命令就會被添加到環境變量PATH中。

      2.2 Conf--配置目錄

      1. 主要的目錄文件

        Conf/
        ├── target.txt     # 構建目標(最重要!)
        ├── tools_def.txt  # 定義編譯器工具鏈
        └── build_rule.txt # 定義構建規則
        
        # 以上文件在執行 source edksetup.sh 之后自動從 BaseTools/Conf 復制到當前的 Conf/ 目錄中
        
      2. Conf中最主要的文件是target.txt。它告訴編譯系統使用哪個平臺(.dsc),目標架構是什么,使用的編譯工具鏈是什么,輸出的目錄位置等。要修改的主要參數如下:

        # 適用于本地x86_64的最小配置
        ACTIVE_PLATFORM       = OvmfPkg/OvmfPkgX64.dsc
        TARGET                = DEBUG
        TARGET_ARCH           = X64
        TOOL_CHAIN_TAG        = GCC5
        BUILD_RULE_CONF       = Conf/build_rule.txt
        
      3. 也可以build的時候設置臨時參數build -a X64 -t GCC5 -p OvmfPkg/OvmfPkgX64.dsc -b DEBUG

      2.3 MdePkg--基礎核心包

      1. 內容

        Include/	# 各種 UEFI 接口頭文件(例如 Uefi.h)
        Library/	# 各種庫(如 DebugLib、BaseLib)
        Protocol/	# UEFI 協議定義
        
      2. MdePkg相當于C標準庫和操作系統內核API,提供了整個EDK2架構所需的基礎定義和接口。

      2.4 MdeModulePkg -- 常用模塊包

      1. 目錄結構

        MdeModulePkg/
        ├── Application/     # 應用(比如 HelloWorld)
        ├── Library/
        ├── Universal/       # 通用驅動模塊
        └── Bus/             # 各種總線類驅動
        
      2. MdeModulePkgMdePkg的基礎上實現了很多實際可用的模塊,比如,UEFI驅動(Driver),UEFI 應用(Application),常見的服務(如Variable服務、Boot Manager)。

      2.5 OvmfPkg--OVMF固件工程目錄

      Open Virtual Machine Firmware Package

      1. 目錄結構

        OvmfPkg/
        ├── OvmfPkgX64.dsc   # 平臺描述文件
        ├── OvmfPkgX64.fdf   # 鏡像布局文件
        ├── PlatformDxe/     # 平臺初始化驅動
        ├── Include/
        └── Library/
        
      2. 這是用于在QEMU虛擬機上運行的完整的UEFI固件工程,支持X64、IA32平臺。該虛擬平臺固件實現包在編譯后輸出文件OVMF.fd(完整的固件鏡像)和OVMF_CODE.fd / OVMF_VARS.fd分區鏡像(代碼和變量區分離版本)。要編譯該鏡像,前面我們配置了target.txtACTIVE_PLATFORM=OvmfPkg/OvmfPkgX64.dsc

      總結

      本文只是對EDK2工程主要文件的一個大概理解,有助于建立系統性的思考,后續深入學習中會繼續補充。


      寄語:每天進步一點點,腳踏實地!

      posted @ 2025-10-31 18:29  ayuan_01  閱讀(6)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产一区二区三区不卡自拍| 国产永久免费高清在线| 国产永久免费高清在线观看| 免费VA国产高清大片在线| 无码日韩人妻精品久久蜜桃| 久久a级片| 日本高清久久一区二区三区| 青柠影院免费观看高清电视剧丁香| 国产精品视频一区不卡| 九九热免费精品在线视频| 国产熟女真实乱精品51| 蜜臀av午夜精品福利| 免费看黄片一区二区三区| 亚洲成熟女人av在线观看| 果冻传媒董小宛视频| 深泽县| 成人精品动漫一区二区| 国产精品中文字幕日韩| 日本丰满老妇bbb| 亚洲欧洲av一区二区久久| 加勒比无码人妻东京热| 丝袜美腿亚洲综合在线观看视频| 曰韩无码二三区中文字幕| 精品午夜福利短视频一区| 久久综合给合久久狠狠狠| 亚洲人成色99999在线观看| 国精品91人妻无码一区二区三区| 欧洲精品色在线观看| 屏东县| 区一区二区三区中文字幕| 熟妇啊轻点灬大JI巴太粗| 平顶山市| 久久综合97丁香色香蕉| 人人人澡人人肉久久精品| 日本中文字幕在线| 玖玖在线精品免费视频| 国产成人欧美日韩在线电影| 欧美人成精品网站播放| 亚洲一区二区三区| 国产情侣激情在线对白| 久久精品日日躁夜夜躁|