|
|||||
开放的 Linux
受到广泛的欢迎,得到越来越多公司的支持,但是阻碍 Linux
在各个领域广泛应用的主要因素就是内核/驱动高端人才极度缺乏,Linux源代码中85%是设备驱动,嵌入式系统中驱动程序更为重要,几乎每一个嵌入式系
统都是从驱动程序员手中调试出来的。然而面对巨大的市场需求,国内很难找到一家专门系统培训Linux驱动工程师的培训机构,因为培训难度大,对老师的经
验和知识面要求高,大部分培训机构的课程仅仅对Linux 浅尝即止,难以达到培养 Linux 高水平人才的目的。 |
|||||
课程目标 | |||||
驱动程序开发是嵌入式Linux项目中*量*的一部分内容,开发出高质量的驱动程序是项目成功的关键。随着产品上市周期的缩短,市场对于驱动程序开发 人员的要求也在日益增加。本课程旨在培养具备开发Linux下驱动程序的人才,采用理论教学与实验相结合的方式,系统地介绍Linux下设备驱动程序开发 过程。通过本课程的 学习,学员可以掌握Linux下字符设备、块设备、网络设备、framebuffer设备、sd卡等驱动程序、usb驱动的开发,同时掌握嵌入式 Linux的系统开发和分析方法。 |
|||||
培养对象 | |||||
Linux系统驱动开发工程师、Linux中高级软件工程师以及内核开发人员。 |
|||||
入学要求 | |||||
学员学习本课程应具备下列基础知识: |
|||||
师资团队 | |||||
|
|||||
教材 | |||||
◆ 《武汉华嵌-嵌入式Linux驱动开发培训讲义》 |
|||||
班级规模及环境 | |||||
为了*培训效果,增加互动环节,我们坚持小班授课,每期报名人数限20人,多余人员安排到下一期进行。人手一套开发板和开发用的PC主机。 |
|||||
时间地点 | |||||
本课程每期班限额20名,报满即停止报名,请提前在线或电话预约 |
|||||
学时费用 | |||||
◆课时: 共10天,每天6学时,总计60学时,其中授课30学时,实验30学时。 |
|||||
最新优惠 | |||||
◆团体报名优惠措施:两人95折优惠,三人或三人以上9折优惠! ◆套餐课程同时报名优惠措施(以下套餐优惠只能任选一种): 1、同时报选《ARM开发培训班》,即享受400元优惠 2、同时报选《嵌入式Linux系统开发班》,即享受400元优惠!
|
|||||
质量保障 | |||||
1、培训过程中,如有部分内容理解不透或消化不好,可免费在下期培训班中重听; |
|||||
课程进度安排(最新更新日期:2012.03.10) | |||||
时间 | 课程大纲 | ||||
第1-2天 |
|||||
学习目标 |
通过本课学习,学员可以从用户设备I/O编程角度深入了解设备驱动的原理;通过了解字符设备驱动框架和具体硬件设备I/O操作,能够进行字符设备驱动开发;了解linux2.6/3.x内核的设备模型及掌握udev的使用。 |
||||
9:00 | 12:00 |
1. LINUX字符设备驱动程序开发 |
||||
14:00 | 17:00 |
【实验】 |
||||
第3-4天 |
|||||
学习目标 |
通过本课学习,学员可以掌握在基本字符设备驱动的基础上增加复杂的内核机制;了解1inux内核中断子系统的实现原理,掌握linux中断处理程序编写方法;掌握内核延时机制及内存管理机制。 |
||||
9:00 | 12:00 |
2. 设备驱动中常用的内核机制 2.1 Poll和select操作 2.2 异步通知机制 2.3 1inux内核中断子系统 2.4 中断处理程序编写 2.5 驱动程序上/下半部处理与延缓执行机制 2.6 内核定时器与延迟机制 2.7 内核内存管理机制 |
||||
14:00 | 17:00 |
【实验】 |
||||
第5-6天 |
|||||
学习目标 |
通过本课学习,学员可以明白Linux中块设备驱动的特点及框架,独立分析Linux中大部分块设备的驱动方法,并熟悉MTD设备驱动的特点与框架,具备MTD Nand Flash驱动程序开发的能力。通过实验,学员还可以掌握IDE、Ramdisk驱动移植方法。 |
||||
9:00 | 12:00 |
3. LINUX块设备驱动程序开发 |
||||
14:00 | 17:00 |
【实验】 |
||||
第7天 |
|||||
学习目标 |
网络设备是 嵌入式产品开发,特别是基于网络的产品开发中最重要的内容之一。通过本课学习,学员可以深入理解Linux网络驱动程序中有关套接字(socket)、套 接字缓冲区(sk_buff)等概念,了解网络驱动程序的数据交换过程。通过实际的动手操作,学员将掌握如何移植或编写具体网卡的驱动程序,并在此基础上 实现更为高级的网络功能。了解MMC/SD卡的物理及电气特性,熟悉相关的*协议,并在此基础上能够移植或编写Linux下的MMC/SD控制器的驱动 程序。 |
||||
9:00 | 12:00 |
4. LINUX网络设备驱动程序开发 |
||||
14:00 | 17:00 |
【实验】 |
||||
第8天 |
|||||
学习目标 |
通过本课学习,学员可掌握嵌入式Linux显示驱动程序的开发方法,理解嵌入式Linux图形驱动程序实现机制,能够移植或编写嵌入式显示控制器驱动程序,并完成针对各种LCD硬件的定制。 |
||||
9:00 | 12:00 |
6. LINUX帧缓冲驱动程序开发 |
||||
14:00 | 17:00 |
【实验】 |
||||
第9-10天 |
|||||
学习目标 |
掌握USB 通讯规范及拓扑结构中的主机控制器、HUB、USB设备的*流程;掌握S3C2440 /S5P210 USB device控制器的*原理;最后在开发板上编写usbtransfer固件程序,结合PC机上windows环境下的DNW软件,实现基于usb的文 件下载功能。通过Linux下USB驱动开发内容的学习,学员将深入理解Linux内核USB子系统,掌握USB驱动程序编写技术。经过学习后的学员能够 移植或编写USB主机OHCI和设备驱动程序,最后通过对usbtransfer设备的驱动编程,实现在linux环境下的文件下载功能(替换DNW的下 载功能)。 |
||||
9:00 | 12:00 |
8. LINUX下USB驱动开发基础 |
||||
14:00 | 17:00 |
【实验】 |