这门课解决什么问题
很多做系统运维或嵌入式方向的人,平时能熟练用 Shell 命令和部署工具,但一旦遇到硬件设备在 Linux 下报错、底层节点不通、或者需要给新硬件适配接口,就会卡在内核层没法往下查。这门课针对的就是这种“只会用、不懂底层”的断层。它不教你怎么敲命令,而是把焦点放在内核驱动上,带你理清中断触发、互斥锁竞争、文件系统挂载等核心机制。如果你平时的工作场景里,经常需要排查设备加载失败、驱动冲突,或者要给特定硬件写一段适配代码,这批资料能直接补上底层逻辑的缺口。
适合什么基础与建议先看的重点
这套资料不适合完全没碰过命令行的新手。它默认你已经熟悉 Linux 基本操作,能看懂简单的 C 语言语法,最好有过编译内核或模块的粗浅经验。如果是纯应用层开发转底层,建议先花一两天复习指针和内存分配,否则看到结构体和寄存器操作容易跟不上。拿到资料后,不要从头按顺序硬啃,建议先看中断处理和互斥机制这两块。这两个场景在实际硬件调试中最常见,也是排查死锁、设备无响应等问题的基础。把这两部分的原理和代码示例吃透,再回头看文件系统相关的挂载和调用流程,思路会顺很多。
资料怎么配合练习与学完能做什么
视频和文档资料不能只靠“看”,必须搭一个能随意折腾的虚拟机环境。建议用 Ubuntu 或 CentOS 装好编译工具链,准备好内核源码树,每看完一个机制,就跟着写一个最小的内核模块去验证。比如讲到互斥锁,就自己写两段并发访问共享资源的代码,故意制造死锁,再用工具看现场状态。资料里的案例不要直接复制结果,要自己敲一遍编译、加载、卸载的流程,体会内核态和用户态的区别。学完这套资料,你应该能独立看懂常见的设备驱动源码,针对简单的硬件外设写出基础的字符设备驱动,并在系统出现底层异常时,知道去查哪一段内核日志,而不是只在应用层盲目重启服务。
课程目录
课程目录81 集
- 51CTO-Linux内核驱动开发视频课说明.png [493.5 KB] 37.中断共享.mp4
- [39.3 MB] 41.应用层互斥锁的使用.mp4
- [76.8 MB] 02.内核源码查看方法.mp4
- [48.9 MB] 34.小节复习.mp4
- [63.6 MB] 56.小节复习.mp4
- [41.9 MB] 58.platform之资源获取实例.mp4
- [58.8 MB] 65.I2C控制器的内核驱动框架分析.mp4
- [206.7 MB] 55.platform总线机制.mp4
- [90.6 MB] 54.驱动模型之总线、设备、驱动思想.mp4
- [172.2 MB] 57.platform总线匹配规则实例.mp4
- [58.3 MB] 70.操作LCD之frambuffer的APP程序一.mp4
- [118.3 MB] 77.proc文件系统之可读写文件的创建.mp4
- [117.5 MB] 66.5点触控触摸屏驱动编写一.mp4
- [216.3 MB] 74.LCD驱动框架分析二.mp4
- [111.4 MB] 53.驱动模型思想机制及涉及接口.mp4
- [105.5 MB] 68.基于I2C控制器的从机驱动扩展.mp4
- [134.1 MB] 67.5点触控触摸屏驱动编写二.mp4
- [198.1 MB] 75.proc文件创建之LED驱动.mp4
- [106.8 MB] 76.proc文件创建之内核缓存设备驱动.mp4
- [63.1 MB] 32.高级字符设备驱动之ioctl接口实现led操作.mp4
- [102.7 MB] 09.系统调用函数实现的本质.mp4
- [139.3 MB] 45.内核加锁机制之互斥锁和自旋锁.mp4
- [67.6 MB] 51.input子系统关于单点触控触摸屏数据的上报.mp4
- [152.7 MB] 35.内核中断请求接口.mp4
- [66.4 MB] 04.根文件系统的制作.mp4
- [40.2 MB] 24.内核缓存设备驱动的测试app编写.mp4
- [23.5 MB] 22.LED之字符设备驱动的第二种注册方式及app编写.mp4
- [85.7 MB] 62.小节复习.mp4
- [88.7 MB] 71.操作LCD之frambuffer的APP程序二.mp4
- [104.0 MB] 17.内核中动态申请内存空间的接口.mp4
- [177.8 MB] 33.利用gpio子系统操作led驱动.mp4
- [135.8 MB] 21.LED字符设备驱动.mp4
- [217.9 MB] 28.poll驱动接口之应用层select测试.mp4
- [132.3 MB] 43.避免死锁.mp4
- [16.9 MB] 03.内核和文件系统的烧写.mp4
- [57.7 MB] 20.系统调用和内核驱动之间的调用过程.mp4
- [149.9 MB] 29.poll驱动接口之应用层poll测试.mp4
- [37.7 MB] 25.小节复习.mp4
- [40.3 MB] 69.为5点触控触摸屏驱动编写Kconfig.mp4
- [19.8 MB] 01.内核驱动开发概述.mp4
- [148.2 MB] 05.内核编译组织结构.mp4
- [45.9 MB] 38.中断下半部之tasklet实现机制.mp4
- [93.3 MB] 47.自旋锁解决进程和中断下半部之间的竞争.mp4
- [45.5 MB] 40.定制linux内核的启动logo.mp4
- [113.0 MB] 72.内核获取bootloader的bootargs环境变量.mp4
- [63.4 MB] 73.LCD驱动框架分析一.mp4
- [143.5 MB] 61.测试蜂鸣器驱动之app.mp4
- [43.1 MB] 13.驱动模块的编写技术.mp4
- [176.3 MB] 59.SOC各种控制器的设备对象和驱动对象之组织框架.mp4
- [123.2 MB] 52.input子系统关于多点触控触摸屏数据的上报.mp4
- [43.6 MB] 14.系统调用和驱动模块的串讲.mp4
- [50.4 MB] 15.内核双向循环链表的思想机制.mp4
- [151.4 MB] 64.基于ADC的定位器电压值抽样驱动及app编写.mp4
- [108.7 MB] 50.利用input子系统编写功能键设备驱动.mp4
- [155.8 MB] 23.一套驱动支持多个设备的内核缓存设备驱动编写技术.mp4
- [212.4 MB] 36.双边沿触发按键中断注册.mp4
- [69.8 MB] 39.中断下半部之workqueue实现机制.mp4
- [66.4 MB] 19.古老的字符设备驱动注册接口及代码实例.mp4
- [144.7 MB] 44.内核加锁机制之信号量.mp4
- [157.1 MB] 16.内核操作双向循环链表的接口精讲及应用实例.mp4
- [189.9 MB] 60.pwm驱动蜂鸣器驱动.mp4
- [161.5 MB] 30.poll驱动接口之应用层epoll测试.mp4
- [56.1 MB] 46.自旋锁解决进程和中断之间的竞争.mp4
- [63.6 MB] 49.获取鼠标键盘触摸屏等输入设备数据app编写.mp4
- [163.4 MB] 48.原子操作.mp4
- [113.5 MB] 10.内核中实现并添加亮灭led的系统调用函数.mp4
- [148.2 MB] 80.复习二.mp4
- [20.3 MB] 11.应用层测试内核中添加的系统调用函数实现led的亮灭.mp4
- [32.2 MB] 26.内核缓存设备驱动之进程阻塞.mp4
- [102.8 MB] 08.Kconfig和Makefile之间的关系.mp4
- [86.3 MB] 18.设备驱动的分类、设备文件和内核驱动之间的关联.mp4
- [101.2 MB] 42.应用层自旋锁的使用.mp4
- [18.4 MB] 79.复习一.mp4
- [113.3 MB] 78.内核系统时间的获取.mp4
- [91.5 MB] 27.内核缓存设备驱动之IO复用poll接口实现.mp4
- [57.0 MB] 07.Kconfig文件语法.mp4
- [104.2 MB] 31.混杂字符设备驱动注册方法之led驱动.mp4
- [47.8 MB] 63.adc控制器的内核驱动框架结构.mp4
- [157.3 MB] 12.驱动模块的编写技术.mp4
- [153.8 MB] 06.Kconfig文件语法.mp4
- [16.8 MB] 适合人群 Linux内核开发者 系统运维人员 嵌入式工程师 学习收获 掌握内核驱动开发基础 学会编写内核驱动程序 提升系统运维能力 祝您学习愉快! 学有所成,前程似锦!






