sam多年前在剛接觸linux時第乙個專案是個dvr專案,此專案當時誰作誰辭職。在sam加入之前,幾乎已經換了3撥人了。sam作為乙個外行加入其中,並最終幾乎重寫了所有模組,雖然現在想來程式架構和**質量相當不好。但總算把東西給作出來了。呵呵,閒話不說,回到主題:在那個專案中,我們一些頻繁修改的檔案,放置於ramdisk中,一方面加快訪問速度,另一方面也防止檔案寫壞。
ramdisk簡單的來說,就是用記憶體模擬為硬碟,並在其上儲存臨時檔案(因為重新啟動後,檔案會消失)
ramdisk技術在windows,linux下均可實現。windows下可選用類似ramdisk4g這樣的軟體實現。linux下,則需要kernel配置。我們主要關注linux下實現。
0. 準備工作:
在linux下建立ramdisk,需要mkfs.ext2。但sam遇到的嵌入式平台並不支援。最簡單的方法當然是重新編譯busybox.
#cd busybox
#make menuconfig
linux system utilities ---> [*] mkfs_ext2
#make
編譯出busybox.
執行之:
#./busybox mkfs.ext2
發現可用。
1.kernel配置支援ramdisk:
#make menuconfig
device drivers ---> [*] block devices --->
ram block device support
選擇將其編譯為modules.
(4096) default ram disk size (kbytes)
預設值為4096。所以ramdisk預設為4m.
想要建立150m ramdisk. 設定為:153600(1024*150) kbytes
2.建立ramdisk:
當kernel有ramdisk support支援時,就會有/dev/ramx這樣的裝置。裝置未被格式化時,不佔記憶體,也不能被使用。
#./busybox mkfs.ext2 /dev/ram0
//此時才真正可用,並占用預設大小記憶體。執行此命令時,系統會顯示這個塊裝置具體有多大。
#mount /dev/ram0 /tmp
//將裝置mount到mount 點。此時可以使用df 命令檢視。
3. 建立指定大小的ramdisk:
3.
其實記憶體檔案系統中最方便的是:tmpfs.
建立方便,也可以隨意改變大小。
用法:先建立掛載點。
#mkdir /data/game
#mountgame_tmpfs/data/game -t tmpfs -o -o size=10m
建立了乙個名為:game_tmpfs,大小為10m, 掛載點為/data/game的記憶體檔案系統。
給定名字game_tmpfs的優點是,在mount 或df中可以很容易找到自己的記憶體檔案系統。
wget用法:
#cc=arm-hisiv200-linux-gnueabi-gcc ./configure --host=arm-linux --without-ssl
#make
wget username:password@site/dir/filename.ext
wget -rm --ftp-user=public --ftp-password=3dijoy
嵌入式系統簡介
僅僅是乙個簡單的整理 硬體 主機板,主機板上有soc system on chip ram,flash,其他晶元,外設。soc,片上系統,裡面有cpu 可能是arm,可能是mips 片內外設,如記憶體控制器,display controller,flash controller,gpio,inter...
嵌入式系統簡介
嵌入式系統是一種 完全嵌入受控器件內部,為特定應用而設計的專用計算機系統 嵌入式系統一般指非pc系統,它包括硬體和軟體兩部分。硬體包括處理器 微處理器 儲存器及外設器件和i o埠 圖形控制器等 軟體部分包括作業系統軟體 os 要求實時和多工操作 和應用程式程式設計。特點1 bootloader 它是...
嵌入式系統簡介
一 嵌入式發展歷程 嵌入式計算機的真正發展是在微處理器問世之後。1971年11月,算術運算器和控制器電路成功的被整合在一起,推出了第一款微處理器,其後各廠家陸續推出了8位 16位微處理器。以這些微處理器為核心所構成的系統廣泛地應用於儀器儀表 醫療裝置 機械人 家用電器等領域。微處理器的廣泛應用形成了...