我想阅读和理解Linux内核的内存pipe理(特别是defrag \ compaction \ migration)。
所以,我closures.config
优化大小(当然使用make menuconfig)并编译…这留给我一个优化的内核。
注意:当我说优化内核,我的意思是,当我使用gdb
并告诉它next
,它会跳。 我不希望这样,我希望能够像一个简单的hello世界一样,一行一行地遵循代码。
接下来,我编辑Makefile
并用-O0
交换-O2
,导致事情中断。
我发现了这个 ,但是我不知道我想要什么文件,因为我不知道兔子洞有多远。
有更通用的select,我可以使用? 我理解记忆压缩的概念; 不过,我想看看所有事情发生的地方以及发生的情况。
你不能去优化内核。 您可能可以解除某些功能的优化,如下所示:
void __attribute__((optimize("O0"))) foo(unsigned char data) { // unmodifiable compiler code }
但是整个内核需要-O2,因为代码本身是以某种方式对某些函数进行优化的假设书写的。
对不起,你真的需要知道你想要的兔子洞的大小。