免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
陳渝大俠翻譯的 uClinux2.6入門

一、使用uClinux/ARM 2.6的原因?
為什么你要使用uClinux?有很多的理由使uClinux做為你的嵌入式操作系統(tǒng)。其中大部分認(rèn)為uClinux有以下好處: 

輕便 

你可以編譯linux2.6的內(nèi)核得到一個(gè)300k以下的內(nèi)核鏡像,它包括終端和一些基本的設(shè)備驅(qū)動(dòng)以及只讀文件系統(tǒng)。并且flat格式的二進(jìn)制zImage和應(yīng)用程序要比linux傳統(tǒng)使用的ELF二進(jìn)制小30%--50%,由于使用了較少的標(biāo)準(zhǔn)的C和C++庫。 
XIP(execution in place) 

你能通過XIP來在一個(gè)較小的RAM時(shí)執(zhí)行你的內(nèi)核鏡像,甚至是應(yīng)用程序。它能幫助你快速的啟動(dòng),盡管flash的存取時(shí)間或是rom啟動(dòng)鏡像足夠快以及有足夠的緩存大小。(如果我們想找到它們最優(yōu)化的平衡點(diǎn),可以交換兩者之間這些變量。) 

便宜 

MMU(內(nèi)存管理單元)核心大小大約占典型的ARM SoC(System-on-Chip單片機(jī))wafer(晶體)的30%。在典型的網(wǎng)絡(luò)和嵌入式系統(tǒng)里有一半以上的應(yīng)用程序不需要MMU。甚至如果只有一個(gè)CPU的許多RTOS(實(shí)時(shí)操作系統(tǒng))在默認(rèn)情況下也不使用MMU。 
完全的Linux應(yīng)用程序接口 

除少數(shù)情況外,你可以在uClinux平臺(tái)上完全使用Linux應(yīng)用程序接口。你能在uClibc里使用多線程以及使用標(biāo)準(zhǔn)的系統(tǒng)調(diào)用。在用戶盤里的uClinux發(fā)布包里有大量的應(yīng)用程序被移植到了uClinux系統(tǒng)上。


Easiar to adapt 

在uClinux性能里有一個(gè)有趣的特性,是應(yīng)用程序可以訪問整個(gè)系統(tǒng),包括設(shè)備里的寄存器,with a bit of wrapper ,我們能制作固件代碼做為無格式的應(yīng)用程序運(yùn)行在 uClinux上!當(dāng)然,你能加一些設(shè)備驅(qū)動(dòng)和系統(tǒng)調(diào)用來調(diào)用以及使用許多打開的Ips在混和的舊的固件代碼里。如果你計(jì)劃移動(dòng)你的固件代碼到linux,但你沒有熟悉的linux系統(tǒng)程序,uClinux是一個(gè)很好的出發(fā)點(diǎn) 

完全的linux2.6內(nèi)核的特性 

盡管uClinux很小,但它支持linux2.6內(nèi)核約定的全部的特性,包括內(nèi)核優(yōu)先級(jí)特性以及許多的文件系統(tǒng),設(shè)備驅(qū)動(dòng)。為linux約定設(shè)備驅(qū)動(dòng)端口是容易實(shí)現(xiàn)的。幾乎所有的代碼不需要改變就可以編譯,除了從虛擬地址到物理的內(nèi)存鏡像外。 
注:上面的部分由于涉及的概念太多,翻譯的不大好,請(qǐng)大家指正,謝謝。 

二、初次編譯uClinux/ARM2.6指南 

如果你決定使用uClinux做為開發(fā)環(huán)境,那么下面的部分將會(huì)讓uClinux運(yùn)行在你的linux PC機(jī)上: 

1、獲得uClinux發(fā)布包 

