|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/linux-kernel-module-programming/
课程评论:没有评论
**课程名称:** Linux 内核模块与驱动程序编程 (x86 架构) **课程概述:** 本课程为学生提供 Linux 内核的基础知识,内容涵盖内核编译及其多种实现方式。课程将深入介绍字符设备驱动程序,详细讲解 `copy_to_user` 和 `copy_from_user` 等关键函数。学生将学习 `jiffies` 的概念,并通过实际代码示例进行演示。此外,课程将深入探讨 `debugfs` 及其各种函数调用。 课程还将通过 PowerPoint 详细解释系统调用的工作原理,以及如何通过软件中断或直接调用系统调用层来触发系统调用。学完本课程,学生将能熟练进行内核编译,并编写 Linux 内核模块。 本系列课程还将指导学生如何有效地参与 Linux 开源社区,撰写并提交被社区接受的上游补丁。课程旨在为致力于内核编程但难以获得系统化学习资源的学习者提供一个构建职业生涯的平台。 课程目标是为学生打下坚实的基础,使其理解内核、驱动程序、文件系统、内核编译、模块的插入与删除、设备文件、用户空间与内核空间之间的通信,以及如何从内核视角进行编程,而非通用 C 语言编程。 课程将详细讲解通过 `copy_from_user`、`copy_to_user`、`debugfs` 或 `procfs` 与内核通信的概念。此外,课程还将详细介绍如何使用 VMware Fusion 或 VMware Workstation 等虚拟机来搭建 Linux 内核编译和编程环境。利用虚拟机,学生可以随时创建快照,并在遇到问题时快速回滚到之前的状态,从而避免影响整个操作系统,提高开发效率。 **课程大纲:** (未提供具体大纲)
This course guides a student for the basic understanding of Linux Kernels Familiarize students with kernel compilations and different ways to achieve the same. Introduce the character device Driver and explained in details like copy_to_user and copy_from_user Explained the concept of Jiffies and a practical example of working Jiffies code Explained in depth about debugfs and its various calls. Explained in details with the help of power point as to how system call works. The course provides the various way a system call can be invoked using software interrupt or directly invoking the syscall layer. At the end of this course students would be well versed in kernel compilation and writing modules on Linux kernel. This lecture series also guides students as to how to effectively get involved with Linux open source community and write patches which would be accepted upstream. The course intends to build a niche in students who are devoted in kernel programming but couldn't gather enough resource at single location to build a career out of it.The intention is to give a build blocks to students to understand the kernel, driver, file system, compilation, module insertion, deletion, device file, communication between user level and kernel level and how to code from kernel perspective rather than general c code. In depth details of the explanation of concepts to communicate with kernel using either copy_from_user, copy_to_user or using the debugfs or proc fs. Explained in details how to use virtual machine like VMware fusion of VMware workstation to setup a system for Linux kernel compilation and programming as virtual machines we can take snapshots and if there is problem we can simply revert to older snapshots for quick development, without corrupting the entire Operating system.