学习过程

来源:互联网 发布:淘宝关闭花呗支付功能 编辑:程序博客网 时间:2024/06/16 12:36

第一阶段 Linux命令,工具和C编程基础

 

本阶段主要介绍Linux的基本命令,VIVIM编辑器,各种Linux服务配置、Shell编程、C语言编译&调试工具。其中包括Linux常用使用和操作。文件管理、目录操作、压缩备份、查找搜索、权限管理、磁盘管理、用户管理、组管理、网络管理等命令,VIVIM编辑器,GNU编译工具GCCGDB调试器和Makefile开发工程管理工具,Linux开发环境的安装及配置,安装和配置NFS服务、SSH服务、Telnet服务、Tftp服务、Shell脚本编程等知识。

 

第二阶段 嵌入式Linux C语言强化

 

本阶段主要强化嵌入式Linux开发中C语言开发能力。强化GNU C的难点和重点。以大量实例分析着重介绍函数与程序结构,字符串、数组、结构体、指针、递归和栈编程、位运算、链表、位域操作、文件操作、静态库及动态库的构建及常用C库函数编程接口的使用等知识。强化学员在LinuxC编程的代码能力和和编码调试能力。使得学员具有扎实的C语言开发功底。

 

第三阶段 Linux高级编程强化训练

 

 

本阶段主要学习Linux高级编程,是整个嵌入式Linux培训体系核心的一块。主要包括:

1Linux系统编程,其中包括信号,系统调用,管道,FIFO,消息队列,共享内存等内容。

2、文件I/O编程,文件描述符,文件读写接口,原子操作,阻塞与非阻塞IO等。

3、多进程和多线程编程,进程标识,用户标识,守护进程,forkvfork,多线程编程创建,线程同步与互斥)

4、网络编程,网络基本概念,UPD/TCP套接口编程,I/O多路转换,网络字节次序,Client/Server结构,精通LinuxSocket网络编程的开发流程,精通网络编程的调用接口函数和相关数据结构,使学员精通在Linux上进行系统编程开发的能力。

 

第四阶段 LanQQ项目实战

 

综合前面阶段所学C编程和Linux系统编程技术,个人独立完成LanQQ项目开发(功能类似飞鸽传书的局域网聊天工具),所实现的功能包括:服务端程序、客户端程序、用户注册、登陆、用户状态、查询其它用户、设置在线状态、设置昵称、单人聊天与多人聊天、文件传输、客户端消息保存、发送离线消息。所使用技术包括:文件I/O编程,多线程/多进程编程,进程间通信,网络编程,资源的互斥访问,对链表的增加删改查,以及完成项目文档的编写。

 

第五阶段 Linux C++编程训练

 

本阶段主要进行C++强化训练,使学员掌握一定的C++程序开发能力。主要内容包括引用、类与对象、构造函数与析构函数、继承与派生、友元函数及友元类、虚函数及多态性、虚基类专题、运算符重载、输入/输入流类库,类模块。强化学员在LinuxC++编程的代码能力和和编码调试能力,使得学员具有扎实的C++语言开发功底。

 

第六阶段 QT图形界面编程

 

本阶段强化训练QT图形界面编程,包括GTKMiniGUIQT介绍,QT常用工具,安装Qt库及其开发工具,配置编译Qt源码,编译生成qvfb,配置移植QtE源码X86版本或ARM版本,Qtdesiner使用, QT信号槽机制,对象工具,窗口系统,常用控件,布局管理,创建QT对话框,菜单与行为。让学员掌握扎实的QT编程开发功底。

 

第七阶段 ARM处理器体系结构与ARM汇编指令

 

本阶段详细讲解ARM体系结构和汇编指令,其中包括ADS,汇编,存储,QEMU与交叉编译,指令分类,寻址方式、指令集、存储系统、异常中断处理、汇编语言以及C\C++和汇编语言的混合编程等知识。同时结合ARM嵌入式开发板硬件设计原理和基本硬件设计流程,分析各种外设的工作原理和驱动机制,最后在ARM开发板上完成多个ARM的项目实验。

 

第八阶段 嵌入式Linux内核环境搭建与制作文件系统

 

本阶段详细讲解嵌入式Linux内核环境的搭建与定制,以及文件系统的制作。其中包括嵌入式Linux内核基本概念和定制流程、Bootloader工作原理、Linux内核裁减配置、Busybox文件系统的制作、根文件系统制作。最后自己动手定制一个Linux内核,并把内核烧录到ARM9开发板上,并编译文件系统烧录到ARM9开发板上,实现自己塔建实现一个完整的ARM9开发编译软、硬件环境。

 

第九阶段 Linux内核配置

 

本阶段学习Linux内核配置。包括代码成熟度配置、常规设置、可加载模块支持、块设备层、CPU类型及特性、电源管理、总线选项、可执行文件格式、网络、设备驱动程序、文件系统、分析支持、内核back、安全、加密、库子程序等。使学员掌握Linux内核配置的流程与方法。

 

第十阶段 嵌入式Linux驱动理论及驱动程序开发训练

 

本阶段详细讲解嵌入式Linux上驱动程序开发流程,其中包括设备驱动程序概念、字符设备驱动程序、块设备、AD转换、(TCP,UDP,ARP,ICMP)网络协议的构建、网卡驱动/LCD触摸屏驱动及移植、USB驱动以及常用嵌入式设备驱动开发等知识。同时独立实现两种嵌入式设备驱动程序的编写,包括驱动模块的调试和加载以及完整的项目开发文档的编写。

 

第十一阶段 Android应用和系统开发

 

在本阶段中主要讲解Andriod手机GUI设计和窗体设计。其中包括,Activity控件编程,View控件编程,View Group控件编程,Widget控件编程,Drawable控件编程,Panel控件编程,Dialog控件编程,Window控件编程,Surface控件编程,SurfaceView控件编程,Canvas控件编程。

 

第十二阶段 Android体系结构和系统移植

 

本阶段详细讲解Android系统的移植,其中包括Android Linux内核移植,文件系统, toolbox等移植, Dalvik移植,ARM处理器介绍,libc移植,libm移植,libdl移植,libm移植,busyboxtoolbox移植,JNIdx, dalvitvm相关移植,Dalvik指令格式,Dalvik执行格式dex,Java字节码格式等相关知识,系统会把Android1.5系统完整的移植到ARM开发板上,完成整个Android内核和上层的编译流程和开发。

 

第十三阶段 大项目实践阶段

 

本阶段主要设计并实现一个企业级嵌入式远程多功能视频监控系统,真实和完整的嵌入式ARM Linux项目的开发流程。学员分组进行项目实战,分为项目需求分析,项目设计说明文档,UML建模,要实现的功能有:内核及spca驱动配置,V4L2视频编程,实现图像拍照,多台客户端同时监控,实现录相及录相回放功能,支持对图像分辨率、帧率、TCP传输端口的设定等,实现客户端播放器功能,实现WEB监控,实现rtsp流媒体功能.其中包括实时数据采集、网络通讯、图形用户界面显示以及嵌入式数据库SQLite存储系统等多种嵌入式Linux编程技术。要求学员建立起团队开发和协同工作的企业项目开发模式的概念和流程,为就业前的职业技能和素质训练做好充分训练。

原创粉丝点击