设为首页  |  加入收藏
信息学院
首页|概况|党建工作|师资队伍|教学工作|学科专业|学生工作|科学研究|校企合作|招生工作|就业工作|校友分会|一流专业建设
 
当前位置: 首页>>栏目备份-勿删>>实验大纲>>正文
 
《嵌入式系统应用与开发》实验教学大纲
2012-11-01 09:38     (次数)

《嵌入式系统应用与开发》实验教学大纲

课程名称:

嵌入式系统应用与开发

课程编号:

408309

436313

适用专业:

计算机科学与技术

软件工程

总 学 分:

3

总 学 时:

54

其中实验学时

26

一、实验性质、目的与任务

《嵌入式系统应用与开发》课程是嵌入式方向和物联网方向的方向课。该课程主要讲述嵌入式系统应用程序开发方法与技巧,主要内容包括嵌入式应用程序开发基础、嵌入式应用程序开发环境的搭建、文件I/O编程、进程控制开发、进程间通信开发、多线程编程及网络编程等方法与技巧。通过本实验课程,应达到以下几个教学目的:

(1)掌握嵌入式系统应用程序开发编程基础,包括能熟练掌握vi、gcc、gdb、makefile等开发工具的使用,能掌握linux操作系统常用的基本命令的使用。

(2)掌握linux操作系统下,文件I/O编程方法和技巧,能熟练使用ANSIC标准和POSIX标准C库I/O函数对文件进行操作。

(3)掌握linux下进程控制编程方法和技巧。能熟练掌握进程的创建、进程的等待、多进程、守护进程的编程方法和技巧。

(4)掌握linux下进程通信编程的方法和技巧。熟练掌握管道通信、消息队列、共享内存,信号及信号量等通信机制的原理和编程方法。

(5)掌握linux下线程编程的方法和技巧。

(6)掌握linux下网络编程的方法和技巧,能够使用socket通信原理编写TCP程序。

二、教学基本要求:

通过本课程的学习,使学生能掌握嵌入式应用程序开发的环境搭建过程;能熟练掌握嵌入式应用程序开发的方法和技巧,为嵌入式产品的应用程序开发打下坚实的基础。

上机实验要求:

(1)上机前,准备好上机所需的程序;

(2)上机时,输入和调试自己所编写的程序;

(3)上机结束后,应整理出实验报告,实验报告应包括以下内容:实验项目名称;程序清单;运行结果;对运行情况所作的分析以及本次调试程序所取得的经验,如果程序未能通过,应分析其原因。

三、实验项目与类型

序号

实验项目

学时

实验性质

备注

验证

综合

设计

研究

探索

必做

选做

1

Linux定制安装

1

2

Linux常用命令使用

1

3

Vi使用

1

4

Gcc程序编译

2

5

GDB程序调试

2

6

Makefile工程管理器的使用

1

7

文件底层编程综合-文件拷贝

2

8

fork和vfork创建子进程

1

9

Exec函数族

1

10

进程等待函数wait和waitpid

1

11

编写多进程程序

1

12

编写守护进程

1

13

无名管道通信实验

1

14

有名管道通信实验

1

15

信号处理

2

16

共享内存

2

17

消息队列

2

18

线程创建

1

19

TCP程序设计

20

UDP程序设计

21

并发服务器设计

四、实验教学内容及学时分配:

实验1 Linux定制安装

1、实验目的

学会Linux定制安装。

2、方法原理

Linux定制安装。

3、主要实验仪器及材料

1)安装了vmware7虚拟机的pc;

2)RHEL5操作系统的镜像文件。

4、实验内容

定制安装Linux虚拟机。

实验2 Linux常用命令使用

1、实验目的

学会使用linux的常见的命令。

2、方法原理

linux常见命令使用。

3、主要实验仪器及材料

安装了RHEL5虚拟机的pc机。

4、实验内容

熟练使用该节所介绍的linux命令。

实验3 vi使用

1、实验目的

学会vi编辑器。

2、方法原理

vi编辑器。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

熟练使用该节所介绍的vi创建、编辑、保存文件。

实验4Gcc程序编译

1、实验目的

学会使用gcc编译器。

2、方法原理

gcc编译器。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一应用程序,使用gcc进行编译,并分别使用-o,-g,gstatic,-O2等选项。

实验5 GDB程序调试

1、实验目的

学会gdb调试器的使用。

2、方法原理

gdb工具。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一应用程序,使用gdb调试,调试中使用小节中介绍的所有命令。

实验6 Makefile

1、实验目的

掌握Makefile工程管理器的使用。

2、方法原理

Makefile配制文件。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

实现一应用程序,该程序由两个C文件构成,使用makefile来完成程序的编译。

实验7文件底层编程综合-文件拷贝

1、实验目的

学会使用C库函数和linux系统调用,并理解它们的区别。

2、方法原理

Linux系统调用,底层I/O函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

使用linux操作系统下的系统调用I/O函数实现文件copy的功能

(如:./copy_file txt.text tt.txt text.txt为源文件,tt.txt为目标文件)。

实验8 fork和vfork创建子进程

1、实验目的

学会linux系统调用fork和vfork函数的使用,并理解与vfork这间的区别。

2、方法原理

linux系统调用fork和vfork函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

分别使用fork和vfork函数编写应用程序,在程序中创建一子进程,分别在父进程和子进程中打印进程ID,观察理解父子进程的运行顺序。

实验9 exec函数族

1、实验目的

学会使用exec函数族,并理解各exec函数的使用区别。

2、方法原理

exec函数族。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一应用程序,在程序中创建一子进程,子进程调用exec函数实现在当前目录创建一新文件。

实验10 进程等待函数wait和waitpid

