嵌入式系统实验报告一

上传人:公**** 文档编号:564903715 上传时间:2023-04-14 格式:DOCX 页数:9 大小:26.96KB
返回 下载 相关 举报
嵌入式系统实验报告一_第1页
第1页 / 共9页
嵌入式系统实验报告一_第2页
第2页 / 共9页
嵌入式系统实验报告一_第3页
第3页 / 共9页
嵌入式系统实验报告一_第4页
第4页 / 共9页
嵌入式系统实验报告一_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《嵌入式系统实验报告一》由会员分享,可在线阅读,更多相关《嵌入式系统实验报告一(9页珍藏版)》请在金锄头文库上搜索。

1、2008221104210068 陈见 08 计科 2 班嵌入式系统实验报告一一. 实验目的:1. 了解嵌入式开发中的硬件(e.g.EELIOD)与软件(e.g.bootloader)2. 了解嵌入式系统的开发环境,内核的下载和启动过程3. 了解Linux内核配置和编译过程 了解Linux内核源代码的目录结构以及各目录的相关内容 了解Linux内核一些基本配置选项内容和作用 掌握Linux内核的编译过程4. 了解嵌入式文件系统的构建过程了解嵌入式操作系统种文件系统的类型和作用掌握利用BusyBox软件制作嵌入式文件系统的方法掌握嵌入式Linux文件系统的的挂载过程二. 实验内容:V1嵌入式系统

2、开发1、bootloader嵌入式系统中通常并没有像BIOS那样的固件程序,因此整个系统的加载启 动任务完全由bootloader来完成。其主要作用是:初始化硬件设备;建立内存空 间的映射图;完成内核的加载,为内核设置启动参数。bootloader就是在操作系 统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设 备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态, 以便为最终调用操作系统内核准备好正确的环境。2、串口设置(minicom)多数嵌入式系统都通过异步串行接口(UART)进行初级引导。这种通信方式 是将字符一位一位地传送,一般是先低位、后高位。因此,

3、采用串行方式,双方最 少可以只用一对连线便可实现全双工通信。字符与字符之间的同步靠每个字框的 起始位协调,而不需要双方的时钟频率严格一致,因此实现比较容易。启动 minicom主机运行minicom,该程序通过串口(RS232)和目标机连接。minicom-s表示对串口进行设置,普通用户不需要这一步。串口设置/dev/ttysO bps=115200, 8位数据,无检验,无流控制。bootloader提示符下面可设定本机IP,宿主机IP,将要下载的内核文件名,文 件系统名及其它参数。Boot必要设置配置IP,配置目标机IP,tftp服务机IP主机和目标机相互pingtftp服务上机实验打开终端

4、,输入minicom。接通开发板电源,进入界面,在delay (一般设 为2s)时间内按任意键进入bootloader界面的信息和命令提示符及菜单: = Operation Menu =0 ComanndLine mode1 Viw current confi 呂liration2 Bootp3 Dornload defauIt Kernel (zlm&吕亡_EDR_t已mp)4 Flash Kernel5 Doload defauIt Filesystem (rootfs270qt. im呂)6. Flash Filesysteni7 Foot system8 Reboot syst已皿9

5、Reset to factory defauIt configurationa Set default Kernel fillname and Fil已syst已山 filenameb Set boot delay timec Help(to get a 1 ist of commands)Please enter your s已lection:功能“0”是命令行方式,出现提示符“51Board”,进入命令设置子菜单。“set” 命令可以帮助你修改和观察当前bootloader的默认设置。(开发板IP最好设为主 机IP+100)Set myipaddr 192.168.208.34 (修改主机

6、 IP)Set destupaddr 192.168.208.134 (修改开发板 IP)3、tftptftp是基于UDP协议的简单文件传输协议。目标板作为客户机,bootloader默认 采用tftp协议。主机安装tftp-server,作为tftp服务器。Linux系统的tftp服 务由超级服务器xinetd管理。Tftp服务的主目录是/tftpboot,因此只有在这个目录下的文件才可以通过tftp进行下载,配置好主机和开发板的ip地址后就可以通过tftp命令进行传送。下载内核:tftp zlmage26 kernel下载文件系统:tftp ramdisk_img.gz ramdisk4、

7、nfs服务器架设使用mount命令来挂载,将第一个目录挂载到第二个目录下,这样访问第二 个文件夹就可以看到第一个文件夹里的内容。对于第一个命令来说:NFS服务器 是一项用于在不同机器、不同操作系统之间通过网络共享文件的服务系统。在客 户端看来,使用NFS的远端文件就像是在使用本地文件一样。配置eth0: ifconfig ethO 192.168.208.134该命令为配置目标机网卡的命令, 即将目标板的IP地址配置为指定IP。Mount 192.168.208.134:/exp /mnt该命令将指定IP下的NSF共享目录挂载到 /mnt目录,当访问开发板的/mnt目录时,访问的就是服务器上的

