+ -
当前位置:首页 → 问答吧 → PC104上的嵌入式Linux系统平台

PC104上的嵌入式Linux系统平台

时间:2007-04-07

来源:互联网

[B][B]PC104[/B][B]上的嵌入式[/B][B]Linux[/B][B]系统平台[/B][/B]

                                         思瑞讯电子  2007-4-6 http://www.chinasrx.com
1,  准备工作
建立linux开发环境,我是通过虚拟linux开发的,这样文件共享方式比较好。装一个vmware就ok了。网上有绿色版的,用起来比较方便。Linux我用的是redhat 9.0,装linux的时候记得把内核顺便装上去。
还需要一个busybox,可以去官方网站上下载。
http://www.chinasrx.com
2,  编译工作
编译linux内核,对于新手来说会很陌生,多编译几次就好了,给大家的忠告就是多尝试。这个方面的文章已经很多了。这个地方我要说的是,如果你用cpu是386,记得有项协处理器选项要选上。
然后就是busybox的编译工作,busybox就是命令解析工具,他的编译相对内核还是要简单些,也不做过多说明。主要要编译静态的busybox。
默认情况下,这会创建一个新的本地子目录 _install,其中包含了基本的 Linux 环境。在这个根目录中,您会找到一个链接到 BusyBox 的 linuxrc 程序。这个 linuxrc 程序在构建安装盘或急救盘(允许提前进行模块化的引导)时非常有用。同样是在这个根目录中,还有一个包含操作系统二进制文件的 /sbin 子目录。还有一个包含用户二进制文件的 /bin 目录。
http://www.chinasrx.com
3,  cf卡格式化
把cf卡当成一个硬盘来做,不需要分区什么的。早期我看见别人都是分区的,很麻烦,你就在linux下格式cf卡,变成et2文件系统就可以了、
在Linux下用fdisk命令可以在CompactFlash卡上创建分区,命令格式为fdisk /dev/hdc(因为虚拟机,未必识别这样的盘符,可能是sda或者sdb)然后用mke2fs命令创建ext2文件系统. 这个地方一定要搞明白的!后面要用到
http://www.chinasrx.com
4,创建根目录
自己mkdir 相关的目录
/dev 目录比较简单,全部拷贝到cf卡下就可以了
/boot 把内核cp目录下面和redhat中boot下面的boot.b文件
/bin /sbin 把编译好的busybox中的目录cp过来就可以了
/etc 可以用busybox给的模板etc 它在examples/bootfloppy/etc目录下。还有一个就是建立lilo.conf文件。
http://www.chinasrx.com
5,  引导文件
我的conf文件,仅供参考
boot=/dev/sdb
disk=/dev/sdb
bios=0x80
delay=30
install=/boot/boot.b
linear
image=/boot/bzImage
label=
read-only
root=/dev/sdb1
sdb这个值就是你cf在redhat下面被识别的盘符名称。
/boot/bzImage 就是linux内核
建立好配置文件后,就是通过命令把这个文件写到cf卡的上,这样上电就会去引导内核。
输入:lilo –r /mn/cf  -c lilo.conf
-r :改变安装目录为mnt/cf/etc/lilo.conf.
http://www.chinasrx.com
6,启动内核
可以把cf卡放到pc104上启动了,这个时候要设置从cf启动。这只是一个简单的内核+busybox系统,没有什么意义,不过大家可以在上面加minigui。

备注:写的比较仓促,很多地方还是不够详细。有兴趣的朋友可以在u盘上装linux内核尝试下,cf卡是一样的。
http://www.chinasrx.com      

作者: prince1234   发布时间: 2007-04-07