linux内核符号表
来源:互联网 发布:js 数组增加class 编辑:程序博客网 时间:2024/04/28 06:21
所谓内核符号表就是在内核内部函数或变量中可供外部引用的函数和变量的符号表。在 2.6 内核下,使用以下命令可以看到内核符号表:
在内核符号表中,左边一列是符号地址,右边一列是函数和变量。在一个模块加载后,任何一个被模块导出的符号都会成为内核符号表的一部分。一般情况下,你设计的一个模块实现了自己所需的功能,这里也并不一定需要要所有的符号都导出来。但是,如果希望别人也能用到自己的模块,那就需要将其导出。
使用以下宏可以导出符号到内核符号表:
使用 EXPORT_SYMBOL_GPL() 只用于包含 GPL 许可权的模块。
示例代码:
编译后用 insmod 加载到内核中,然后执行以下命令:
引用beyes@linux-beyes:/> cat /proc/kallsyms | more
c0100000 T _text
c0100000 T startup_32
c0100054 t default_entry
c01000b0 T startup_32_smp
c0100132 t checkCPUtype
c01001b3 t is486
c01001ba t is386
c0100227 t check_x87
c010025a t setup_idt
c0100277 t rp_sidt
c01002fa t early_divide_err
c0100300 t early_illegal_opcode
.... ....
在内核符号表中,左边一列是符号地址,右边一列是函数和变量。在一个模块加载后,任何一个被模块导出的符号都会成为内核符号表的一部分。一般情况下,你设计的一个模块实现了自己所需的功能,这里也并不一定需要要所有的符号都导出来。但是,如果希望别人也能用到自己的模块,那就需要将其导出。
使用以下宏可以导出符号到内核符号表:
引用EXPORT_SYMBOL(符号名);
EXPORT_SYMBOL_GPL(符号名);
使用 EXPORT_SYMBOL_GPL() 只用于包含 GPL 许可权的模块。
示例代码:
引用#include
#include
MODULE_LICENSE("Dual BSD/GPL");
int add_int(int a, int b)
{
return (a + b);
}
int sub_int(int a, int b)
{
return (a - b);
}
EXPORT_SYMBOL(add_int);
EXPORT_SYMBOL(sub_int);
编译后用 insmod 加载到内核中,然后执行以下命令:
引用beyes@linux-beyes:~/C/kernel/modadd> cat /proc/kallsyms |grep add_int
f9d70034 r __ksymtab_add_int [modadd]
f9d7004c r __kstrtab_add_int [modadd]
f9d70040 r __kcrctab_add_int [modadd]
6ce40a9f a __crc_add_int [modadd]
f9d70000 T add_int [modadd]
(滤掉一些多余的输出)
beyes@linux-beyes:~/C/kernel/modadd> cat /proc/kallsyms |grep sub_int
f9d7002c r __ksymtab_sub_int [modadd]
f9d70044 r __kstrtab_sub_int [modadd]
f9d7003c r __kcrctab_sub_int [modadd]
bb5e85f9 a __crc_sub_int [modadd]
f9d70004 T sub_int [modadd]
0
上一篇:GDB多线程调试
下一篇:linux内核中likely和unlikely的含义
相关热门文章
- 欢迎xiaoyu_linux在ChinaUnix...
- linux设备驱动之USB数据传输分...
- 浅析usb转serial串口设备在lin...
- [原创]到目前为止,Linux下最...
- Red Hat Linux 的主要系统目录...
- linux 常见服务端口
- xmanager 2.0 for linux配置
- 【ROOTFS搭建】busybox的httpd...
- openwrt中luci学习笔记
- 什么是shell
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
chinaunix网友2010-10-21 19:41:04
很好的, 收藏了推荐一个博客,提供很多免费软件编程电子书下载:http://free-ebooks.appspot.com
回复 | 举报
评论热议
0 0
- linux内核符号表
- linux内核符号表
- linux内核符号表
- linux内核符号表
- linux 内核符号表
- Linux内核符号表
- LINUX内核符号表
- linux内核符号表
- Linux内核符号表
- linux内核符号表
- Linux内核符号表
- Linux内核符号表
- linux内核符号表
- linux内核符号表
- linux内核符号表
- Linux内核符号表
- linux内核符号表
- linux内核符号表
- 计算机中各个周期的具体含义
- MFC--工具条插入下拉框控件(利用m_comboButton)
- linux内核从启动开始到设备模型初始化完毕经历的函数
- PHP实现txt文件生成与下载
- GDB多线程调试
- linux内核符号表
- linux内核中likely和unlikely的含义
- 内核线程函数kernel_thread解析
- Maven JVM terminated unexpectedly with exit code 137
- 对netdev_priv的分析
- 我的第一篇博客
- 旋转数组的最小数字
- 硬件设备内存空间被映射的过程函数分析
- linux通过结构体struct resource描述一个具体的硬件
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
岳西招聘网
岳西房产网新楼盘在售
岳西县招投标网
岳西交友网
岳西招商网
岳西法院网
岳西文物网
岳西考试网
岳西网在线家园
岳西教育信息网
枞阳论坛网
铜陵在线枞阳网
岳跃利
上岱岳
岳银瓶
广州南到岳阳东高铁
岳阳东到岳阳楼
岳阳县蛋糕店
岳阳县属于哪个市
岳阳到岳阳县
岳阳县宾馆预订
岳阳市岳阳县
岳阳职业技术学院吧
岳阳简介
岳阳市花
岳阳市中心
岳阳在哪个省
岳阳是那个省
湖南岳阳特产
岳阳市中心在哪里
岳阳市中心医院
岳阳市公共资源交易中心
岳阳市人力资源和社会保障局
岳阳市第十五中学
岳阳市二人民医院
岳阳市人民医院
岳阳市中医院
岳阳市邮编
岳阳市第一人民医院
湖南岳阳市
岳阳市红网