一個(gè)最容易得到uClinux的發(fā)布包的方法是直接訪問uClinux.org站點(diǎn): 
http://www.uclinux.org/pub/uClinux/dist/ 
注意這里發(fā)布的內(nèi)核版本可能不是最新的,但你能找到一個(gè)最新的補(bǔ)丁以及從kernel.org站點(diǎn)上找一個(gè)對(duì)應(yīng)的linux內(nèi)核版本來制作一個(gè)最新的uClinux內(nèi)核。此時(shí)(2004年05月25日)可從“http://www.uclinux.org/pub/uClinux/dist”獲得最新的發(fā)布包的版本是uClinux-dist.20040408.tar.gz。如果你對(duì)編譯軟件不是很熟悉,那么根據(jù)這個(gè)指南你將會(huì)很容易的使用這個(gè)分布包來制作你的uClinux內(nèi)核或是升級(jí)它到最新的版本。 

2、獲得最新的內(nèi)核及補(bǔ)丁 

你能到這里找到最新的uClinux/ARM內(nèi)核補(bǔ)?。?nbsp;
http://adam.kaist.ac.kr/~hschoe/  
在下載的部分,你將會(huì)找到“l(fā)inux-2.6.x-hscx.patch.gz”最新的鏈接,以及原始的內(nèi)核包: 
   http://adam.kaist.ac.kr/~hschoe/dow...5-hsc2.patch.gz 
和 http://www.kernel.org/pub/linux/ker...x-2.6.5.tar.bz2 

3、ARM-ELF工具鏈 

從linux2.6內(nèi)核代碼使用了一些更新的binutils新特性以來,你需要一個(gè)比uclinux.org站點(diǎn)上更新的ARM-ELF工具鏈來編譯內(nèi)核。你能夠從上面的與下載內(nèi)核和補(bǔ)丁相同的download部分找到最新的工具鏈,就在當(dāng)前的鏈接下: 
http://adam.kaist.ac.kr/~hschoe/dow...ols-20040427.sh 

4、硬件平臺(tái)或是一個(gè)ARMulator(ARM仿真) 

當(dāng)然你需要一個(gè)平臺(tái)來運(yùn)行uClinux內(nèi)核,請(qǐng)首先看一下注意事項(xiàng)里有那些平臺(tái)被支持。即使你不能找到適用于你的平臺(tái),或是你沒有任何的硬件平臺(tái),那你也能在你的linux PC機(jī)上運(yùn)行這個(gè)內(nèi)核:使用ARMulator(ARM仿真)。ARMulator是一個(gè)以GDB調(diào)試器為基礎(chǔ)的仿 真,這個(gè)仿真完全支持Atmel AT91x和arm7tdmi EB01。ARMulator的主頁在這: 

http://www.uclinux.org/pub/uClinux/utilities/armulator/  

你也能直接從這里下載: 

http://www.uclinux.org/pub/uClinux/...gdb-5.0.tar.bz2(原始gdb-5.0包) 
http://www.uclinux.org/pub/uClinux/...021127.patch.gz(gdb-5.0所依賴的補(bǔ)丁) 

如果你想在ARMulator上運(yùn)行內(nèi)核的ramdisk(虛擬磁盤),那么你就需要從這下載另外一個(gè)軟件包: 

http://adam.kaist.ac.kr/~hschoe/dow...040412.patch.gz 

5、如果你是初次編譯這些發(fā)布包的話,OK!從這我們將會(huì)一步一步的進(jìn)行 
(現(xiàn)在把上面所下載的軟件包都發(fā)在/root/incoming目錄里) 

(On this guide, the downloaded files are gathered on ~/incoming 
and the ARMulator is used for platform to run on.) 

6、安裝工具鏈 

以root用戶來執(zhí)行arm-elf-tools-20040427.sh,像這樣: 

[root@hyoklinux /]#/bin/sh ~/incoming/arm-elf-tools-20040427.sh 

注:~是你的root用戶目錄,當(dāng)然也可以選擇別的目錄,但這取決于你的第5步所設(shè)置的目錄。 

