Executable file formats / Emulations 可执行文件格式/仿真
优质
小牛编辑
124浏览
2023-12-01
Executable file formats / Emulations
可执行文件格式/仿真
- Kernel support for ELF binaries
CONFIG_BINFMT_ELF - ELF是最常用的跨平台二进制文件格式,支持动态连接,支持不同的硬件平台,支持不同的操作系统.必选,除非你知道自己在做什么.
- Write ELF core dumps with partial segments
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS - 如果你打算在此Linux上开发应用程序或者帮助别人调试bug,那么就选"Y",否则选"N".注意这里的调试和开发不是指内核调试和开发,是应用程序的调试和开发.
- Kernel support for scripts starting with #!
CONFIG_BINFMT_SCRIPT - 支持以"#!/path/to/interpreter"行开头的脚本.务必"Y",不要"M"或"N",除非你知道自己在做什么.
- Kernel support for MISC binaries
CONFIG_BINFMT_MISC - 允许插入二进制封装层到内核中,直接运行Java,.NET(Mono-based),Python,Emacs-Lisp等语言编译的二进制程序时需要它,DOSEMU也需要它.想要更方便的使用此特性(指定特定类型的文件用特定的程序打开),你还需要使用"mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc"挂载binfmt_misc伪文件系统.具体详情可以参考"Documentation/binfmt_misc.txt"文档.
- Enable core dump support
CONFIG_COREDUMP - 核心转储(core dump)支持.如果你打算在此Linux上开发应用程序或者帮助别人调试bug,那么就选"Y",否则选"N".注意这里的调试和开发不是指内核调试和开发,是应用程序的调试和开发.
- IA32 Emulation
CONFIG_IA32_EMULATION - 允许在64位内核中运行32位代码.除非你打算使用纯64位环境,否则请开启此项.提示:GRUB2支持引导纯64位内核,但是GRUB不支持.
- IA32 a.out support
CONFIG_IA32_AOUT - 早期UNIX系统的可执行文件格式(32位),目前已经被ELF格式取代.除非你需要使用古董级的二进制程序.否则请关闭.
- x32 ABI for 64-bit mode
CONFIG_X86_X32 - 允许32位程序(32位指针)使用完整的64位寄存器,以减小内存占用(memory footprint).初衷是为了提高32位程序的运行性能,但实际在嵌入式X86环境中并无存在感,而对于非嵌入式X86环境又没有存在的意义,并且此特性未来会被删除.仅在你确实知道必须使用此特性时选"Y",否则就选"N".
- IA32 a.out support