实验二 RAMDISK 文件系统配置和移植实验

一、 实验目的

 学会嵌入式RAMDISK的配置、移植,根据目标系统要求配置RAMDISK

二、实验内容

本次实验使用Redhat linux 9.0 操作系统环境安装arm linux 的开发库及编译器。学习嵌入式RAMDISK的配置、移植,根据目标系统要求配置RAMDISK以及ARM 开发板的使用和开发环境的设置。下载已经编译好的内核文件到嵌入式控制器中。

三、预备知识

C 语言的基础知识、程序调试的基础知识和方法,LINUX 的基本操作。

四、实验设备及工具(包括软件调试工具)

硬件:SZ7207G ARM 嵌入式开发板、PC Pentumn500 以上, 硬盘10G 以上。

软件:PC 机操作系统redhat linux 9.0 linux 开发环境

五、实验步骤

1.进入LINUX开发环境

首先以ROOT用户登陆主机LINUX,在[root@localhost root]#输入:

[root@localhost root]# chroot /home/HLDK /x86/sbin/login

localhost login: root

passwd: linux1

输入正确的密码后会出现下面的提示:

Welcome to HMS720 ARM7 Linux Development Kit

Hynix Semiconductor Inc.

bash-2.03#

这时, 当前路径已经被改到/home/hms720

表示已进入开发系统

2、进入目录/home/hms720/LinuxHEI720/Boot

    BASH下输入:

bash-2.03#cd /home/hms720/LinuxHEI720/Boot

 

3、配置RAMDISK

    bash-2.03#下输入./mkroot

系统将运行RAMDISK配置脚本,并出现RAMDSIK配置菜单,各配置选项如下:

库选择选项(配置结果保存在/home/hms720/LinuxHEI720/Bootmodule.listfile.list文件中显示)。

Library Select

[*]Glibc2.1.3 basic

[*]Glibc2.1.3 math

[ ]Lib pthread

[*]Lib termcap

系统工具选项

System Binary/Utility

[*] Basic(init agetty mingetty)

[*] Filesystem(fdisk mkfs)

[*]Ext2 filesystem(mkfs.ext2)

[*]Minix filesystem(mkfs.minix)

[ ]MSDOS filesystem(mkfs.msdos mkfs.dos fsck.msdos

fsck.vfat)

[*] Login utils(autologin login passwd su)

/bin ,usr/bin 工具选项

/bin /usr/bin Utility

[*] Bash shell

[ ]Tcsh shell

[*]Basic1(echo cp ls ln mkdir mknod mv pwd rm rmdir

touch)

[*]Basic2(cat chgrp chmod chown date head sty tail)

[*]Basic3(arch basename date echo hostname id sleep

ttyuname)

[ ]Dd utility(dd)

[ ]Od utility(od)

[*]Disk utility(df)

[*]Mount utility(mount umount)

[*]Process utility(kill ps)

[*]Grep utility(grep egrep fgrep)

[*]Grep utility(sed)

[ ]Misc1 (cal cksum comm. csplit cut expand fmt fold)

[ ]Misc2 (join paste pr sort sum tr)

[ ]Misc3 (tsort unexpand uniq)

Microwindows配置选项

Microwindows

Microwindows type

(X) NanoX

( )Mwin

Reference(VGA) board and PDA(LCD) board

(X)Ref_VGA_640x480

( )PDA_LCD_240x320

[ ]Demos

Network utility

[*] Basic (ifconfig)

FAT(vfat msdos) module

[ ] MSDOS filesystem

[*]VFAT filesystem

PCMCIA Module

[*]PCMCIA module and utility

[*]IDE module

[*]Network module

---

Load an Alternate Configuration File

Save Configuration to an Alternate File

