ARM嵌入式Linux应用开发工程师班课程介绍
课程背景
嵌入式软件开发无疑是当今最热门的行业,嵌入式软件工程师的薪资比普通的软件工程师的薪资平均高50%以上。随着智能电网、物联网的建设,社会对嵌入式人才的需求越来越多。
很多同学或在职人员已经意识到了嵌入式开发的重要性,已经开始自学嵌入式开发技术,但是因为嵌入式开发不同于普通的纯软件开发,它是综合了计算机软、硬件的一门综合*,涉及模拟电路,数字电路,C语言、计算机组成原理,微机控制技术,网络技术,数据结构等课程,很多同学面对嵌入式涉及的这么多课程和知识点,往往不知道从何处下手开始学习嵌入式。
本课程即是针对有兴趣学习嵌入式Linux开发又不知道从何处着实开始学习嵌入式Linux开发的在校同学以及社会在职人员。
课程目标
本课程采用理论教学与实验相结合的方式,系统地介绍嵌入式Linux下环境和程序开发技术。通过本课程的学习,学员可以掌握嵌入式Linux的环境搭建过程,具备Linux下进行多进程、多线程、网络、GUI、数据库程序的开发能力,引导学员进入嵌入式Linux开发的精彩世界,为后续深入学习嵌入式Linux驱动和系统编程打下坚实的基础。
培养对象
ARM嵌入式Linux初学者
ARM嵌入式Linux爱好者
有志于从事ARM嵌入式Linux应用程序开发的工程师
入学要求
学员学习本课程应具备下列基础知识:
具备计算机基础知识;
具备C语言编程基础;
电子类、计算机类、通信类、自动化类高年级本科生或研究生
培训教材
《ARM嵌入式Linux系统应用研发工程师培训讲义》
《ARM嵌入式Linux系统应用研发工程师培训实验教程》
课时费用
课时: 共12天,96课时
(周六,周日上课, 周一 ~ 周五 晚上9:00 ~ 10:00网络在线答疑)
培训费用(含教材费用 + 开发板费用):2800元
实验环境
为了保证培训效果,增加互动环节,我们坚持小班授课,每期报名人数限10人,多余人员安排到下一期进行。每个学员配备一套嵌入式飞凌ARM9学习开发板。
课程大纲 (2010-09-25更新)
详情登陆
时间 课程大纲
*部分 ARM嵌入式Linux开发环境搭建及编程(2天)
第 一 天
上午
嵌入式Linux开发环境搭建
目标:通过今天课程的学习,学员能掌握嵌入式Linux的开发流程,掌握Linux下服务器的配置方法,为嵌入式Linux的高效开发做铺垫。
1. ubuntu安装及配置实战
(1)ubuntu 安装实战
(2)ubuntu基本配置及使用
(3)linux命令及简单介绍
2.ubuntu配置实战
(1)网路配置
3 . 嵌入式开发板简介
4. 构建嵌入式linux开发环境
下午
实验
1. ubuntu安装及配置
2. 虚拟机vmware安装及配置
3. windonws、ubuntu和开发板之间的数据传递
第 二 天
嵌入式下C编程
(1) 编程环境搭建
(2) Gcc工具使用
(3) Makefile编写及make工具使用
(4) 其它常用工具使用
实验
1. 学生成绩管理系统设计及远程调试
第二部分 嵌入式Linux内核与文件系统 ( 1天)
第 三 天
嵌入式Linux内核与裁剪
1. Linux内核与裁剪
2. 构建嵌入式Linux根文件系统
3. Linux下文件系统之两层含义
4. Linux下根文件系统的目录结构
5. 移植busybox
6. 安装glibc库
7. 制作yaffs文件系统映像文件
8. 制作jffs2文件系统映像文件
实验
1. 嵌入式linux内核裁减
2. 嵌入式Linux内核移植及根文件系统制作
第三部分 嵌入式Linux应用程序设计及编程( 4天)
第 四 天
上午 进程管理及编程
1. 进程创建
2. 进程等待
3. Exec函数族
进程间通信
1. 管道/有名管道
2. 共享内存
信号及信号处理
1. Linux2.6内核信号机制
2. 常用信号分类
3. 进程间信号通讯模型
下午 实验
1. 进程间通信实验(管道、共享内存、消息队列)
2. 守护进程实验
第 五 天
上午 网络通讯socket
1. socket基本概念
2. socket通信框架模型
3. 常用函数使用讲解
4. TCP通信实例
5. UDP通信实例
6. socket高级通信
下午 实验
1. 基于TCP/UDP协议的聊天软件设计
第 六 天
上午 线程及线程间通信
1. 线程概念及创建
2. 线程间通信
3. 互斥锁
4. 条件变量
5. 信号量
linux串口控制及编程
1. linux终端设备(串行端口终端、伪终端、控制台终端)
2. 串口属性编程控制
3. 基于GPRS Modem的无线短信控制平台设计与编程分析
嵌入式系统应用程序移植
下午 实验
1. 生产者消费者实验
第 七 天
上午 嵌入式EmbeddedQT图形软件设计
1. QT/Embedded图形开发基础
2. QT/Embedded关键技术
3. QT/Embedded移植
下午 实验
基于QT/Embedded的嵌入式计算器设计与编程
第四部分 嵌入式Linux设备驱动及编程( 1天)
第 八 天
上午 LINUX字符设备驱动程序开发
1. Linux字符设备驱动基础
2. 字符设备驱动程序实现框架与典型驱动分析
3. 用户空间与内核空间的数据传输
4. 同步、互斥、阻塞、睡眠机制
5. Linux-2.6设备模型与sysfs文件系统
下午 实验
1. LED字符设备驱动实验
第五部分 嵌入式Linux综合项目实训( 4天)
实训项目
基于USB摄像头的网络视频采集与传输系统
要点:
1. 系统需求分析
2. 数据结构设计及算法设计
3. 编程实现
培训讲师:
曹国辉,凌嵌科技技术总监,高级系统架构师,8年嵌入式系统开发经验,曾在明基,中兴等多家跨国公司担任系统架构师,嵌入式软件设计经理,产品经理等职位,主持过扫描仪,打印机,多功能一体机机,3G无线路由器,移动核心网交换机等大型项目的开发,在需求分析、系统架构、硬件设计、Linux移植,bootloader移植、驱动开发,应用程序开发等方面具有丰富的经验,获得*发明专利3项。