8、/exp目录的内 容。归纳总结嵌入式系统下软件开发的一般流程 建立开发环境,操作系统一般使用Redhat Linux,通过网络下载相应的GCC 交叉编译器进行安装(比如,arm-1inux-gcc、arnl-uclibc-gcc)。配置开发主机,配置MINICOM,一般的参数为波特率115200 Baud/s,数据 位8位,停止位为1,9,无奇偶校验,软件硬件流控设为无。MINICOM软 件的作用是作为调试嵌入式开发板的信息输出的监视器和键盘输入的工具。 配置网络主要是配置NFS网络文件系统。(3) 建立引导装载程序BOOTLOADER,从网络上下载一些公开源代码的 BOOTLOADER,根据

9、具体芯片进行移植修改。(4) 下载已经移植好的Linux操作系统,下载后再添加特定硬件的驱动程序,然 后进行调试修改,对于带MMU的CPU可以使用模块方式调试驱动,而对 于MCLiunx这样的系统只能编译内核进行调试。(5) 建立根文件系统,由于默认的启动脚本一般都不会符合应用的需要,所以就 要修改根文件系统中的启动脚本,它的存放位置位于/etc目录下,包括: /etc/init.d/rc.S、/etc/profile、/etc/.profile 等,自动挂装文件系统的配置文件 /etc/fstab,具体情况会随系统不同而不同。根文件系统在嵌入式系统中一般 设为只读,需要使用mkcramfs

10、genromfs等工具产生烧写映像文件。(6) 建立应用程序的FLASH磁盘分区,一般使用JFFS2或YAFFS文件系统, 这需要在内核中提供这些文件系统的驱动。(7) 开发应用程序,可以放入根文件系统中,也可以放入YAFFS、JFFS2文件系 统中。(8) 烧写内核、根文件系统和应用程序,发布产品。Linux内核配置和编译1、内核配置的基本结构Linux内核的配置系统由四个部分组成,分别是:1、Makefile:分布在Linux内核源代码中的 Makefile,定义Linux内核的 编译规则。顶层Makefile是整个内核配置、编译的总体控制文件;2、配置文件(config.in):给用户提

11、供配置选择的功能;3、配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解 释)和配置用户界面(提供基于字符界面、基于 Ncurses图形界面以及基于 Xwindows图形界面的用户配置界面,各自对应于 Make config、Make menuconfig 和 make xconfig)。4、Rules.make:规则文件,被所有makefile所使用。2. 编译规则Makefile利用makemenuconfig对Linux内核进行配置后,系统将产生配置文件 “.config。编译时,顶层Makefile完成产生核心文件vmlinux和内核模块module两个 任务,为了达到此目

12、的,顶层Makefile将读取.config中的配置选项,递归进入 到内核的各个子目录中,分别调用位于这些子目录中的Makefile进行编译。3. 编译内核实验选用的是2.4版本内核进行编译。将内核源代码复制至自己的文件夹, 在该文件夹下打开终端,对其进行配置。简单的内核配置和编译过程通常是: make menuconfigf make clean make dep make make zlmage。 make menuconfig2.4版本内核配置主目录有下面这些分支需要改动:1. Code mayurity level option,选择kernel代码的成熟度的部分,决定是否将一些 不成

13、熟的功能提供给用户选择。2. Loadable module supporto利用模块化功能可将常用的设驱动或功能作为模块放 在内外,这样就可以要时动态地加载。作结束后还可以从内存中删除。这样可以 有效地使用内存,同时也可减小了内核的大小。3.System Type,系统选型。根据开发对象选择。本实验系统选择PXA270/210-based, 并在 Board Type 中选择 XSBase270-EDR。4. General setup, Default kernel command string 改为:root=dev/ram0 rw console=ttyS0, 115200 mem=6

14、4M。“ console=ttyS0,115200 表示使用串 口和波 特率。5. Block devices RAM disk support,内存填8192,表示支持内存的大小。6. Network device support,网络设备驱动。EELIOD 的网卡是 “ Ethernet 10M or 100Mbit SMSC LAN91C111”。7. File systemkernel automounter,对内核可访问文件系统的设置。8. Sound,声音支持和声卡驱动。选中Intel PXA27x AC97。 make clean清除以前构核所产生的目标文件、模块文件、核心以及一

15、些临时文件等,不会产 生任何新文件,也不会修改上面所作的配置。 make dep建立依赖关系,产生两个文件“.depend ”和“.hdepend,其中“ hdepend 表 示每个.h文件都包含其它哪些嵌入文件,而“.depend”文件有多个,在每个会 产生目标文件.0的目录下均存在,它表示每个目标文件都依赖于哪些嵌入文 件.h。 make编译内核。通过个目录的Makefile文件进行,会在各个目录下产生一大堆目标 文件。如核心代码没有错误,讲产生文件vmlinux,这就是所构的核心。同时产 生映像文件system.map。 make zImagezlmage和bzlmage选项是在make的基础上产生压缩的核心映像文件。生成的 zImage文件在目录 linux-2.4.21-51 Broad_EDR/arch/arm/boot 中,将其复制到 tftp 服 务器目录/tftpboot下供下载。嵌入式文件系统的构建1、Linux文件系统的基本类型 ext文件系统:linux-2.4内核的标准文件系统,可以实现快速符号链接,不 需要为

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号