- 1
- 0
- 约8千字
- 约 15页
- 2018-08-27 发布于江苏
- 举报
linux 模块编译步骤(详解)3
Linux?内核模块编程
Linux?内核模块编程是一个很重要的知识点。尤其是编写底层驱动程序时,一定会涉及到它。内核模块编程也是?Tiger哥学习?Linux?时第一节课所接触的知识。由此可以看出它的?important,?也可以看出其实它很?easy?。
一前言:
1.?什么是内核模块
1?内核模块是具有独立功能的程序。它可以被单独编译,但是不能单独运行,它的运行必须被链接到内核作为内核的一部分在内核空间中运行。
2?模块编程和内核版本密切相连,因为不同的内核版本中某些函数的函数名会有变化。因此模块编程也可以说是内核编程。
3?特点:
模块本身不被编译进内核映像,从而控制了内核的大小;?模块一旦被加载,就和内核中的其他部分完全一样。
2?.?用户层编程和内核模块编程的区别
?
应用程序
内核模块程序
使用函数
libc?库
内核函数
运行空间
用户空间
内核空间
运行权限
普通用户
超级用户
入口函数
main()
module_init
出口函数
exit()
module_exit
编译
gcc
makefile
链接
gcc
insmod
运行
直接运行
insmod
调试
gdb
kdbug?、?kdb?、?kgdb
二?.?说了这么多,那么怎么编写一个内核模块的程序呢?
1.?我们先来看两个最简单的函数实例,也是几乎所有程序员在学习一门新语言时都会编写的程序:输出?
您可能关注的文档
最近下载
- 第一单元 植物的生长变化(复习课件)四年级科学下册(教科版).pptx VIP
- (一模)石家庄市2026年高三年级教学质量检测(一)语文试卷(含答案解析).docx
- 社会调查原理与方法(第四版)风笑天.pptx VIP
- 2026春新教材三年级道德与法治下册知识点.pdf VIP
- 阔叶红松林中啄木鸟序贯取食对林木衰亡的影响.docx VIP
- 药品检查管理办法(试行)2025年培训考核试卷和答案.docx VIP
- 一种CRRT治疗用废液连接管.pdf VIP
- 小葵花幼儿园中大班“今天星期几”教案.doc VIP
- 中国华能集团公司水力发电厂环境保护监督标准.doc VIP
- 工程勘察设计收费标准(2002年修订本)完整版.pdf
原创力文档

文档评论(0)