你將看到被安裝文件的列表,這個(gè)工具鏈的可執(zhí)行的二進(jìn)制文件被安裝到了/usr/local/bin目錄里,所以你的環(huán)境變量的搜索路徑應(yīng)包括這個(gè)目錄,通常使用的發(fā)行版像redhat等已經(jīng)將這個(gè)路徑包括在$PATH變量里,可以用下面的命令查看一下: 

[root@hyoklinux /]#echo $PATH 

7、釋放uClinux發(fā)布包 


在一個(gè)有2GB空間的目錄里來釋放uclinux發(fā)布包 
[root@hyoklinux /]# tar -zxvf ~/incoming/uClinux-dist-20040408.tar.gz 
讓我們看看uClinux-dist目錄里有什么文件 
[root@hyoklinux /]# cd uClinux-dist/ 
[root@hyoklinux uClinux-dist]# ls -al 
total 104 
drwxr-xr-x 15 1000 users 4096 Apr 8 09:27 . 
drwxr-xr-x 28 root root 4096 Apr 27 20:32 .. 
-rw-r--r-- 1 1000 users 18007 Apr 8 09:13 COPYING 
drwxr-xr-x 3 1000 users 4096 Apr 8 09:13 Documentation 
-rw-r--r-- 1 1000 users 9305 Apr 8 09:13 Makefile 
-rw-r--r-- 1 1000 users 4934 Apr 8 09:13 README 
-rw-r--r-- 1 1000 users 1743 Apr 8 09:13 SOURCE 
drwxr-xr-x 2 1000 users 4096 Apr 15 15:19 bin 
drwxr-xr-x 3 1000 users 4096 Apr 8 09:27 config <-- 為本地用戶提供的配置文件以及其它的 
drwxr-xr-x 11 1000 users 4096 Apr 8 09:27 freeswan <-- IPsec的實(shí)現(xiàn) 
drwxr-xr-x 68 1000 users 4096 Apr 8 09:23 glibc <-- GNU C庫 
drwxr-xr-x 18 1000 users 4096 Apr 8 09:28 lib <-- 許多移植到uClinux的庫,包括uC-libc. 
drwxr-xr-x 15 1000 users 4096 Apr 8 09:27 linux-2.0.x <-- uClinux 2.0.x kernel 
drwxr-xr-x 16 1000 users 4096 Apr 8 09:27 linux-2.4.x <-- uClinux 2.4.x kernel 
drwxr-xr-x 18 1000 users 4096 Apr 8 09:27 linux-2.6.x <-- uClinux 2.6.x kernel 
drwxr-xr-x 3 1000 users 4096 Apr 8 09:26 tools <-- 安裝romfs提供的程序以及其它的 
drwxr-xr-x 17 1000 users 4096 Apr 8 09:27 uClibc <-- uClibc可從uclibc.org找到,與uC-libc不同. 
drwxr-xr-x 174 1000 users 4096 Apr 8 09:27 user <-- the“userland”被移植的應(yīng)用程序 
drwxr-xr-x 44 1000 users 4096 Apr 8 09:27 vendors <-- 每一個(gè)vendor/models的配置文件 
注:vendor(計(jì)算機(jī)銷售商)  models(模型) 

8、用這些文件制作出一個(gè)新的linux-2.6.x內(nèi)核 

在20040408發(fā)布包目錄里的linux-2.6.x是由內(nèi)核“l(fā)inux-2.6.2”和補(bǔ)丁“l(fā)inux-2.6.2-uc0”生成的。而uClinux/ARM2.6需要更新的內(nèi)核版本(如linux-2.6.5 + linux-2.6.5-hsc2.patch)。 
[root@hyoklinux uClinux-dist]# tar -jxvf ~/incoming/linux-2.6.5.tar.bz2 
現(xiàn)在我們得到了整個(gè)的linux-2.6.5源代碼,以及所需的內(nèi)核補(bǔ)丁。 
[root@hyoklinux uClinux-dist]# gzip -dc ~/incoming/linux-2.6.5-hsc2.patch.gz | patch -p0 

