同樣的作業系統在不同板子上乙個能跑乙個不能跑的問題

2021-08-19 12:58:30 字數 614 閱讀 7399

做板子適配的時候,發現同樣的映象,在乙個板子上能跑,另乙個板子上不能跑。發生的現象如下

在走到這一步,之後一直是這樣。當時以為是系統初始化未完成的問題,查了**查好久都沒解決。在查了bios裡的standard cmos setup之後,發現記憶體才126m,而視覺化配置的heap達到512m,這屬於系統初始化的時候操作記憶體非法訪問了,沒有初始化完。在視覺化配置的時候在heap裡配置的堆到96m的時候,問題得到解決。

系統初始化的流程還需要進一步系統了解,在排錯的時候是從sysalib.s檔案_start()開始排查,然後是bootcard.c然後查的prjconfi.c檔案裡的函式。介面流程順序如下。

在解決這個問題的時候用了bochs除錯這個映象,系統不停的重啟,在給映象的記憶體配到6m之後,這個問題解決掉了,暫時不知道什麼原因。

乙個小作業系統

1 1 chapter1 a boot.asm 乙個 作業系統 可以只有20行 把下面這段 用nasm編譯一下 nasm boot.asm o boot.bin org 07c00h 告訴編譯器程式載入到7c00處 mov ax,cs mov ds,ax mov es,ax call dispstr...

乙個簡單的作業系統

電腦上電後,bios在自檢後會根據使用者指定的裝置啟動作業系統。假設我們指定軟盤為啟動盤,bios會把軟盤的第乙個扇區 512位元組 讀取到記憶體的0x7c00處,如果這個扇區的最後兩個位元組為0xaa55,bios會跳轉到0x7c00處開始執行。我們可以利用這樣乙個過程做乙個簡單的作業系統。我們的...

Qt 在同乙個QLabel中實現不同樣式的顯示

2011 11 30 22 16 46人閱讀收藏 舉報最近在用qt做乙個醫療預約系統,要在乙個qlabel上顯示預約憑證,由於預約憑證的內容樣式不一,因此用到了html標籤來實現不同字型大小 行間距 位置 居中 居左 居右 的設定 以下是乙個簡單的demo,實現 如下 void widget sho...