导航
课程首页
  • PM-Summit 全球产品经理大会云会员
  • SDCon 全球软件研发技术大会云会员
  • ML-Summit 全球机器学习技术大会云会员
  • C++性能优化高端培训
  • AI全栈开发实战营
精品课 极客时间

AI 搜索

登录
会员中心
消息
历史
创作中心
创作
学习中心
成为讲师

Linux内核模块开发 第一个内核模块_Hello_World 第一个内核模块(一)

Linux内核模块开发
共85节 525人在学 课程详情
课程目录
讨论留言
  • 安装开发环境

    • 开发环境安装(一)
    • 开发环境安装(二)
  • 第一个内核模块_Hello_World

    • 第一个内核模块(一)
    • 第一个内核模块(二)
    • 浅谈Hello_World
    • 常用的数据结构——list_head
    • 常用的数据结构——hlist
  • proc文件及操作函数

    • 创建一个proc文件(一)
    • 创建一个proc文件(二)
    • 创建一个proc文件(三)
    • 通过偏移量读写文件
    • file结构体和lseek操作
    • dentry和inode结构体(一)
    • dentry和inode(二)
    • proc文件的ioctl操作
  • sysfs文件及操作函数

    • 创建一个sys文件(一)
    • 创建一个sys文件(二)
    • 通过kset创建目录
    • uevent
  • 内核模块开发基础

    • 内核补丁
    • 常用的内核分配和释放接口(一)
    • 常用的内核分配和释放接口(二)
    • mmap操作(一)
    • mmap操作(二)
    • get_unmapped_area操作
    • read_iter操作
    • 创建内核线程
    • 工作队列
    • 等待队列(一)
    • 等待队列(二)
    • 实现wait_event和wake_up
    • poll操作
    • 定时器和延时任务
    • 高精度定时器
  • 并发与互斥

    • 信号量
    • 完成量
    • 原子操作
    • 自旋锁和读写锁
    • RCU(一)
    • RCU(二)
  • 系统调用

    • 执行系统调用
    • C与汇编(一)
    • C与汇编(二)
    • C与汇编(三)
    • 内联汇编(一)
    • 内联汇编(二)
    • 增加系统调用
    • Linux系统调用的实现方式
    • 通过软件中断实现系统调用(一)
    • 通过软件中断实现系统调用(二)
  • 监控与调试

    • kprobe(一)
    • kprobe(二)
    • kretprobe(一)
    • kretprobe(二)
    • kdump
    • 使用crash调试内存镜像
    • kgdb(一)
    • kgdb(二)
  • 字符设备驱动

    • 最简单的字符设备驱动
    • 通过字符设备驱动访问串口(一)
    • 通过字符设备驱动访问串口(二)
    • 通过ioctl操作设置串口参数
  • 外部中断

    • 通过串口中断读取数据
    • 中断底半部(一)
    • 中断底半部(二)
    • 中断底半部(三)
    • 常用接口
  • 块设备驱动

    • 最简单的块设备驱动(一)
    • 最简单的块设备驱动(二)
    • 虚拟磁盘驱动(一)
    • 虚拟磁盘驱动(二)
  • 文件操作

    • VFS虚拟文件系统
    • write_iter操作
    • flush操作
    • flock操作
    • lock操作
    • splice_read和splice_write(一)
    • splice_read和splice_write(二)
    • copy_file_range操作
  • 文件系统

    • 注册文件系统
    • 创建超级块
    • 创建根目录
    • 本级目录和上级目录
    • 创建一个文件
    • 增加文件的读写操作
回复
切换为未回复评论
切换为时间正序
请发表友善的回复…
发表回复
发表回复
按下Enter换行,Ctrl+Enter发表内容
编辑
预览
    轻敲空格完成输入
    • 显示为
    • 卡片
    • 标题
    • 链接

    反馈

    播放页问题反馈
    视频学习中有任何产品建议都可由此反
    馈,我们将及时处理!

    课时介绍

    第一个Linux内核模块hello_world的开发

    课程介绍

    本课程基于Linux5.10.179内核版本,由浅入深,从一个最简单的例子程序开始,进行内核模块开发的学习,每一课由一个例子程序开始,逐步讲解Linux内核模块的开发、调试以及各子系统的机制。学习本课程之后,学员将会对Linux内核模块的开发有较为深刻的认识。在学习本课程之前,需要有一定C语言基础,能够使用常用的Linux命令,会用vi编辑器基本的操作。

    课程特点:

    1. 循序渐进,深入浅出
    2. 样例丰富,着眼实践

    课程具有丰富的实例和讲解,基本每节课都有一个示例程序,跟着示例程序进行开发将快速入门

    推荐课程

    信息系统项目管理师自考笔记

    李明 · 750人在学

    python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

    王先生 · 22172人在学

    手把手搭建Java超市管理系统【附源码】(毕设)

    汤小洋 · 4216人在学

    Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

    黄菊华 · 792人在学

    基于SSM酒店管理系统(毕设)

    小尼老师 · 842人在学

    java项目实战之购物商城(java毕业设计)

    Long · 5158人在学

    手把手搭建Java求职招聘系统【附源码】(毕设)

    汤小洋 · 1509人在学

    Python Django 深度学习 小程序

    钟翔 · 2330人在学

    城管局门前三包管理系统+微信小程序(vue+springboot)

    赖国荣 · 604人在学

    Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

    李杰 · 3994人在学

    正在试验
    后自动删除环境
    课程实验
    本次实验时间已到期 00:00:00

      订阅失败

      Linux内核模块开发
      Linux内核模块开发 ...

      订阅列表已满,请先移出部分订阅内容。

      当前章节需购买后观看
      开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
      提交答案

      购买课程

      扫码完成付费,可继续学习全部课程内容

      加载中...
      课件正在飞速打包中,请耐心等待几秒钟~

      视频问题反馈

      提交遇到的问题我们会尽快解决的 ~

      首页
      博客
      下载
      学习
      社区
      AI搜索
      GitCode
      InsCodeAI
      技术会议
      会员中心
      创作中心
      联系我们
      工作时间: 8:30 - 22:00
      客服电话: 400-660-0108
      kefu@csdn.net在线客服
      • 关于我们
      • 招贤纳士
      • 商务合作
      • 寻求报道
      • 京ICP备19004658号
      • 经营性网站备案信息
      • 公安备案号11010502030143
      • 营业执照
      • 北京互联网违法和不良信息举报中心
      • 家长监护
      • 中国互联网举报中心
      • 网络110报警服务
      • Chrome商店下载
      • 账号管理规范
      • 版权与免责声明
      • 版权申诉
      • 出版物许可证
      • ©1999-2024北京创新乐知网络技术有限公司