運(yùn)行上面的命令后,你將會(huì)看到一些補(bǔ)丁目錄里包含有“armnommu”的字符串的代碼。你可以在你的uClinux 2.6內(nèi)核里使用“l(fā)inux-2.6.5”的目錄名,這不是必需的。然而,我覺得使用“l(fā)inux-2.6.x”這個(gè)名字會(huì)更方便些。 
因此你現(xiàn)在不需要原來uClinux目錄里的linux-2.6.x(即那個(gè)linux-2.6.2-uc0),執(zhí)行: 
[root@hyoklinux uClinux-dist]# rm -rf linux-2.6.x/ 
然后我們將重命名更新補(bǔ)丁的內(nèi)核目錄名為“l(fā)inux-2.6.x”,執(zhí)行: 
[root@hyoklinux uClinux-dist]# mv linux-2.6.5 linux-2.6.x 

9、確定配置文件 

當(dāng)前的uClinux發(fā)布包不包含有關(guān)于uClinux/ARM2.6完整的配置文件。我們需要簡(jiǎn)單的修改一下,ARMulator默認(rèn)的配置文件在vendors/GDB/ARMulator目錄下面。我們能像下面這樣來修改它: 
[root@hyoklinux uClinux-dist]# cp linux-2.6.x/arch/armnommu/configs/GDB_ARMulator_defconfig \ vendors/GDB/ARMulator/config.linux-2.6.x 

為了rootfs能使用ramdisk,我們需要修改一下配置目錄里的“rc”這個(gè)文件,這樣就可以使用1號(hào)的ramdisk設(shè)備了。 

(原文:Since we’ll use a ramdisk for the rootfs, we need to fix the “rc” in the 
configuration directory to use ramdisk device number 1) 

像下面這樣編輯vendors/GDB/ARMulator/rc這個(gè)文件: 
[root@hyoklinux uClinux-dist]# vim vendors/GDB/ARMulator/rc 

hostname GDB-ARMulator 
/bin/expand /etc/ramfs.img /dev/ram1 
mount -t proc proc /proc 
mount -t ext2 /dev/ram1 /var 
mkdir /var/tmp 
mkdir /var/log 
mkdir /var/run 
mkdir /var/lock 
mkdir /var/empty 
cat /etc/motd 

10、配置內(nèi)核和安裝用戶應(yīng)用程序 

[root@hyoklinux uClinux-dist]# make menuconfig 
首先在“Main Menu”找到“Vendor/Product”所在行,選擇“GDB/ARMulator”,像這樣: 
--- Select the Vendor you wish to target 
(GDB) Vendor 
--- Select the Product you wish to target 
(ARMulator) GDB Products 
你可以按’esc’鍵或是“Exit”按鈕返回主菜單。 

在主菜單選擇“Kernel/Library/Defaults選項(xiàng)”。 
選擇內(nèi)核版本為“l(fā)inux-2.6.x”,以及選擇使用的庫為“uClibc”。 
切換到下面的菜單: 
(linux-2.6.x) Kernel Version 
(uClibc) Libc Version 
[*] Default all settings (lose changes) (NEW) 
[*] Customize Kernel Settings (NEW) 
[*] Customize Vendor/User Settings (NEW) 
[*] Update Default Vendor Settings (NEW) 
你可以按’esc’鍵或是“Exit”按鈕返回主菜單。 

第一個(gè)“default all settings”選項(xiàng)是vendors目錄里默認(rèn)的配置文件。第二個(gè)“Customize kernel settings”選項(xiàng)能讓我們編輯內(nèi)核配置。第三個(gè)“Customize Vendor/User settings”選項(xiàng)是為了生成romfs.img所需要配置應(yīng)用程序和庫。最后一“Update Default Vendor settings”項(xiàng),你對(duì)內(nèi)核的改變以及你所配置的應(yīng)用程序?qū)⒈4嬖趘endors/product的目錄里。 
你可以按’esc’鍵或是“Exit”按鈕返回主菜單,然后保存并退出! 

