通过本课程的系统学习,可以使学员由浅入深地对嵌入式Linux系统全面学习,能够独立胜任嵌入式Linux应用开发、系统开发、驱动开发等多方面工作。
*从事领域:高端消费类电子,通讯等领域。
就业职位:C/C++开发工程师、Lnux软件工程师、Linux系统工程师,Linux驱动工程师、嵌入式开发工程师。
开发平台:S3C2440+Linux2.6
周 期:5个月
【课程的目标】
1. 精通Linux操作系统管理及应用;
2. 精通Linux下C/C++编程技术;
3. 精通Linux环境系统编程;
4. 精通Linux下GUI编程;
5. 掌握ARM处理器体系结构及汇编程序设计;
6. 掌握S3C2440 ARM处理器平台及部件编程;
7. 掌握嵌入式Linux内核裁减移植及内核调试技巧,文件系统裁减,根文件系统制作,Bootloader原理与编写;
8. 掌握Linux下的调试技巧以及BUG检测;
9. 掌握嵌入式Linux下驱动开发;
10. 了解不同于Linux(Wince和uC/OS-II、LPC2200系列MCU)的嵌入式系统的应用开发;
11. 掌握嵌入式Linux实际项目案例开发流程。
*阶段 【嵌入式Linux应用工程师】
《嵌入式开发概论及嵌入式Linux开发过程》
内容涵盖:Linux 操作系统的基本概念。解嵌入式Linux开发环境搭建和项目开发流程,让学员建立起整体架构的概念;硬件平台、移植、启动代码、驱动开发、系统部署等整个过程。
《嵌入式C语言》
内容涵盖:简单数据类型,操作符,表达式,控制流,函数,数组,结构,联合,位操作,指针,标准C库,排序,查找,线性表,栈,队列。
通过大量编程实例使学员对C语言及其数据结构和经典算法完全掌握,达到精通。
《Linux系统系统管理与应用》
内容涵盖:Linux操作系统的概念,安装方法,基本命令,管理配置,VI编辑器,gcc编译器,gdb调试器和make项目管理工具。
通过大量操作使学员对Linux系统能熟练使用。
《Linux环境编程》
内容涵盖:标准I/O,低级I/O,文件和目录,进程环境及控制,日期和时间,信号处理,高级I/O,多进程及进程间通讯,POSIX线程及同步互斥,Socket通讯。
通过大量编程实例是学员对Linux下的程序设计达到精通。
《GUI程序设计》
内容涵盖:窗口系统概论,MiniGUI版本及运行模式,窗口和消息,对话框编程基础,控件编程基础,控件高级编程,菜单,键盘和鼠标,图标、光标和插入符,图形设备接口文本的处理和显示,QT/Embedded简介及应用。
通过大量编程实例使学员对GUI机制及程序设计达到熟练运用的程度。
配套项目:电梯召唤系统
第二阶段 【嵌入式Linux系统工程师】
《ARM体系结构》
内容涵盖:ARM编程模型,详解7种模式,中断向量表,异常,存储系统。
《ARM指令系统及汇编编程》
内容涵盖:寻址方式,指令系统,汇编程序设计,汇编和C混合编程, 调试,GNU伪指令,GNU编译,链接详解。
《S3C2440微控制器及部件》
内容涵盖:S3C2440处理器介绍,NOR & NAND系统引导,内存布局,中断控制系统,GPIO,外部中断输入,硬件定时器,SPI,IIC,UART,AD转换器,实时时钟(RTC)。
通过大量实验使学员对S3C2440处理器核心及各个部件基本掌握。
《嵌入式Linux系统开发》
内容涵盖:Arm-linux-tools工具链,Linux文件系统裁减,根文件系统制作,内核裁减,内核编译,Bootload( ViVi)原理,代码分析,文件系统(JFFS2,YAFFS2,Ramdisk)2.6内核字符设备驱动及其实验,NFS方式调试应用程序,嵌入式数据库,嵌入式web。
通过大量实验使学员对嵌入式Linux系统开发达到熟练掌握的程度。
《Linux驱动程序设计》
内容涵盖:嵌入式Linux驱动开发相关概念及开发流程,了解驱动涉及到的关键技术点,字符设备驱动开发,块设备驱动,网络驱动。
通过几个例子使学员对Linux下的字符设备驱动熟练掌握。
配套项目:MP3播放器
第三阶段 【综合项目实战(实际工程案例)】
《uC/OS-II、LPC2200(飞利浦)、WinCE介绍》
内容涵盖:因为嵌入式领域的多样性,往往都是嵌入式开发,所用技术,开发环境,开发方式确实相差很大,所以本科主要介绍其他嵌入式开发技术,让学员能有全局观,能更好的去认识嵌入式技术。
《C++程序设计》
内容涵盖:作用域和生命期,函数及重载,异常处理,名字空间,类,类构造,赋值,拷贝,析构,操作符重载,虚函数,模板,STL。
通过大量编程实例使学员对C++程序设计达到熟练掌握的程度。
综合项目:网络视频监控系统(实际工程案例)