内核空间与用户空间可以有同名的函数吗?

简介:  内核空间与用户空间可以有同名的函数吗?   笔者最近在调试一款加密芯片DS28E01时,发现在内核中的加密芯片驱动里有一个READROMID的函数,此函数是用于读取芯片内部的ROM ID,为了验证调试的方便,故将此函数接口留在内核的驱动模块中,但是在应用的加密芯片代码里,也是要读ROM ID,并且读取的接口函数一模一样,参数都一样,这造成在机器启动时验证软件有效性时不成功。

 内核空间与用户空间可以有同名的函数吗?

 

笔者最近在调试一款加密芯片DS28E01时,发现在内核中的加密芯片驱动里有一个READROMID的函数,此函数是用于读取芯片内部的ROM ID,为了验证调试的方便,故将此函数接口留在内核的驱动模块中,但是在应用的加密芯片代码里,也是要读ROM ID,并且读取的接口函数一模一样,参数都一样,这造成在机器启动时验证软件有效性时不成功。发现在读ROM ID时,首先执行了内核的那个函数接口内容,接着又执行了应用层的接口。这种问题很难发现,幸好函数内部都有打印,且不同,所以还可以通过串口的打印来查找问题。

目录
相关文章
|
6月前
|
Linux Shell 程序员
【进程控制】进程程序替换的原理以及exec函数族
【进程控制】进程程序替换的原理以及exec函数族
|
6月前
|
存储 Linux 编译器
Linux用户空间和内核空间所有15种内存分配方法
Linux用户空间和内核空间所有15种内存分配方法
222 1
|
6月前
|
缓存 Linux 编译器
C/C++ 函数调用以及Linux中系统调用 开销介绍:介绍C/C函数调用以及Linux中系统调用的开销情况
C/C++ 函数调用以及Linux中系统调用 开销介绍:介绍C/C函数调用以及Linux中系统调用的开销情况
85 0
|
6月前
|
安全 Java 程序员
“系统调用”究竟是不是个函数?
- **系统调用**和普通**函数**有何区别? - 什么是**内核态** 和 **用户态**? - 操作系统如何让CPU切换状态? - 内中断、外中断、软中断、硬中断是什么意思? - 库函数和系统调
用户空间与内核空间通信方式
用户空间与内核空间通信方式
127 0
|
Linux C语言
Linux系统调用一、系统调用与C库函数的关系 —— 从进程虚拟地址空间和文件描述符的角度分析
Linux系统调用一、系统调用与C库函数的关系 —— 从进程虚拟地址空间和文件描述符的角度分析
213 0
Linux系统调用一、系统调用与C库函数的关系 —— 从进程虚拟地址空间和文件描述符的角度分析
|
Linux Android开发 Windows
【Binder 机制】进程通信 | 用户空间与内核空间 | MMU 与虚拟内存地址
【Binder 机制】进程通信 | 用户空间与内核空间 | MMU 与虚拟内存地址
279 0
【Binder 机制】进程通信 | 用户空间与内核空间 | MMU 与虚拟内存地址