新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 軟盤上的Linux系統(tǒng)方案

軟盤上的Linux系統(tǒng)方案

作者: 時間:2011-05-20 來源:網(wǎng)絡(luò) 收藏
七.其他方法

本文引用地址:http://butianyuan.cn/article/150724.htm

  將內(nèi)核與文件進(jìn)行整合,如果不用Grub引導(dǎo)還有兩種選擇,不過根文件就不能象上面那樣打包再壓縮, 也不再使用initrd。把所有根文件文件放到一個目錄中(比如上面的rootfs/local),然后執(zhí)行
  
  dd if=/dev/zero of=/dev/ram0 bs=1k count=4096
  mke2fs /dev/ram0
  mount -t ext2 /dev/ram0 ramdisk/
  cp -R local/* ramdisk/
  umount ramdisk
  dd if=/dev/ram0 bs=1k | gzip -v9 > rootfs.gz
  
  1.將內(nèi)核與文件系統(tǒng)放置在一張
  
  確定內(nèi)核的大小和的大小之合沒有超出的限制。記住內(nèi)核的大小,然后將內(nèi)核寫到上:
  
  #dd if=bzImage of=/dev/fd0 bs=1k
  353+1 records in
  353+1 records out
  
  之后,設(shè)置根設(shè)備為軟盤本身,并且設(shè)置根以讀寫方式裝載
  
  #rdev /dev/fd0 /dev/fd0
  #rdev -R /dev/fd0 0
  
  上面這個例子表示dd寫了353個完整記錄和一個部分記錄到軟盤上,因此內(nèi)核占用了軟盤的前354個記錄塊。記住這個數(shù)字,然后設(shè)置內(nèi)核的Ramdisk Word。Ramdisk Word可以通過rdev命令設(shè)置,它的內(nèi)容為:


  如果15位設(shè)置的話,內(nèi)核在加載文件系統(tǒng)之前會進(jìn)行提示,這在下面將內(nèi)核與文件系統(tǒng)盤分開的情況時是必要的。
  
  對于上面的情況,需要在0-10位指出ramdisk的偏移,并將14位置1,所以得出的ramdisk word十進(jìn)制表示為:355 + 2^14 = 355 + 16384 = 16739
  
  #rdev -r /dev/fd0 16739
  
  之后
  
  #dd if=rootfs.gz of=/dev/fd0 bs=1k seek=354
  
  這樣一張同時包含內(nèi)核和文件系統(tǒng)的軟盤就成功了。
  
  2.內(nèi)核與文件系統(tǒng)分別占用一張軟盤
  
  與上面一樣
  
  #dd if=bzImage of=/dev/fd0 bs=1k
  #rdev /dev/fd0 /dev/fd0
  #rdev -R /dev/fd0 0
  不同的是ramdisk word為 0 + 2^14 + 2^15 = 49152
  #rdev -r /dev/fd0 49152
  然后換零一張軟盤
  #dd if=rootfs.gz of=/dev/fd0 bs=1k
  
  內(nèi)核、根文件系統(tǒng)、引導(dǎo)程序之間的整合方法有很多,他們各有各自的特點,有待讀者自己思考。
  
  八.前景

  按照本文方法所構(gòu)造的系統(tǒng)雖然還不完善,但通過逐步的改進(jìn),將能做出一個有價值的系統(tǒng)來。真正的嵌入式系統(tǒng)根據(jù)不同的應(yīng)用方向通常還包括圖形用戶界面或者是網(wǎng)絡(luò)瀏覽器等應(yīng)用程序。值得慶幸的是很多OpenSource的項目提供了所需要的組件,結(jié)合這些優(yōu)秀的開源項目,就可以形成一套真正的嵌入式操作系統(tǒng)。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 下一頁

關(guān)鍵詞: 方案 系統(tǒng) Linux 軟盤

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