11、配置內(nèi)核 

如果你確認(rèn)了上面的配置過程,那么你可以得到一個(gè)配置文件。然而我們需要改變初始的ramdis的大小。因?yàn)閞omfs.img文件的大小在默認(rèn)情況下大約是771KB。在“一般設(shè)置(General setup)”菜單里,有“Default kernel command string”這一項(xiàng),這樣改變它: 

root=/dev/ram0 initrd=0x01300000,800K keepinitrd 
你可以按’esc’鍵或是“Exit”按鈕返回主菜單,然后保存并退出! 

程序/庫的配置 

在這個(gè)菜單上,我們不需要修改任何的設(shè)置,看一下配置按“exit”保存并退出! 

現(xiàn)在我們運(yùn)行下面的這步來進(jìn)行整個(gè)的編譯過程: 

[root@hyoklinux uClinux-dist]# make 
注:如果是編譯linux-2.4.x或是以下的版本的內(nèi)核,你在“make”之前還需要“make dep”這一步,但是在編譯linux-2.6.x的內(nèi)核時(shí)就不需要了。 
這一步將編譯整個(gè)內(nèi)核和uclibc(uClinux的系統(tǒng)庫),用戶程序,以及制作romfs.img文件。 

下面是結(jié)果,你可以像下面這樣查看image目錄里的文件:
 
[root@hyoklinux uClinux-dist]# ls -al images 
total 3036 
drwxr-xr-x 2 root root 4096 Apr 27 22:13 . 
drwxr-xr-x 17 1000 users 4096 Apr 27 22:13 .. 
-rw-r--r-- 1 root root 1540272 Apr 27 22:13 image.bin 
-rwxr-xr-x 1 root root 45912 Apr 27 22:13 linux.data 
-rwxr-xr-x 1 root root 704856 Apr 27 22:13 linux.text 
-rw-r--r-- 1 root root 789504 Apr 27 22:13 romfs.img 

[root@hyoklinux uClinux-dist]# ls -al linux-2.6.x/linux 
-rwxr-xr-x 2 root root 15499433 Apr 27 22:11 linux-2.6.x/linux 

如果你得到了相同的文件,那么你就有了整個(gè)內(nèi)核和rootfs鏡像。 

12、讓我們來使用ARMulator! 

安裝ARMulator,我們需要另外一個(gè)目錄來編譯GDB/ARMulator。然而這時(shí)我們將在uClinux-dist的臨時(shí)使用的目錄里安裝它。 
[root@hyoklinux uClinux-dist]# tar -jxvf ~/incoming/gdb-5.0.tar.bz2 
打上補(bǔ)?。?nbsp;
[root@hyoklinux uClinux-dist]# gzip -dc ~/incoming/gdb-5.0-uclinux-armulator-20021127.patch.gz | patch -p0 
執(zhí)行另外的一步: 
[root@hyoklinux uClinux-dist]# gzip -dc ~/incoming/gdb-5.0-uclinux-armulator-ramdisk-20040412.patch.gz | patch -p0 

好,現(xiàn)在所要編譯的代碼已經(jīng)準(zhǔn)備好了,讓我們執(zhí)行它: 

[root@hyoklinux uClinux-dist]# cd gdb-5.0/ 
[root@hyoklinux gdb-5.0]# ./configure --target=arm-elf 
[root@hyoklinux gdb-5.0]# make 
[root@hyoklinux gdb-5.0]# make install 
現(xiàn)在可以運(yùn)行ARMulator了! 

在運(yùn)行ARMulator之前,我們需要一個(gè)能鏈接到鏡像文件“romfs.img”的標(biāo)志。 
[root@hyoklinux gdb-5.0]# cd .. 
[root@hyoklinux uClinux-dist]# ln -s images/romfs.img boot.rom 

