linux - 'current_task' 的值在不同版本的 linux 内核中是什么意思?
问题描述
我知道它current_task
保存了task_struct *
每个 cpu 的指针地址。
但是,当在不同的内核版本中读取这个符号值时,我得到了不同的结果。
在4.19.65
内核中,我抓住它cat /proc/kallsyms | grep current_task
并得到:
0000000000015c40 A current_task
这意味着它是一个绝对值。
在4.20.13
内核中,我得到:
ffffffffbea3a040 D current_task
这意味着它在数据部分。
我使用4.19.65
内核的默认配置。但是,我还没有4.20.13
. 我想知道值的含义是否与内核版本或内核配置有关?当它持有绝对值时,内核如何找到current_task
指针?
解决方案
推荐阅读
- c# - 如何根据父ID查询所有子级别?
- firebase - Flutter FCM getToken() 返回 null
- html - 使用引导程序将奇怪的附加按钮添加到 Flask 应用程序
- python - 如何按键对python中的字典进行排序(不创建重复的字典)?
- django - Django 接收 POST URL
- nativescript - 在终端“tns preview”命令不起作用。(本机脚本)
- ios - Tl.xcodeproj 链接框架“Pods_Tl.framework”缺少此目标所需的一个或多个架构:armv7
- r - 创建用于将数据框列转换为因子的自定义函数
- javascript - 在 API 的父对象中合并子对象
- css - 无法为复选框赋予边框颜色