首页
学习
活动
专区
圈层
工具
发布

Linux内核调试之使用模块参数

开场白 环境: 处理器架构:arm64 内核源码:linux-6.6.29 ubuntu版本:20.04.1 代码阅读工具:vim+ctags+cscope 本文主要介绍内核开发中常用的模块传参手段,通过模块参数传递可以通过用户态来获取内核的一些信息...注:都在include/linux/moduleparam.h文件中定义 2.支持的参数数据类型 内核支持的参数数据类型在定义module_param的时候有说明: include/linux/moduleparam.h.../init.h> #include linux/module.h> #include linux/kernel.h> /********** case 1: base type *********...; /* unsigned short eg: echo 100 > param_short */ static unsigned short param_ushort; module_param(param_ushort..., ushort, 0600); MODULE_PARM_DESC(param_ushort, "This is a ushort parameter!")

87910
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    xv6(15) 进程一:数据结构

    记录管理着文件的信息,当可执行文件被加载到内存当作进程执行后,也有类似的数据结构来记录管理进程的执行情况,这个数据结构就是 $PCB(Process\ Control\ Block)$,进程控制块,$Linux...ss0; // 0特权级栈段选择子 ushort padding1; uint *esp1; ushort ss1; ushort padding2; uint *...es; ushort padding4; ushort cs; ushort padding5; ushort ss; ushort padding6; ushort ds; ushort padding7...; ushort fs; ushort padding8; ushort gs; ushort padding9; ushort ldt; ushort padding10;...准确点来说应该是下图这样: 图中有鲜明显色的区域都是实际映射到了物理内存的区域,其中蓝色部分才是 $malloc\ free$ 作用的区域,在 $Linux$ 中程序在内存中的映像有个属性叫做 $break

    56110
    领券