以及制作一個(gè)初始化GDB的腳本: 
[root@hyoklinux uClinux-dist]# cat > .gdbinit 
target sim 
load 
^D 

通過下面的命令,就可以運(yùn)行我們的內(nèi)核了。 
[root@hyoklinux uClinux-dist]# arm-elf-gdb linux-2.6.x/linux 
GNU gdb 5.0 
Copyright 2000 Free Software Foundation, Inc. 
GDB is free software, covered by the GNU General Public License, and you are 
welcome to change it and/or distribute copies of it under certain conditions. 
Type "show copying" to see the conditions. 
There is absolutely no warranty for GDB. Type "show warranty" for details. 
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-elf"... 
Loaded ROM boot.rom to 0x01300000 
Loaded ROM boot.rom to 0x01400000 
Loaded ROM boot.rom to 0x04000000 
Loaded ROM boot.rom to 0x01300000 
Loaded ROM boot.rom to 0x01400000 
Loaded ROM boot.rom to 0x04000000 
Connected to the simulator. 
Loading section .init, size 0xb000 vma 0x1000000 
Loading section .text, size 0xa0b98 vma 0x100b000 
Loading section __ex_table, size 0x5b8 vma 0x10abba0 
Loading section .data, size 0x8ef8 vma 0x10ae000 
Start address 0x1000000 
Transfer rate: 5931584 bits in <1 sec. 

(gdb) run 

Starting program: /uClinux-dist/linux-2.6.x/linux 
Linux version 2.6.5-hsc1 (root@hyoklinux) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from http://www.snapgear.com/)) 
#9 Mon May 3 11:00:29 KST 2004 
CPU: Atmel-AT91M40xxx [14000040] revision 0 (ARMvundefined/unknown) 
Machine: ATMEL EB01 
On node 0 totalpages: 1024 
DMA zone: 0 pages, LIFO batch:1 
Normal zone: 1024 pages, LIFO batch:1 
HighMem zone: 0 pages, LIFO batch:1 
Built 1 zonelists 
Kernel command line: root=/dev/ram0 initrd=0x01300000,800K keepinitrd 
PID hash table entries: 32 (order 5: 256 bytes) 
Memory: 4MB = 4MB total 
Memory: 2448KB available (642K code, 92K data, 44K init) 
Calibrating delay loop... 15.87 BogoMIPS 
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes) 
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes) 
Mount-cache hash table entries: 512 (order: 0, 4096 bytes) 
checking if image is initramfs...it isn’t (ungzip failed); looks like an initrd 
POSIX conformance testing by UNIFIX 
Linux NoNET1.0 for Linux 2.6 
Atmel USART driver version 0.99 
ttyS0 at 0xfffd0000 (irq = 2) is a builtin Atmel APB USART 
ttyS1 at 0xfffcc000 (irq = 3) is a builtin Atmel APB USART 
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize 
loop: loaded (max 8 devices) 
RAMDISK: romfs filesystem found at block 0 
RAMDISK: Loading 771 blocks [1 disk] into ram disk... done. 
VFS: Mounted root (romfs filesystem) readonly. 
Freeing init memory: 44K 
Shell invoked to run file: /etc/rc 
Command: hostname GDB-ARMulator 
Command: /bin/expand /etc/ramfs.img /dev/ram1 
Command: mount -t proc proc /proc 
Command: mount -t ext2 /dev/ram1 /var 
Command: mkdir /var/tmp 
Command: mkdir /var/log 
Command: mkdir /var/run 
Command: mkdir /var/lock 
Command: mkdir /var/empty 
Command: cat /etc/motd 
Welcome to 
____ _ _ 
/ __| ||_| 
_ _| | | | _ ____ _ _ _ _ 
| | | | | | || | _ \| | | |\ \/ / 
| |_| | |__| || | | | | |_| |/ \ 
| ___\____|_||_|_| |_|\____|\_/\_/ 
| | 
|_| 


