《嵌入式Linux系统设计》实验教学大纲
课程名称:嵌入式Linux系统设计
课程编号:408308436314
适用专业:计算机科学与技术软件工程
总 学 分:3
总 学 时:54
其中实验学时26
一、实验性质、目的与任务
《嵌入式Linux系统设计发》课程是嵌入式方向和物联网方向的方向课,与具体的硬件环境紧密相关。本课程以常见的ARM 9 S3C2410平台为例来讲解。剖析了嵌入式Linux系统构建的各个环节,说明了建立嵌入式Linux交叉开发环境,然后分析了嵌入式Linux系统的引导程序、内核和文件系统三大组成部分,最后介绍了嵌入式Linux系统集成和部署的方法。通过本实验课程的学习应达到以下几个教学目的:
(1) 掌握一种应用Linux的典型ARM处理器和开发板。
(2) 掌握能通过交叉编译器和交叉调试器的制作,对嵌入式交叉开发环境进行配置,对应用程序进行交叉开发和调试。
(3) 熟悉掌握U-Boot的使用、调试、编译和移植,理解U-Boot的启动过程和linux内核之间的关系。
(4) 掌握以ARM平台对内核移植的基本方法,理解linux内核启动过程。
(5) 掌握Linux根文件系统的组织结构,制作根文件系统的方法,掌握init进程调用文件系统脚本初始化过程。
(6)掌握Linux系统部署的基本方法,理解文件系统和存储介质的特点。
二、教学基本要求:
本课程的任务是使学生掌握嵌入式系统基础知识,理解嵌入式系统的应用设计与调试的思路和方法,培养学生的编程能力和实践应用能力。
上机实验要求:
(1)实验前,准备好上机所需的程序资料或书写大概的操作步骤;
(2)实验时,按书写的操作步骤进行实验,通过修改或增加操作步骤写出详细的操作过程和分析实验结果;
(3)实验结束后,应整理出实验报告,实验报告应包括以下内容:实验项目名称;实验步骤;运行结果;对运行情况所作的分析以及本次调试程序所取得的经验,如果程序未能通过或实验没达到预期目标,应分析其原因。
三、实验项目与类型:
序号实验项目学时实验性质备注
验证综合设计研究
探索必做选做
1tftp服务器的配置和使用1√
2nfs文件系统的配置和使用1√
3smb服务器的配置使用1√√
4X86平台内核配置、编译和安装2√√
5内核模块1√√
6内核模块参数1√√
7交叉工具链的安装与使用1√√
8smdk2410-uboot编译2√√
9mini2440开发板内核下载2√√
10minii2440开发板u-boot移植2√√
11mini2440开发板内核制作4√√
12nfs起文件系统制作2√√
13ramdisk起文件系统制作2√√
14Initramfs起根文件系统2√√
15自启动linux内核2
四、实验教学内容及学时分配:
实验1 tftp服务器的配置和使用
1、实验目的
学会tftp服务器的配置和使用。
2、方法原理
tftp服务器。
3、主要实验仪器及材料
1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
2) mini2410开发板一套;
3) 短网线一根;
4)编译好的嵌入式linux内核和根文件系统。
4、实验内容
在linux操作系统上配置tftp服务器下载目录,开发板supervivi做为tftp客户端从PC机上下载嵌入式linux内核映像和根文件系统到开发板,然后在开发板运行嵌入式linux系统。
实验2 nfs文件系统的配置和使用
1、实验目的
学会nfs文件系统的配置和使用。
2、方法原理
nfs文件系统。
3、主要实验仪器及材料
1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
2) mini2410开发板一套;
3)短网线一根
4、实验内容
在pc机上的虚拟机linux操作系统上配置nfs服务器共享目录,在开发板上运行的linux操作系统访问pc机上的虚拟机linux操作系统上的nfs共享目录。
实验3 smb服务器的配置使用
1、实验目的
学会smb服务器的配置和使用。
2、方法原理
smb服务器。
3、主要实验仪器及材料
pc一台,windows xp操作系统,安装虚拟机linux操作系统;
4、实验内容
在pc机上的虚拟机linux操作系统上配置smb服务器共享目录,在windowsxp系统访问虚拟机linux操作系统上的smb服务器共享目录。
实验4 X86平台内核配置、编译和安装
1、实验目的
掌握X86平台下,内核配置、编译和安装。
2、方法原理
内核配置、编译和安装。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) linux2.6.29内核。
4、实验内容
配置、编译linux linux2.6.29内核。在vmware安装编译好的内核
实验5 内核模块
1、实验目的
掌握内核模块的编写、编译、加载、卸载。
2、方法原理
内核模块。
3、主要实验仪器及材料
pc一台,windows xp操作系统,安装虚拟机linux操作系统;
4、实验内容
(1)编写hello world内核模块;
(2)编写makefile,编译内核模块;
(3)安装,卸载该内核模块。
实验6 内核模块参数
1、实验目的
掌握内核模块参数的使用方法。
2、方法原理
内核模块参数。
3、主要实验仪器及材料
pc一台,windows xp操作系统,安装虚拟机linux操作系统;
4、实验内容
(1)编写内核模块,分别实现一个整形,一个字符串型模块参数;
(2)编写makefile,编译内核模块;
(3)安装,卸载该内核模块。
实验7 交叉工具链的安装与使用
1、实验目的
掌握arm-linux4.2.3交叉工具链的安装和使用。
2、方法原理
arm-linux4.2.3交叉工具链。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) arm-linux-gcc-4.3.2.tgz安装包
4、实验内容
在linux虚拟操作系统中,安装arm-linux4.2.3工具链,然后编写一个“hello world”C程序,使用工具链编译该程序,查看编译后执行文件的属性,并通过nfs文件系统在开发板上运行。
实验8 Smdk2410-uboot编译
1、实验目的
制作在smdk2410开发板使用的u-boot,掌握u-boot配置、编译方法。
2、方法原理
u-boot。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) u-boot-2008.10.tar.bz2软件包。
4、实验内容
使用交叉工具链编译可用于smdk2410上使用的u-boot。
实验9 Mini2440开发板内核下载
1、实验目的
掌握u-boot映象试的烧写方法;熟悉u-boot常见命令;下载内核到开发板并启动内核。
2、方法原理
u-boot命令,H-JTAG。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) u-boot.bin。
(3)mini2440开发板一套。。
4、实验内容
(1)使用H-JTAG烧写提供的u-boot.bin。
(2)对开发板进行设置,并通过tftp下载提供的内核文件uImage-boot到mini2440开发板。
(3)使用uboot启动该内核。
实验10 Minii2440开发板u-boot移植
1、实验目的
在下载的uboot源码中并没有对mini2440开发板的支持,通过本实验对mini2440开发板uboot移植。
2、方法原理
u-boot。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) u-boot-2008.10.tar.bz2软件包。
(3)mini2440开发板一套。
4、实验内容
基于uboot-2008.10,移植出可在mini2440 nor flash中运行的u-boot。
实验11Mini2440开发板内核制作
1、实验目的
制作可在mini2440上使用的内核。
2、方法原理
交叉工具链编译内核。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) arm平台的linux2.6.29内核。
(3)mini2440开发板一套。
4、实验内容
使用交叉工具链编译可用于mini2440的内核。
实验12Nfs起文件系统制作
1、实验目的
在嵌入式产品开发过程中,为了调试的方便,通常使用nfs起根文件系统,本实验要求掌握nfs起根文件系统内核配置与编译。
2、方法原理
内核配置与编译。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) arm平台的linux2.6.29内核。
(3)mini2440开发板一套。
4、实验内容
(1)制作用于mini2440开发板使用的内核,并使用nfs起根文件系统。
(2)使用U-Boot启动该内核。
实验13ramdisk起文件系统制作
1、实验目的
制作在mini2440上可用的内核,使用ramdisk起文件系统。
2、方法原理
内核配置与编译。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) arm平台的linux2.6.29内核。
(3)mini2440开发板一套。
4、实验内容
(1)制作用于mini2440开发板使用的内核,并使用ramdisk起根文件系统。
(2)使用U-Boot启动该内核。
实验14 Initramfs起根文件系统
1、实验目的
制作在mini2440上可用的内核,使用Initramfs起文件系统。
2、方法原理
内核配置与编译。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) arm平台的linux2.6.29内核。
(3)mini2440开发板一套。
4、实验内容
(1)制作用于mini2440开发板使用的内核,并使用Initramfs起根文件系统。
(2)使用U-Boot启动该内核。
实验15 自启动linux内核
1、实验目的
将制作好的使用initramfs作为根文件系统的内核烧写至nor flash中,实现上电自启动功能。
2、方法原理
内核配置与编译。
3、主要实验仪器及材料
(1) pc一台,windows xp操作系统,安装虚拟机linux操作系统;
(2) arm平台的linux2.6.29内核。
(3)mini2440开发板一套。
4、实验内容
(1)制作使用initramfs作为根文件系统的内核。
(2)将制作好的内核烧写至nor flash中。
(3)配置U-Boot使得启动后能够自动运行linuw内核。
五、考核方法
1.教师对学生实验过程完成情况进行详细登记,记入实验成绩中。
2.学生完成实验后按要求撰写实验报告,根据实验报告确定每次实验的等级。
3.实验成绩按20%比例计入课程期评总成绩中。
六、实验教学指导书和参考书
1、实验指导书
[1]自编《嵌入式Linux系统设计》实验指导书
2、主要参考书:
[1]杜春雷,ARM体系结构与编程.北京:清华大学出版社.2003
[2]刘洪涛,ARM嵌入式体系结构与接口技术.北京:人民邮电版社,2009年8月
[3]刘洪涛,孙天泽.嵌入式系统技术与设计.人民邮电出版社,2008
[4]华清远见嵌入式培训中心.嵌入式Linux应用程序开发标准教程(第2版).北京:人民邮电出版社,2009.
主 撰 人:刘泽平
审 核 人:袁辉勇
2012.6