Linux
Linux/init/main.c
linux内核启动过程:
启动Linux内核的最终目的是使用Linux上的应用程序,这些应用程序可以是纯软件的,也可以是硬件相关的。
1.BIOS
2020-03-25 01:24:21
阅读数: 84
评论数: 0
Linux
Linux源码 头文件
Linux内核根据与体系结构的关系,可以分为以下三大类头文件:
1.<linux/xxx.h>:Linux内核标准头文件,与体系结构无关,位于内核源码顶层include
2020-03-25 01:20:25
阅读数: 44
评论数: 0
Linux
Linux gdb工具
gdb提供了一个python的脚本接口,内核提供了一些有用的脚本用来简化内核的调试步骤。
设置
2020-03-25 01:15:53
阅读数: 46
评论数: 0
Linux
Linux Kmemleak工具
Kmemleak提供一种类似追踪垃圾回收的方式进行内存泄露检测方法。
用法
需要启用CONFIG_DEBUG_KMEMLEAK<
2020-03-25 01:14:55
阅读数: 54
评论数: 0
Linux
Linux UBSAN工具
Undefined Behavior Sanitizer,用于运行时未定义行为检测。UBSAN使用编译时指令来获取未定义行为。编译器插入代码,在可能引起UB的操作之前运行某类检查,如果失败,会调
2020-03-25 01:12:10
阅读数: 37
评论数: 0
Linux
Linux KASAN工具
Kernel Address Sanitizer是一个动态内存错误检测工具,常用来发现用后释放和越界的bug。
使用
在内核中启
2020-03-25 01:11:37
阅读数: 96
评论数: 0
Linux
Linux gcov工具
gcov是一个GCC使用的覆盖测试的工具,为了获得特定文件的覆盖结果,需要改变内核编译的目录和使用-o选项。
<code class="language
2020-03-25 01:11:01
阅读数: 54
评论数: 0
Linux
Linux kcov工具
代码覆盖率(Code Coverage)是反映测试用例对被测软件覆盖程序的重要指标,kcov是用于随机测试中合适表达代码覆盖率的一种工具。
<a
2020-03-25 01:09:11
阅读数: 86
评论数: 0
Linux
Linux Sparse工具
Sparse是C语言的语义检查器。
类型检查
"__bitwise"是一个类型属性,所以你需要
2020-03-25 01:08:17
阅读数: 82
评论数: 0
Linux
Linux Coccinelle工具
Coccinelle是一个文本模式转换的正则式匹配的工具。
获取Coccinelle
大部分Linux分支版本都有这个工具。
2020-03-25 01:06:33
阅读数: 236
评论数: 0
Linux
Linux源码 volatile类型
C程序员通常认为volatile表示某个变量可以在当前执行的线程外被改变,因此在内核中用到共享数据结构时,常常会有C程序员使用volatile这类变量,然而在内核中使用volatile几乎总是错
2020-03-25 01:02:53
阅读数: 40
评论数: 0
Linux
Linux 内核编码风格
1) 缩进
--------------制表符是 8 个字符,所以缩进也是 8 个字符。有些异端运动试图将缩进变为 4 (甚至2!) 字符深,这几乎相当
2020-03-25 00:59:28
阅读数: 51
评论数: 0
Linux
Linux源码 魔数
使用魔数来保护内核数据结构是一个非常好的主意,这就允许你在运行期检查一个结构是否已经被攻击,或者你已经给一个例行程序通过了一个错误的结构。
使用魔数值的方法是在结构的开始处声明的,
2020-03-25 00:52:58
阅读数: 78
评论数: 0
Linux
Linux源码 PGP
PGP帮助确保Linux内核社区的代码完整性,通过PGP签名邮件交换来在开发者间建立可信通信。
Linux内核代码发布成两种主要格式:
2020-03-25 00:46:05
阅读数: 70
评论数: 0
Linux
Linux内核命令行参数十二
virtio_mmio.device=[VMMIO] Memory mapped virtio (platform) device.
2020-03-24 20:30:13
阅读数: 43
评论数: 0
Linux
Linux内核命令行参数十一
sunrpc.svc_rpc_per_connection_limit=[NFS,SUNRPC]Limit the number o
2020-03-24 20:29:29
阅读数: 42
评论数: 0
Linux
Linux内核命令行参数十
rcutorture.shutdown_secs= [KNL]Set time (s) after boot system shutdown.
2020-03-24 20:21:12
阅读数: 51
评论数: 0
Linux
Linux内核命令行参数九
pcie_aspm= [PCIE] Forcibly enable or disable PCIe Active State PowerMana
2020-03-24 20:20:26
阅读数: 78
评论数: 0
Linux
Linux内核命令行参数八
noiotrap [SH] Disables trapped I/O port accesses.noirqdebug [X86-3
2020-03-24 20:19:29
阅读数: 88
评论数: 0
Linux
Linux内核命令行参数七
mem_encrypt= [X86-64] AMD Secure Memory Encryption (SME) controlValid ar
2020-03-24 20:18:36
阅读数: 49
评论数: 0