1、实验目的

学会使用linux系统调用进程等待wait和waitpid函数。

2、方法原理

wait和waitpid函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一应用程序,在程序中创建一子进程,子进程睡眠1秒,父进程等待子进程退出,并提示打印子进程退出信息,父进程退出。

实验11 编写多进程程序

1、实验目的

学会编写多进程程序。

2、方法原理

fork、wait、exit和wait或waitpid函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写多进程程序(头文件声明可省略):有3个进程,其中一个为父进程,其余两个是该父进程创建的子进程,其中一个子进程运行“ls -l”指令,另一个子进程在暂停5s之后异常退出,父进程先用阻塞方式等待第一个子进程的结束,然后用非阻塞方式等待另一个子进程的退出。

实验12 编写守护进程

1、实验目的

学会编写守护进程,掌握守护进程编写过程。

2、方法原理

守护进程。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

建立起一个守护进程,然后在该守护进程中新建一个子进程,该子进程暂停10s,然后自动退出,并由守护进程收集子进程退出的消息。在这里,子进程和守护进程的退出消息都在系统日志文件(例如“/var/log/messages”)中输出。子进程退出后,守护进程循环暂停,其间隔时间为10s。

实验13 无名管道通信实验

1、实验目的

学会进程间通信---无名管道的使用,理解无名管道通信原理。

2、方法原理

无名管道通信,pipe函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

建立一管道通信程序,实现父子进程间的通信。要求:父进程从键盘输入内容写入管道,子进程从管道中读出并打印到屏幕。

实验14 有名管道通信

1、实验目的

学会进程间通信---有名管道的使用,理解有名管道通信原理。

2、方法原理

有名管道通信,mkfifo函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

启动A进程,创建一有名管道,并向其写入一些数据,启动B进程,从A创建的有名管道中读出数据。

实验15 信号处理

1、实验目的

学会使用自定义信号处理函数,处理信号,理解信号处理原理。

2、方法原理

信号通信,signal、pause函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

在进程中用SIGBUS注册处理函数,并向该进程发送SIGBUS信号。

实验16 共享内存

1、实验目的

学会使用共享内存进程间通信方式,理解共享内存通信原理。

2、方法原理

共享内存通信,shmget、shmat、shmdt和shmctl函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

使用共享内存进行两个进程(发送端和接收端)之间的通信,包括共享内存的打开或创建、共享内存映射和删除等多种操作(用“WROTE”字符串作为标志以实现同步)。发送端进程循环写直到写入有效数据“quit”和接收端进程循环读直到读到有效数据“quit”。

实验17 消息队列

1、实验目的

学会使用消息队列进程间通信方式,理解共享内存通信原理。

2、方法原理

消息队列通信,msgget、msgrcv、msgsend和msgctl函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

使用消息队列进行两个进程(发送端和接收端)之间的通信,发送端进程循环写直到写入有效数据“quit”和接收端进程循环读直到读到有效数据“quit”。

实验18 线程创建

1、实验目的

学会使用线程并使用。

2、方法原理

线程,pthread_create和pthread_join函数。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一应用程序,在程序中创建一线程,并向该线程处理函数传递以结构体。

实验19 TCP程序设计

1、实验目的

学会使用linux的socket套接字网络编程,熟悉使用TCP传输协议的网络编程流程。

2、方法原理

socket套接字网络编程。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一使用TCP协议的服务器程序和客户端程序,客户端向服务器发送字符串,服务器打印收到的字符串。

实验20 UDP程序设计

1、实验目的

学会使用linux的socket套接字网络编程,熟悉使用UDP传输协议的网络编程流程。

2、方法原理

socket套接字网络编程。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一使用UDP协议的服务器程序和客户端程序,客户端向服务器发送字符串,服务器打印收到的字符串。

实验21 并发服务器设计

1、实验目的

学会多线程或多进程编程结合网络编程的综合运用,实现能同时接受多客户端连接的服务器程序。

2、方法原理

多线程或多进程,socket套接字网络编程。

3、主要实验仪器及材料

pc一台,windows xp操作系统,安装虚拟机linux操作系统;

4、实验内容

编写一使用TCP协议的并发服务器程序和客户端程序,每客户端向服务器发送字符串,服务器打印收到每客户端的字符串。

五、考核办法

1.教师对学生实验过程完成情况进行详细登记,记入实验成绩中。

2.学生完成实验后按要求撰写实验报告,根据实验报告确定每次实验的等级。

3.实验成绩按20%比例计入课程期评总成绩中。

六、实验教学指导书和参考书

1、实验指导书

[1]自编《嵌入式系统应用与开发》

[2]《嵌入式Linux应用程序开发标准教程(第2版)》.华清远见嵌入式培训中心.人民邮电出版社,2009.

2、主要参考书:

[1]刘洪涛,孙天泽.《嵌入式系统技术与设计》.人民邮电出版社,2008

[2] Daniel P.Bovet;Marco Cesati著.陈莉君,张琼声,张宏伟译,《深入linux内核(第三版)》.中国电力出版社,2007

[3][美]Christopher Halinan.《嵌入式Linux开发(英文版)》.人民邮电出版社,2008

[5] [英]Neil Matthew;Richard Stones著.陈健,宋健建译.《linux c程序设计(第三版)》.人民邮电出版社,2009

主撰人: 刘泽平

审核人: 刘伟群

2012.6

上一条:《人工智能》实验教学大纲
下一条:《嵌入式系统概论》实验教学大纲
关闭窗口
 

行政办: 百全楼110 | 教务办: 百全楼213 | 邮编: 417000 | 电话/传真: 0738-8377309
@2003-2015 版权所有: leyu乐鱼·(中国)官方网站信息学院