嵌入式系统开发

  •  课程目标

    本课程为企业用户专门定制,涵盖了嵌入式Linux操作系统原理、应用开发、内核定制移植、驱动程序开发等全方面内容,同时还包括电源管理、内核调试、性能优化等高级内容。学习本课程的学员能够从事嵌入式系统相关的项目开发。

  •  师资团队

  • 华清创客企业内训讲师,均是来自各个领域的资深专家,均拥有6年以上大型项目经验。

  •  培养对象

    嵌入式系统项目经理,嵌入式系统开发人员,嵌入式系统分析设计人员、嵌入式测试 工程师、嵌入式操作系统工程师及想从事嵌入式系统开发的开发人员。

  •  培训方式

第一种:华清创客讲师面授
课时:共5天,每天6学时,总计30学时
◆费用(含教材费):公司员工(3200元),个人自费(2500元),学生自费(1900元,凭有效证件)
◆培训证书(可选):培训合格学员可获工业和信息化部《国家信息技术应用技能嵌入式Linux系统开发工程师认证证书》(认证费500元),Atmel公司全球统一《Atmel嵌入式工程师认证证书》(认证费500元),红帽公司《Linux系统开发工程师证书》(认证费600元)。
◆外地学员:代理安排食宿(需提前预定)

第二种:线上直播授课
直播课时:共10天,每天3学时,总计30学时;
辅导:授课期间,辅导老师每天有1小时的辅导直播
◆费用(含教材费):公司员工(3200元),个人自费(2500元),学生自费(1900元,凭有效证件)
◆培训证书(可选):培训合格学员可获工业和信息化部《国家信息技术应用技能嵌入式Linux系统开发工程师认证证书》(认证费500元),Atmel公司全球统一《Atmel嵌入式工程师认证证书》(认证费500元),红帽公司《Linux系统开发工程师证书》(认证费600元)。

第三种:嵌入式Linux系统开发企业定制培训
课时:根据定制的大纲确定课时
费用:根据课程难度,每课时1500~3000元
◆培训证书(可选):培训合格学员可获工业和信息化部《国家信息技术应用技能嵌入式Linux系统开发工程师认证证书》(认证费500元),Atmel公司全球统一《Atmel嵌入式工程师认证证书》(认证费500元),红帽公司《Linux系统开发工程师证书》(认证费600元)。

    •  质量保证

      1、培训过程中,如有部分内容理解不透或消化不好,可免费在下期培训班中重听;

      2、培训结束后免费提供一个月的技术支持,充分保证培训后出效果;

      3、培训合格学员可享受免费推荐就业机会。

    •  课程大纲


      第一章     1.1 嵌入式Linux基础  

                     1.1.1 Linux内核发展趋势与概况      

                     1.1.2 建立嵌入式Linux开发环境   

                     1.1.3 GCC工具链的使用方法  

                     1.1.4 GDB调试简要介绍  

                     1.1.5 ELF文件格式分析   

                     1.1.6 autoconf使用   

                     1.1.7 makefile语法    

                     1.1.8 编译内核 

               实验        

                     1)用GDB调试一个简单的应用程序     

                     2)使用autoconf创建一个简单的makefile文件  

                     3)通过makefile编译程序       

               1.2 Linux应用编程

                     1.2.1 Linux静态/动态库的开发         

                     1.2.2 Linux进程间通讯编程方式      

                     1.2.3 Linux网络编程 

               实验        

                     1)开发一个Linux静态库        

                     2)开发一个Linux动态库,并测试        

                     3)比较Linux的几种进程间通讯方式    

       

      第二章     2.1 理解Linux内核       

                     2.1.1 Linux内核框架 

                     2.1.2 Linux的进程      

                     2.1.3 O(1)调度算法分析    

                     2.1.4 Linux内存管理模式 

                     2.1.5 Linux内核启动流程分析 

                     2.1.6 Linux系统服务 

                     2.1.7 启动Linux内核        

               实验        

                     1)开发一个多进程的程序      

                     2)分析Linux启动流程    

               2.2移植 

                     2.2.1 移植的概念      

                     2.2.2 移植Linux内核        

                     2.2.3 bootloader的概念    

                     2.2.4 移植u-boot      

               实验        

                     1)动手移植Linux内核到arm平台        

                     2)移植u-bootarm平台     

       

      第三章     3.1 Linux内核调试

                     3.1.1 Printk()      

                     3.1.2 Oops消息 

                     3.1.3 /proc文件系统         

                     3.1.4 Kgdb  

                     3.1.5 追踪工具(strace,ltt,gprof,gcov,memwatch)   

               实验        

                     1)使用printk函数调试Linux内核

                     2)通过proc文件系统调整系统性能     

                     3)使用kgdb调试Linux内核  

               3.2 系统性能测试

                     3.2.1快速启动技术  

                     3.2.2优化内核应用程序  

                     3.2.3 内存泄漏检测         

               实验        

                     1)测试自己Linux系统的性能        

                     2)检测给定程序,查看内存泄漏 

       

      第四章     4.1 Linux 设备驱动开发        

                     4.1.1 Linux驱动模型与分类      

                     4.1.2 构建和运行模块      

                     4.1.3 module工具使用方法      

                     4.1.4 中断处理 

                     4.1.5 内核中采用的同步技术 

                     4.1.6 字符设备驱动概述 

                     4.1.7 访问设备驱动程序的方法      

                     4.1.8 fs_operation结构分析     

                     4.1.9 增强的字符驱动程序      

               实验        

                     1)编写简单的Linux字符驱动程序        

                     2)分析fs_operation结构        

               4.2 Linux 设备驱动开发        

                     4.2.1 设备文件系统:devfs sysfs      

                     4.2.2 Linux的内存管理      

                     4.2.3 DMA操作 

                     4.2.4 高速缓存管理 

                     4.2.5 mmap设备操作        

                     4.2.6 设备结构和属性      

                     4.2.7 Linux-2.6.x驱动模型

               实验        

                     1)理解设备文件系统      

                     2)熟悉mmap设备操作 

                     3)在驱动程序中使用DMA     

       

      第五章     5.1 文件系统        

                     5.1.1 Ramdisk     

                     5.1.2 理解MTD构架        

                     5.1.3 NOR/NAND flash--了解两者的特点和底层驱动。

                     5.1.4 文件系统的制作和固化 

                     5.1.5 虚拟文件系统 

                     5.1.6文件系统接口VFS    

                     5.1.7 其他文件系统 

               实验        

                     1)测试自己Linux系统的性能        

               5.2 手持设备特定驱动

                     5.2.1和手机相关的驱动介绍  

                     5.2.2 framebuffer        

                     5.2.3 overlay       

                     5.2.4定时器/高精度定时器     

                     5.2.5 红外  


the end

评论(0)