求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
 
 
 
开班计划 | 技术学院 | 管理学院 | 嵌入式学院 | 机械 | 军工学院 | 定向培养 | 专家指导 | 角色培养  
 电话 English
成功案例   品质保证
 
成功案例
知名某轨 “ReWorks中
塞默菲舍 《嵌入式软件架构设
某水声通 嵌入式Linux应
广汽研究 ARM处理器体系架
联合汽微 嵌入式软件架构设计
某全球知 Linux内核和系
广汽研究 嵌入式软件架构设计

相关课程  
UML +RoseRealtime+嵌入式
C++嵌入式系统开发
嵌入式白盒测试
手机软件测试
嵌入式软件测试
嵌入式操作系统VxWorks
 
全部课程 >嵌入式开发  
Linux BSP和驱动深入剖析
821 次浏览  56 次
宋老师
知名嵌入式系统专家,2008~2009年度十大畅销书、十大原创图书《Linux设备驱动开发详解》作者
 
时间地点: 北京、上海、深圳根据报名开班
课程费用:5000元/人 
报公开课  
企业内训:可以根据企业需求,定制内训,详见 内训学习手册


认证方式: 培训前了解能力模型。 培训后进行能力评测:
  • 在线考试
  • 能力分析,给出学习建议
  • 合格者颁发证书,作为职业技能资格证明

    本课程详解 Linux 内核编程的并发、同步、中断、定时器、内存、 DMA 和 cache 等问题,结合实例讲解 Linux 驱动各种设备驱动架构、 I/O 模型以及 Linux 的移植、设备树代码的编写等。
    本课程的布局安排是,每天上课约 4 小时,实验约 2 小时。要求学员亲自在电脑和电路板上进行实验。
    培训目标:
  • 内核编程主要API深入剖析
  • 定时器
  • 中断
  • Linux内核模块
  • Linux内核的调试
  • Linux设备驱动模型
  • 设备驱动并发控制与I/O模型
  • Linux复杂设备驱动
  • 将Linux移植到一个新的SoC或电路板
  • 设备树(Device Tree)
  • 培训对象: Linux开发者(熟练地使用Linux,在Linux上从事开发)
    学员基础:了解Linux开发知识,具备一定的Linux开发经验
    授课方式:定制课程 + 案例讲解 + 小组讨论,60%案例讲解,40%实践演练
    培训内容:2天

    第一章 内核编程      1.板卡介绍和使用
         2.Bootloader 、 kernel 、文件系统构成
         3. 怎么更新板子里的东西
    第 1 节 内核编程主要 API 深入剖析
         1 同步与并发 (atomic, spinlock,mutex,completion 深入理解 )
         2 等待队列
         3 内核延时
         4 内存申请和释放
         5 用作 DMA 的内存
         6 内存屏障与寄存器访问
    第 2 节 定时器      1 内核定时器 tick
         2 tickless
         3 高精度定时器 hrtimer
    第 3 节 中断
         1 中断顶底半部
         2 软中断
         3 tasklet
         4 工作队列
         5 threaded_irq
         6 多核中断 affinity 及软中断负载均衡
    第 4 节 Linux 内核模块
         1 内核模块 init 和 exit
         2 输入参数
         3 输出参数
         4 模块的 license 与 GPL
    第 5 节 Linux 内核的调试      1 printk
         2 Oops 和 panic
         3 initcall_debug
         4 电源管理 suspend/resume debug
         5 earlyprintk 与 low level debug
         6 proc 和 sys
         7 grabserial
         8 soft 和 hard lockup
         9 内核的源码级调试
         10 内核模块的源码级调试
         11 ftrace
    第二章 设备驱动 第 1 节 Linux 设备驱动模型
         1 Linux 设备分类
         2 Sys ,总线、设备、驱动和 class
         3 热插拔
         4 电源管理
         5 udev
    第 2 节 设备驱动并发控制与 I/O 模型
         1 Linux 字符设备驱动结构
         2 Linux 设备驱动中的并发控制
         3 Linux 设备驱动中的阻塞与非阻塞 I/O
         4 Linux 多路复用 I/O
         5 Signal IO 与 AIO
         6 用户空间 I/O 与多线程设计原则
    第 3 节 Linux 复杂设备驱动
         1 设备驱动分层框架
         2 设备驱动的面向对象设计
         3 platform 驱动
         4 基于 I2C/SPI/USB 等总线的驱动
         5 块设备驱动与块 I/O 调度
         6 网络设备驱动
    案例分析
         1 input 子系统
         2 LCD 子系统
         3 DM9000 网卡
         4 ADI 网卡
         5 vmem_disk
    第三章 Linux移植和BSP构建 第 1 节 将 Linux 移植到一个新的 SoC 或电路板
         1 OS timer
         2 L2 cache
         3 early_printk
         4 clk tree
         5 GPIO
         6 pinmux
         7 IRQ chip
         8 DMA
         9 MACH_INIT
         10 社区维护
    第 2 节 设备树 (Device Tree)
         1 用一个假设的简单电路板从头到尾构建一个 dts 文件
         2 dts 编译为 dtb ,与 dtb 反编译为 dts
         3 machine 级的匹配
         4 driver 和 device 级的匹配
         5 基地址、中断、 gpio 、时钟、 reset 、 pinmux 等常规属性
         6 dts 节点自定义属性
         7 启动过程中 dtb 的读取与展开
         8 i2c, spi 子节点的展开
         9 dts 的分级与 dtsi
         10 dt binding 文档
       
    821 次浏览  56 次
    其他人还看了课程
    嵌入式Linux 内核原理与系统搭建  755 次浏览
    Linux内核进程、内存和I/O  923 次浏览
    Linux BSP和驱动深入剖析  821 次浏览
    FPGA应用设计初级  651 次浏览
    ARM处理器体系架构与编程  1439 次浏览
    定制内训
    最新活动计划
    QT应用开发 11-21[线上]
    C++高级编程 11-27[北京]
    LLM大模型应用与项目构建 12-26[特惠]
    UML和EA进行系统分析设计 12-20[线上]
    数据建模方法与工具 12-3[北京]
    SysML建模专家 1-16[北京]