了解与GCC相比的红色/系统编译优化

时间:2015-04-26 15:24:03

标签: elf red

在阅读Red site时,我发现一条声明说编译一个hello world Red / System程序会创建..

  

" ...一个162字节的ELF二进制文件,而类似的C代码   使用Gcc"

生成5-6KB二进制文件

太棒了。有人可以解释/指出使这种优化成为可能的技术吗?

1 个答案:

答案 0 :(得分:1)

它是通过拥有一个几乎为空的运行时库(只有几个系统调用包装器)和一个ELF发射器来实现的,它不会对齐4K页面边界上的部分以实现最佳加载。

尽管如此,Red / System 0.1.0也是如此,所以在它的早期,不再是真的(现在它将与其他编译器类似)。虽然我们仍然有一个-r编译选项,用于编译没有任何运行时的Red / System代码,但是当没有人使用它时,它可能不再起作用(如果有人需要它应该很容易修复,只需按下Red&# 39; s chat并要求它。; - ))