免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 947 | 回复: 0
打印 上一主题 下一主题

8.Executable file formats [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-29 22:20 |只看该作者 |倒序浏览

        1
       
       
       
       
       
       
       
       
  • Kernel
                    support for ELF binaries
                   
           
    ELF
    (Executable and Linkable Format) is a format for libraries and
    executables
    used across different architectures and operating
    systems.
    Saying Y here will enable your kernel to run ELF binaries
    and
    enlarge it by about 13 KB. ELF support under Linux has now all
    but
    replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
    because
    it is portable (this does *not* mean that you will be able
    to
    run executables from different architectures or operating systems
    however)
    and makes building run-time libraries very easy. Many new
    executables
    are distributed solely in ELF format. You definitely
    want
    to say Y here.
    Information
    about ELF is contained in the ELF HOWTO available from
    [color="#008080"].
    If
    you find that after upgrading from Linux kernel 1.2 and saying Y
    here,
    you still can't run any ELF binaries (they just crash), then
    you'll
    have to install the newest ELF runtime libraries, including
    ld.so
    (check the file  for location and
    latest
    version).
    [color="#99cc00"]ELF[color="#99cc00"]是开放平台下最常用的二进制文件,它支持不同的硬件平台。[color="#99cc00"]ELF[color="#99cc00"]是excutive
    linked
    file[color="#99cc00"]的缩写,是一种为[color="#99cc00"]Linux[color="#99cc00"]系统所采用的通用文件格式,支持动态连接。选[color="#99cc00"]Y[color="#99cc00"]会使内核支持[color="#99cc00"]ELF[color="#99cc00"]格式同时内核增大[color="#99cc00"]13k[color="#99cc00"]。现在[color="#99cc00"]linux[color="#99cc00"]上[color="#99cc00"]ELF[color="#99cc00"]格式还没有完全取代[color="#99cc00"]a.out[color="#99cc00"],但他有很多优越性,当然要选[color="#99cc00"]Y[color="#99cc00"]。

    http://www.tldp.org/docs.html#howto
    [color="#99cc00"]上有相关文档。
  • Kernel
                    support for a.out and ECOFF binaries
           
    A.out
    (Assembler.OUTput) is a set of formats for libraries and
    executables
    used in the earliest versions of UNIX.  Linux used
    the
    a.out formats QMAGIC and ZMAGIC until they were replaced
    with
    the ELF format.
    The
    conversion to ELF started in 1995.  This option is primarily
    provided
    for historical interest and for the benefit of those
    who
    need to run binaries from that era.
    Most
    people should answer N here.  If you think you may have
    occasional
    use for this format, enable module support above
    and
    answer M here to compile this support as a module called
    [color="#008080"]binfmt_aout.
    If
    any crucial components of your system (such as /sbin/init
    or
    /lib/ld.so) are still in a.out format, you will have to
    say
    Y here.
    [color="#99cc00"]早期版本的[color="#99cc00"]UNIX[color="#99cc00"]上的可执行文件格式,逐渐被更先进的[color="#99cc00"]ELF[color="#99cc00"]取代,大多数人应该选[color="#99cc00"]N[color="#99cc00"],但如果你有用到这种格式,可以编译成模块,名字:binfmt
    aout
  • Kernel
                    support for MISC binaries
           
    If
    you say Y here, it will be possible to plug wrapper-driven binary
    formats
    into the kernel. You will like this especially when you use
    programs
    that need an interpreter to run like Java, Python, .NET or
    Emacs-Lisp.
    It's also useful if you often run DOS executables under
    the
    Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
    ).
    Once you have
    registered
    such a binary class with the kernel, you can start one of
    those
    programs simply by typing in its name at a shell prompt; Linux
    will
    automatically feed it to the correct interpreter.
    You
    can do other nice things, too. Read the file
    to learn how to use this
    feature,
    for information about how
    to
    include Java support. and  for
    information
    about how to include Mono-based .NET support.
    To
    use binfmt_misc, you will need to mount it:
         mount binfmt_misc -t
    binfmt_misc /proc/sys/fs/binfmt_misc
    You
    may say M here for module support and later load the module when
    you
    have use for it; the module is called binfmt_misc. If you
    don't
    know what to answer at this point, say Y.
    [color="#99cc00"]此选项允许插入二进制的封装层到内核中,当使用[color="#99cc00"]Java[color="#99cc00"]、[color="#99cc00"].NET[color="#99cc00"]、[color="#99cc00"]Python[color="#99cc00"]、[color="#99cc00"]Lisp[color="#99cc00"]等语言编写的程序时非常有用。你可以把它编译成模块,使用时载入,如果你不知道该怎么办,那就选[color="#99cc00"]Y[color="#99cc00"]。
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/17431/showart_119971.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP