首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何对Linux内核进行反优化并用-O0编译它?

如何对Linux内核进行反优化并用-O0编译它?
EN

Stack Overflow用户
提问于 2015-03-19 17:29:14
回答 1查看 6.3K关注 0票数 14

我想阅读和理解Linux内核的内存管理(特别是defrag\压实\迁移)。

因此,我关闭了.config中的大小优化(当然是使用menuconfig ),而compile...This给我留下了一个优化的内核。

注意:当我说优化内核时,我的意思是当我使用gdb并告诉它它会跳来跳去。我不想那样,我希望能够一行行地遵循代码,就像我想要一个简单的hello世界一样。

接下来,我将编辑Makefile并将-O2-O0交换,这会导致一些事情中断。

我找到了,但是我不知道我想要什么文件,因为我不知道兔子洞有多深。

是否有更通用的选项可供我使用?我理解内存压缩的概念;但是,我想知道所有事情发生在哪里,以及它是如何发生的。

EN

回答 1

Stack Overflow用户

发布于 2015-11-08 16:07:45

你不能去优化内核。您可能可以对某些功能进行去优化,如:

代码语言:javascript
复制
void __attribute__((optimize("O0"))) foo(unsigned char data) {
    // unmodifiable compiler code
}

但是内核作为一个整体需要-O2,因为代码本身的编写假设某些函数将以某种方式进行优化。

对不起,但是你真的需要知道你想去的兔子洞的大小。

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29151235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档