2007年6月25日星期一

模擬Linux on Palm 5

Palm產品家族自第五代開始,部份採用Intel Xscale處理器,日前qemu的CVS tree也正式納入支援,於是熱血的hackers又開始鑽研是否可模擬Palm 5的硬體,並在其上運作Linux。在一番嘗試後,Alex很高興跟大家宣佈這個訊息,請見「Testing Linux4Palm on qemu」一文。他在 Hack&Dev計畫 (目標即是將Linux移植到原本運作PalmOS的硬體環境) 的程式碼加入以qemu為基礎的Palm 5的硬體模擬器,目前支援的硬體列表如下:

  • palmtc - Palm Tungsten|C (PXA255)
  • palmz72 - Palm Zire72 (PXA270)
  • palmtx - Palm TX (PXA270)
  • palmld - Palm LifeDrive (PXA270)
取得與編譯方式如下:
# svn co https://hackndev.svn.sourceforge.net/svnroot/hackndev/qemu/trunk qemu-hnd
# cd qemu-hnd
# ./configure --target-list=arm-softmmu --cc=gcc-3.4
# make -j2
預先取得必要的核心與檔案系統影像檔,假設解開壓縮檔後位於./palm/0.0.3-fnw目錄,則可透過以下方式執行: (其中一個hardware model)
$ cat RUN.sh
#!/bin/sh
BASE_DIR=`pwd`/palm/0.0.3-fnw
./arm-softmmu/qemu-system-arm \
-M palmld \
-kernel $BASE_DIR/zImage \
-sd $BASE_DIR/Angstrom-opie-image-palmld-0.0.3-alpha.rootfs.ext2 \
-append "root=/dev/mmcblk0 psplash=false"
啟動畫面如下:
過程中可透過qemu作LCD panel與終端機顯示 (serial) 的切換,也就是 Ctrl-Alt-[13]。以下是終端機操作畫面:
系統模擬越來越多元了。

2 則留言:

shelandy 提到...

一定要gcc 3.4 嘛?

Mandriva 2007.1 下預設的是 4.1.2 我改.
/configure --target-list=arm-softmmu --cc=gcc-4.1.2 他會抱怨qemu 跟 gcc 4.x 八字不合。不過容許我繼續下去。那我先放棄裝上Mnadriva 官方的 gcc-3.3 跟gcc3.3-cpp

./configure --target-list=arm-softmmu --cc=gcc-3.3
遇到
ERROR: "gcc-3.3" either does not exist or does not work
我只能用
./configure --target-list=arm-softmmu --disable-gcc-check
遇到他抱怨QEMU需要SDL 或Cooca

先寫到這裡,之後再來過

jserv 提到...

請參考:
http://www.kidsquid.com/cgi-bin/moin.cgi/FrequentlyAskedQuestions

Thanks!