本课程介绍 Linux 操作系统的 Kernel 驱动程序开发。介绍了 Yocto 构建系统,学生通过编程作业使用该系统构建自己的定制嵌入式 Linux 系统。本课程以 Linux 系统编程和 Buildroot 简介中的作业和知识为基础,在开始本课程之前必须完成这些作业和知识。 Linux 内核编程和 Yocto 项目简介也可以作为 ECEA 5306 的学分,这是 CU Boulder 电子工程理学硕士课程的一部分。 本课程包括特定的硬件和软件要求。请查看下面的常见问题,了解完整的详细信息。

Linux 内核编程和 Yocto 项目简介
本课程是 高级嵌入式 Linux 开发 专项课程 的一部分

位教师:Daniel Walkes
访问权限由 Coursera Learning Team 提供
10,158 人已注册
了解顶级公司的员工如何掌握热门技能

积累特定领域的专业知识
- 向行业专家学习新概念
- 获得对主题或工具的基础理解
- 通过实践项目培养工作相关技能
- 获得可共享的职业证书

该课程共有4个模块
在本模块中,您将学习 Linux 设备驱动程序的基础知识,包括如何构建和运行 Linux 设备驱动程序。 你将修改上一门课程中开发的套接字应用程序,并添加线程。 您还将学习 Yocto 项目,并构建一个包含上一课程中开发的自定义套接字应用程序的自定义 Yocto 映像。
涵盖的内容
11个视频6篇阅读材料2个作业1次同伴评审
在本模块中,你将了解不同类型的 Linux 内核驱动程序以及内核对字符设备驱动程序的支持。 你将了解与用户空间交互的基本驱动程序数据结构和函数。 你将了解内核调试的基础知识以及它与应用程序调试的区别。 您将实现一个经过单元测试的循环缓冲区,该缓冲区将在今后的作业中使用。 最后,你将构建一个支持树外内核模块的 Yocto 嵌入式设备映像。
涵盖的内容
7个视频2篇阅读材料2个作业1次同伴评审
在本模块中,您将学习 Linux 内核中并发性的基础知识,以及如何在设备驱动程序中使用 semaphore 和 mutex 来设计并发访问。 你将学习原子上下文和非原子上下文的区别,以及在每种上下文中的锁定策略。 您将使用本模块中讨论的并发概念,修改您的套接字应用程序,以便在您测试过的循环缓冲区实现的基础上与自定义字符设备进行交互。
涵盖的内容
8个视频1篇阅读材料1个作业1次同伴评审
在本模块中,你将学习 Linux 驱动程序中 ioctl 命令的目的和用法,以及如何在驱动程序中实现 ioctl 命令。 你将学习 Linux 内核中睡眠和唤醒的基础知识,以及如何处理阻塞和非阻塞 IO。 您将修改自定义的 Linux 内核驱动程序和 Linux 应用程序,使其支持 ioctl。
涵盖的内容
6个视频1篇阅读材料1个作业1次同伴评审
获得职业证书
将此证书添加到您的 LinkedIn 个人资料、简历或履历中。在社交媒体和绩效考核中分享。
攻读学位
课程 是 University of Colorado Boulder提供的以下学位课程的一部分。如果您被录取并注册,您已完成的课程可计入您的学位学习,您的学习进度也可随之转移。
位教师

人们为什么选择 Coursera 来帮助自己实现职业发展

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
学生评论
- 5 stars
77.77%
- 4 stars
18.51%
- 3 stars
0%
- 2 stars
3.70%
- 1 star
0%
显示 3/27 个
已于 Apr 11, 2023审阅
The course is not easy, but it worth invested time. IMO, the main advantage is the experience gained.
从 计算机科学 浏览更多内容

University of Colorado Boulder

University of Colorado Boulder

University of Colorado Boulder

Illinois Tech