GDB/ARMulator support by <davidm@snapgear.com> 
For further information check: 
http://www.uclinux.org/   


Execution Finished, Exiting 


Sash command shell (version 1.1.1) 
/> ps 
PID PORT STAT SIZE SHARED %CPU COMMAND 
1 S 163K 0K 48.0 /sbin/init 
2 S 0K 0K 0.0 ksoftirqd/0 
3 S 0K 0K 1.0 events/0 
4 S 0K 0K 0.0 kblockd/0 
5 S 0K 0K 0.0 pdflush 
6 S 0K 0K 0.0 pdflush 
7 S 0K 0K 0.0 kswapd0 
8 S 0K 0K 0.0 aio/0 
11 S0 R 165K 0K 0.0 /bin/sh 
/> cd bin 
/bin> ls -al 
drwxr-xr-x 1 0 0 32 Jan 1 00:00 . 
drwxr-xr-x 1 0 0 32 Jan 1 00:00 .. 
-rwxr-xr-x 1 0 0 105980 Jan 1 00:00 boa 
-rwxr-xr-x 1 0 0 91104 Jan 1 00:00 dhcpcd 
-rwxr-xr-x 1 0 0 29624 Jan 1 00:00 expand 
-rwxr-xr-x 1 0 0 40504 Jan 1 00:00 gdbserver 
-rwxr-xr-x 1 0 0 73748 Jan 1 00:00 ifconfig 
-rwxr-xr-x 1 0 0 41144 Jan 1 00:00 inetd 
-rwxr-xr-x 1 0 0 31176 Jan 1 00:00 init 
-rwxr-xr-x 1 0 0 56380 Jan 1 00:00 login 
-rwxr-xr-x 1 0 0 64656 Jan 1 00:00 ping 
-rwxr-xr-x 1 0 0 34280 Jan 1 00:00 reboot 
-rwxr-xr-x 1 0 0 73860 Jan 1 00:00 route 
-rwxr-xr-x 1 0 0 79852 Jan 1 00:00 sh 
-rwxr-xr-x 1 0 0 51216 Jan 1 00:00 telnetd 
/bin> cat /proc/meminfo 
MemTotal: 2516 kB 
MemFree: 560 kB 
Buffers: 900 kB 
Cached: 188 kB 
SwapCached: 0 kB 
Active: 984 kB 
Inactive: 44 kB 
HighTotal: 0 kB 
HighFree: 0 kB 
LowTotal: 2516 kB 
LowFree: 560 kB 
SwapTotal: 0 kB 
SwapFree: 0 kB 
Dirty: 0 kB 
Writeback: 0 kB 
Mapped: 0 kB 
Slab: 752 kB 
Committed_AS: 0 kB 
PageTables: 0 kB 
VmallocTotal: 4194303 kB 
VmallocUsed: 0 kB 
VmallocChunk: 4194303 kB 
/bin> 

不錯(cuò)的文章,值得讀一下,翻譯時(shí)來來回回讀了好幾遍,每次都有不同的收獲,感覺不錯(cuò) 

由于時(shí)間倉(cāng)促,未能測(cè)試,請(qǐng)大家和我關(guān)注這個(gè)貼子,使它能更準(zhǔn)確、更完善! 

PIII550/384M/60G+40G/TNT2/8139/Fedora1.0 
LFS5.0+BLFS1.0ing…… 

http://timity.nease.net  
學(xué)習(xí)快樂!  

------

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
嵌入開發(fā)網(wǎng)--下載中心-在ARMulator中移植uClinux(3)
Berkeley db 4.5.20 移植到ARM
簡(jiǎn)單的hello應(yīng)用實(shí)例
Linux 系統(tǒng)內(nèi)核的調(diào)試
SkyEye Project
AT91RM9200引導(dǎo)程序的建立(一)--
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服