ืฉื—ืจื•ืจ ืฉืœ GNU Binutils 2.34

ืฉื”ื•ื’ืฉ ืขืœ ื™ื“ื™ ืฉื—ืจื•ืจ ืฉืœ ืงื‘ื•ืฆื” ืฉืœ ื›ืœื™ ืขื–ืจ ืœืžืขืจื›ืช GNU Binutils 2.34, ื”ื›ื•ืœืœ ืชื•ื›ื ื•ืช ื›ื’ื•ืŸ GNU linker, GNU assembler, nm, objdump, strings, strip.

ะ’ ื”ื—ื“ืฉ ื’ืจืกื”:

  • ื ื•ืกืคื” ืชืžื™ื›ืช ืฉื™ืจื•ืช ื ื™ืคื•ื™ ื‘ืื’ื™ื, ืฉื”ื•ื ืฉืจืช HTTP ืœืืกืคืงืช ืžื™ื“ืข ื ื™ืคื•ื™ ื‘ืื’ื™ื ELF/DWARF ื•ืงื•ื“ ืžืงื•ืจ. ื‘ืขืช ื‘ื ื™ื™ืช Binutils ืขื ืชืžื™ื›ืช debuginfod, ื›ืœื™ ื”ืขื–ืจ readelf ื•-objdump ื™ื›ื•ืœื™ื ืœื”ืชื—ื‘ืจ ืœืฉืจืชื™ debuginfod ื›ื“ื™ ืœื”ื•ืจื™ื“ ืžื™ื“ืข ื—ืกืจ ื‘ืื’ื™ื ืขืœ ื”ืงื‘ืฆื™ื ื”ืžืขื•ื‘ื“ื™ื. ืœ ืžื›ืœื•ืœื™ื binutils ืขื debuginfod ื‘ืกืงืจื™ืคื˜ ื”ืชืฆื•ืจื”, ืขืœื™ืš ืœืฆื™ื™ืŸ ืืช ื”ืืคืฉืจื•ืช "--with-debuginfod" ื•ืœืกืคืง ื’ื™ืฉื” ืœืกืคืจื™ื™ืช libdebuginfod ื”ืžืกื•ืคืงืช ื‘ืขืจื›ื” elfutils;
  • ื”ืืคืฉืจื•ืช "--visualize-jumps" ื ื•ืกืคื” ืœืคื™ืจื•ืง (objdump -disassemble) ื›ื“ื™ ืœื™ืฆื•ืจ ื’ืจืคื™ืงืช ascii ืขื ื”ื“ืžื™ื” ืฉืœ ืžืขื‘ืจื™ื, ืฉืžื’ื“ื™ืจื” ื‘ื‘ื™ืจื•ืจ ืืช ื”ืงืฉืจ ื‘ื™ืŸ ื ืงื•ื“ืช ื”ื™ืขื“ ืœืžืงื•ืจ ื”ื–ื™ื ื•ืง ื‘ื–ืจื ื”ืคืงื•ื“ื•ืช. ื•ื™ื–ื•ืืœื™ื–ืฆื™ื” ืขื•ื‘ื“ืช ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช x86, x86_64 ื•-ARM;

    c6: | | \โ€”โ€”โ€”-> be 00 00 00 00 mov $0x0,%esi
    cb: | | /โ€”-> 48 8b 3d 00 00 00 00 mov 0x0(%rip),%rdi # d2
    d2: | | | 31 c0 x ืื• %eax,%eax
    d4: | | | //โ€” e8 00 00 00 00 callq d9
    d9: | | | \-> bf 02 00 00 00 mov $0x2,%edi
    de: | +โ€”โ€”โ€”โ€”|โ€”โ€” e8 00 00 00 00 callq e3
    e3: | \โ€”โ€”โ€”โ€”|โ€”-> 48 89 da mov %rbx,%rdx
    e6: | | ืœื”ื™ื•ืช 00 00 00 00 mov $0x0,%esi
    eb: | \โ€”โ€” eb de jmp cb
    ed: \โ€”โ€”โ€”โ€”โ€”โ€”-> 48 8b 16 mov (%rsi),%rdx

  • ืชืžื™ื›ื” ื‘ื™ืฆื™ืจืช ืงื‘ืฆื™ ELF ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจืช Z80 ื ื•ืกืคื” ืœ-assembler ื•ืœืงื™ืฉืจ (ื ืชืžื›ื™ื ื‘ืžืขื‘ื“ื™ Zilog Z180 ื•-Zilog eZ80 ื‘ืžืฆื‘ื™ ADL ื•-Z80);
  • ื”ืืคืฉืจื•ืช "--output" ื ื•ืกืคื” ืœื›ืœื™ ื”ืฉื™ืจื•ืช "ar" ื›ื“ื™ ืœืฆื™ื™ืŸ ืืช ื”ืกืคืจื™ื™ื” ืœื—ื™ืœื•ืฅ ืžื”ืืจื›ื™ื•ืŸ;
  • ื”ืืคืฉืจื•ืช "--keep-section" ื ื•ืกืคื” ืœื›ืœื™ ื”ืฉื™ืจื•ืช "objcopy" ื•-"strip" ื›ื“ื™ ืœืžื ื•ืข ืืช ืžื—ื™ืงืช ื”ืงื˜ืข ืฉืฆื•ื™ืŸ.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”