如標題,我有兩個用於嵌入式系統的 vmlinuz 檔案。
而且,我沒有它的原始碼和編譯器,這個嵌入式系統的開發人員也不再運作了。
第一個vmlinuz支援4個序列埠和兩個VGA。
第二個vmlinuz支援6個串列埠和1個VGA。
我想要一個支援 6 個序列埠和兩個 VGA 的 vmlinuz。
是否存在任何方法可以將驅動程式從第二個 vmlinuz 複製到第一個 vmlinuz 並替換第一個 vmlinuz 中的原始驅動程式?
答案1
是否存在任何方法可以將驅動程式從第二個 vmlinuz 複製到第一個 vmlinuz 並替換第一個 vmlinuz 中的原始驅動程式?
缺乏廣泛的逆向工程和二進制補丁,不行。
我想要一個
vmlinuz
支援6個串口和兩個VGA的。
如果沒有來源,這很可能是不可能實現的。
即使您有原始程式碼,他們提供了兩個具有不同功能的核心(即:串行與 VGA 之間的權衡)這一事實意味著可能存在硬體限制(FPGA / CPLD 資源?)。
在不知道該設備是什麼的情況下,我們只能猜測。
如果設備製造商已經發布了 BSP 的源代碼(例如:Yocto),那麼您也許可以從那裡查看它 - 但您可能仍然需要編譯某物。
如果該設備受主線核心支援(即:所有來源都在kernel.org 儲存庫),那麼您可能有一些重新建立配置和重建的能力。
- 引導系統並運行
uname -r
- 這是核心版本- 例如
4.15.0-48-generic
指向v4.15發布
- 例如
- 尋找名為
/proc/config.gz
- 的文件,在嵌入式或較新的系統上,該文件可能不存在- 這可以使用解壓縮
gzip -d < /proc/config.gz > ~/config
並隨後在配置內核時使用 - 僅當核心進行相應配置時才可用
- 發行版已經越來越多地禁用它“安全問題」
- 在嵌入式系統上,可以停用它以減小核心映像的大小。
- 這可以使用解壓縮
尋找核心配置的其他位置包括/boot
相關套件中的 和 (如果您使用的是發行版)。
如果其中一項或兩項都沒有產生結果,那麼您可能不走運。