如何從 .vmdk 映像載入核心?

如何從 .vmdk 映像載入核心?

我正在 Warrior 分支使用 poky 來生成根圖像。 Yocto 可以產生各種格式的最終影像。其中之一是 .hddimg,提取後如下所示:

EFI
bzImage
initrd
libcom32.c32
libutil.c32
rootfs
startup.nsh
syslinux
vesamenu.c32

點擊此連結:http://embeddedguruji.blogspot.com/2018/11/run-your-intels-yocto-hddimg-in-virtual.html,我將 .hddimg 檔案轉換為 .vmdk 檔案。當我使用7zip查看.vmdk檔案的內容時,與上面相同。我很好奇引導過程是如何運作的,以及核心是如何載入的。以及當 rootfs 中安裝了多個核心時如何切換預設核心。

我的這個問題來自我之前未回答的問題:https://stackoverflow.com/questions/57611557/switch-kernel-in-yocto-root-image

答案1

.hddimg 和 .vmdk 都是磁碟映像,因此它們可以啟動與普通(物理)HDD 完全相同。也就是說,它們不僅包含根檔案系統,還包含整個分割磁碟佈局。

(請注意,7zip 將僅顯示第一的它識別的分區。

像真正的磁碟一樣,這些映像有一個開機磁區(用於 BIOS)和/或 EFI 系統分割區(用於 UEFI),並且安裝了一個開機載入程式(在您的情況下是系統Linux)。虛擬機器軟體模擬完整的 BIOS,從虛擬磁碟啟動 syslinux,然後讀取其選單配置 (syslinux.cfg) 並啟動該檔案中配置的核心。

相關內容