日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OVMF基础

發布時間:2024/4/13 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OVMF基础 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是OVMF

The Open Virtual Machine Firmware (OVMF) project aims?to support firmware for Virtual Machines using the edk2?code base. ?More information can be found at:

http://www.tianocore.org/ovmf/

OVMF可以在如下的網站下載:

https://github.com/tianocore/edk2

下載到的是一個edk2的完全版本,其中的OvmfPkg可以用來生成OVMF二進制。

?

OVMF編譯

Ubuntu下的編譯:

為了能夠順利編譯,需要有以下的幾個操作:

1. 進入BaseTools,生成編譯工具,使用命令:make;

2. 下載nasm和iasl,使用命令:apt install nasm iasl;

之后返回主目錄,使用下面的命令進行編譯:

?

[plain]?view plain?copy
  • source?edksetup.sh??
  • build?-p?OvmfPkg/OvmfPkgX64.dsc?-a?X64??
  • 編譯后的文件可以在Build目錄下找到。

    Windows下的編譯:

    首先需要安裝VS,可以使用Visual Studio Community 2015,它有免費的版本就可以編譯UEFI。

    安裝Community的時候需要注意安裝的過程中需要添加如下的配置,否則編譯UEFI時會報錯:

    ?

    其它還需要安裝ASL和nasm編譯器,這就是兩個exe,不過需要放置到正確的位置(位置由Conf下的tools_def.txt決定)。

    另外,在GitHub上下載的代碼沒有提供Windows下的UEFI需要使用的工具(就是Linux里用make編譯出來的),需要自己下載。

    https://code.csdn.net/jiangwei0512/edk2-udk2017.git中有以上的Windows工具和ASL、nasm等,可以直接拿來用。

    需要將ASL放到C目錄下。(也可以不換,不過需要修改Conf下的tools_def.txt文件,比較麻煩)

    編譯的時候打開Windows Shell,然后進入UEFI目錄,運行Edk2Setup.bat,然后執行Build就可以編譯OVMF了。

    ?

    OVMF運行

    這里使用QEMU來運行OVMF。

    所以首先需要下載QEMU:apt install qemu

    之后就可以運行了:

    ?

    [plain]?view plain?copy
  • qemu-system-x86_64?-bios?OVMF.fd??
  • 下面是運行的結果:

    ?

    ?



    這里有個問題,就是沒有UEFI的打印,為了能夠有打印,首先需要添加編譯選項并重新生成二進制:

    ?

    [plain]?view plain?copy
  • build?-p?OvmfPkg/OvmfPkgX64.dsc?-a?X64?-D?DEBUG_ON_SERIAL_PORT??
  • 然后在使用qemu運行時,需要加入新的參數:

    ?

    ?

    [plain]?view plain?copy
  • qemu-system-x86_64?-bios?OVMF.fd?-serial?stdio ?
  • 轉載于:https://www.cnblogs.com/klb561/p/8921920.html

    總結

    以上是生活随笔為你收集整理的OVMF基础的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。