此标记用于解决Linux内核本身的内部问题 - 特别是关于编写在内核上下文中运行的代码(如内核模块或驱动程序)。关于在Linux中编写用户空间代码的问题通常应该标记为[linux]。由于Linux内核的内部不断变化,因此包含您感兴趣的精确内核版本会很有帮助。
我想编写一个内核模块,可以通过 DMA 在 RAM 之间传输数据。有一些帖子讨论了这个问题,但我不太明白。有人说有可能,也有人说不可能。 如果我
这是 dts 文件中的一个示例 led-s0-绿色 { 标签=“s0:绿色”; GPIO = <&sgpio_out 2 1 GPIO_ACTIVE_LOW>; 默认状态=“关闭”; }; ...
如何在给定 vDSO 地址的情况下查找 vDSO 中的符号地址?
我正在学校开展一项关于“脏牛”漏洞的研究。在我的研究过程中,我发现了一些解决方案(例如这个),将一些 shellcode 注入 vDSO(到函数中
如何找出哪个内核版本中更改了 Linux 内核代码的哪一部分
我正在研究 Linux 内核模块,这或多或少与 Linux 内核版本无关。这意味着我被迫添加大量特定于版本的代码并用 ifdef 包装它。不是最好的所以...
我一直在使用 python-libevdev 并注意到事件时间戳似乎会环绕。例如,当我运行以下脚本时: 将 libevdev 导入为 ev 打开('/dev/input/by-pa...
我试图了解当主机收到外部中断时虚拟化设置中会发生什么。例如,如果 VM 的 vCPU-0 正在使用 CPU-1,并且存在外部 int...
目标: 对于指定进程(通过其 pid),确定分配的虚拟地址空间的大小(所有 vmas 的总和)。 问题:从内核 6.1 开始,vm_area_s 中不存在 vm_next 指针...
debugfs set_inode_field ctime(纳秒)
我正在使用 debugfs 来更改 ext4 文件系统上文件的 ctime(附加到该特定文件的 ctime 的程序 rotine)。 因此使用的命令是: debugfs -w -R 'set_inode_field foo/bar
OpenSBI 提供哪些功能是 DTS 在模拟环境中所不具备的?
我一直在尝试RISC-V模拟器,主要是QEMU和mini-rv32ima,并接触到了OpenSBI。该项目将自身定义为: RISC-V 管理程序二进制接口 (SBI) 是
我们有一块嵌入式板,配有 iMX8M-Plus 处理器和 Linux v5.4.161。该板有一条 PCIe 总线,该总线连接到 FPGA。当我们给开发板加电时,FPGA还没有配置...
例如我的进程中使用连续虚拟地址的数组。但是CPU在物理地址上使用CPU缓存,该地址在我的数组中可能不连续。 cpu缓存在这种情况下会失败还是那种情况......
自定义 Linux 内核模块:“.gnu.linkonce.this_module 部分大小必须与运行时内核构建的结构模块大小匹配”
我正在尝试加载准系统 Linux 设备驱动程序模块,但我一直遇到这样的问题: insmod:错误:无法插入模块 dummydriver.ko:模块格式无效 谷歌搜索告诉我...
我尝试按照说明构建 Linux 内核 别名 makearm='make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-' makearm defconfig 我认为 defconfig 是 Makefile 中的目标。但事实并非如此。
Linux tgkill(),真的可以看到两个tid相同的线程吗?
在 Ubuntu Linux 20.04.4(Linux 内核 5.13)上,man tgkill 说: int tgkill(int tgid, int tid, int sig); tgkill() 将信号 sig 发送到具有线程 ID 的线程 tid在线程组tgid中。 ...
我正在使用 kgdb 调试内核模块。使用 kgdb 我能够在所需函数上命中断点,但 tui 界面显示 无可用来源。 还可以在特定的地方设置断点...
我试图捕获键盘事件。 例如我想从头开始深入研究键盘记录程序。 经过2个小时的战斗我发现了以下内容 neel@pc1$ ls -l /dev/input/by-id lrwxrwxrwx 1根...
KXTJ3-1057 加速度计传感器的 DTS 设备覆盖文件
告诉我,我的设备树中有加速计吗? &i2c3 { 状态=“好的”; gs_kxtj3: gs_kxtj3@e { 兼容=“gs_kxtj3”; reg = <0x0e>;...
我是linux内核的新手。我的问题是关于task_struct。 我知道每个task_struct都通过指向父进程的task_struct的指针来引用其父进程。 看完后...
在任务调度时,当运行队列中没有更多可运行的任务时,选择运行空闲任务(也称为交换器任务)。但是这个如此特殊的任务有什么用呢?另一个问题我...
根据此注释: 当多个内置模块(尤其是驱动程序)提供相同的 能力,它们按顺序指定的链接顺序排列优先级 列在 Makefile 中。 进一步...