# 4/21 課堂分享 > 筆記:[Running Linux 7.0 on stm32h750](https://hackmd.io/@rota1001/stm32h750-linux) > 筆記:[Optimize Linux Kernel Size for STM32F429](https://hackmd.io/@rota1001/linux-stm32f429) 要幹麻呢?運行 Linux 核心 ## STM32H750 - 僅有 1MB RAM - 沒有 MMU,所以沒有虛擬記憶體 做了什麼? - QEMU 軟體模擬 - 寫 bootloader - XIP,讓程式不需要載入 RAM - 調整 kernel config,去掉用不到的 driver - 寫 device tree - 做 kernel patch 把資料結構變小、去除用不到的東西 - 整理工具鏈,進行使用 uClibc-ng 的使用者程式驗證 - 運行動態連結的 busybox ### 6.18.7 ![image](https://hackmd.io/_uploads/H1iGAoVTZg.png) ### 6.19 ![image](https://hackmd.io/_uploads/rkZSAiVa-x.png) ### 7.0 ![image](https://hackmd.io/_uploads/ByEICiNTWl.png) ![image](https://hackmd.io/_uploads/B14vAs4aWl.png) ## STM32F429-Discovery - 有 8MB SDRAM - 同樣沒有 MMU 到了 RAM 比較大的地方,開始驗證更多軟體堆疊 - 前面的所有東西再做一次 - MMC 子系統,用 SD 卡當硬碟 - SPI 螢幕 - fbdev ![0z8ccm2u](https://hackmd.io/_uploads/BJDtzgA3Zx.jpg =25%x) - fbcon ![QnwD47iE](https://hackmd.io/_uploads/ByoYfl02-e.jpg =25%x) - hwrng - GNU LTO - FDPIC 執行檔工具鏈整理 - 動態連結庫 - 跑 DOOM [Run DOOM on Linux 7.0 on STM32 ](https://youtu.be/d48P93aViJQ) - 同樣更新到 Linux 7.0