根文件系统映像包含基本的文件系统和一些有用的选项, 基本文件系统包含根文件系统目录和一些设备文件、数据库和在/etc下的一些脚本文件, 所有这些都被放在了~/LinuxHMS720/Boot/basicfs/目录下, 你可以增加自己所需要的目录, ( 确保这个目录是在菜单脚本里不存在, 否则会被覆盖掉。) 并修改脚本文件, 以使菜单脚本中包含你的目录.

4. 以上要求配置好各选项,保存并退出配置菜单

5.编译内核

/home/hms720/LinuxHEI720/Boot下修改mkboot.pl文件:

“$maxSize=14”该为“$maxSize=20

     BASH下输入:

hms720[0]% ./mkboot.pl

出现提示:

Reading  “module.list” to get files to install

>>Size [2-20]:20

>>filesystem(1.ext2fs 2.minix):1

要求输入文件系统大小,文件系统大小在2-16M之间选择,文件系统大小应根据目标系统选择合适的大小,太小则不能装入应用程序,太大则浪费内存空间。

输入文件系统大小值后,系统会自动制作文件系统,系统完成后会在当前目录生成RAMDISK映象文件rootfs.img

6.文件系统修改

     制作好的文件系统往往在使用过程中作修改,修改文件系统可以通过改变配置脚本来改变,但较复杂,当有新的应用程序要装入系统时可以将应用程序直接拷入文件系统而不需重新编译文件系统。

/home/hms720/LinuxHEI720/Boot下输入

mount –o loop rootfs.img  basicfs 将文件系统挂接在目录basicfs上,进入basicfs可以看到整个文件系统的内存,可以在目录中直接修改文件。

我们要修改文件系统中的/home/HLDK/home/hms720/LinuxHEI720/Boot/basicfs/etc/microwin/NANORC文件,用文本编辑器打开它,修改后的结果如下:

 

#/etc/microwin/NANORC

MICROWIN_HOME=/usr/microwin

PATH="$PATH:$MICROWIN_HOME/bin"

PATH="$PATH:/usr/nanox"

 

MOUSE_PORT=/dev/ttyS1

export MOUSE_PORT

MOUSE_TYPE=ms

export MOUSE_TYPE

 

/usr/microwin/bin/launcher.sh

 

#logout

除此之外我们还要修改文件系统中的/etc/rc.d/rc.sysinit文件并在/etc/rc.d/init.d目录增添文件,该文件夹共包含49,主要用于系统服务程序的控制。修改后的sysinit文件内容如下:

#/etc/rc.d/rc.sysinit

#!/bin/sh

# Set the path

PATH=/bin:/sbin:/usr/bin:/usr/sbin

export PATH

 

# Read in config data.

if [ -f /etc/sysconfig/network ]; then

    . /etc/sysconfig/network

else

    NETWORKING=no

fi

 

HOSTNAME=localhost

 

rm -f /etc/mtab~ /etc/mtab~~

mount /proc

cp -f /proc/mounts /etc/mtab

 

# load modules

#modprobe ts-h7202

modprobe soundcore

modprobe h720x_sound

 

touch /var/run/utmp

touch /var/log/wtmp

chgrp utmp /var/run/utmp /var/log/wtmp

chmod 0664 /var/run/utmp /var/log/wtmp

 

另外最重要的是在文件系统中的/lib目录和/usr/lib目录中增加以后我们实验程序运行所需要的库文件,如jpeg图片格式的支持库(libjpeg.a)、编译flnx之后所生成的库文件(libfltk.a)和 microwindows运行所需要的支持库等等。

 

修改完成后输入

umount basicfs

可以保存卸下文件系统。

7.下载文件系统

   /home/hms720/LinuxHEI720/Boot下输入

   gzip rootfs.img

    将文件系统压缩成.gz文件,重新启动计算机进入WINDOWS,在WINDOWS下用USB将文件系统下载至目标板,并在超级终端中以root用户进入文件目录,观察其结果。

六、实验思考

如何将用户程序加入文件系统?如何选择合适的文件系统大小?

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值