GDB 14 ื“ื™ื‘ื•ื’ื’ืขืจ ืžืขืœื“ื•ื ื’

GDB 14.1 ืื™ื– ืืจื•ื™ืกื’ืขื’ืขื‘ืŸ ื’ืขื•ื•ืึธืจืŸ (ื“ื™ ืขืจืฉื˜ืข ืื•ื™ืกื’ืึทื‘ืข ืคึฟื•ืŸ ื“ืขืจ 14.x ืกืขืจื™ืข, ื“ื™ 14.0 ืฆื•ื•ื™ื™ึทื’ ืื™ื– ื’ืขื ื™ืฆื˜ ื’ืขื•ื•ืึธืจืŸ ืคึฟืึทืจ ื“ืขืจ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’). GDB ืฉื˜ื™ืฆื˜ ืงื•ื•ืึทืœ-ืœืขื•ื•ืขืœ ื“ื™ื‘ืึทื’ื™ื ื’ ืคึฟืึทืจ ืึท ื‘ืจื™ื™ื˜ืข ืงื™ื™ื˜ ืคึฟื•ืŸ ืคึผืจืึธื’ืจืึทืžื™ืจ ืฉืคึผืจืึทื›ืŸ (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust, ืืึทื–"ื•ื•) ืื•ื™ืฃ ืคึฟืึทืจืฉื™ื“ืขื ืข ื”ืึทืจื“ื•ื•ืขืจ (i386, amd64, ARM, Power, Sparc, RISC-V, ืืึทื–"ื•ื•) ืื•ืŸ ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืคึผืœืึทื˜ืคืึธืจืžืขืก (GNU/Linux, *ื‘ื™-ืขืก-ื“ื™, ื™ื•ื ื™ืงืก, Windows, macOS).

ืฉืœื™ืกืœ ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ:

  • ื“ื™ ืงืึธื“ ื‘ืึทื–ืข ืื™ื– ืงืึธื ื•ื•ืขืจื˜ืขื“ ืฆื• ื ื•ืฆืŸ ื“ื™ C ++ 17 ื ืึธืจืžืึทืœ. ื‘ื™ืœื“ื™ื ื’ GDB ืื™ืฆื˜ ืจื™ืงื•ื•ื™ื™ืขืจื– ืึท ืงืึทืžืคึผื™ื™ืœืขืจ ื•ื•ืึธืก ืฉื˜ื™ืฆื˜ C ++ 17 (ืœืคึผื—ื•ืช GCC 9).
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื•ื•ืขื’ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ืคึฟื•ื ืงืฆื™ืข ืฆื• ื“ืขืจ ืื™ื ื“ืขืงืก, ืึทืœืึทื•ื™ื ื’ ืคืึทืกื˜ืขืจ ืกื˜ืึทืจื˜ืึทืคึผ ื•ื•ืขืŸ ื’ืขื•ื•ื™ื™ื ื˜ ืžื™ื˜ ืขื˜ืœืขื›ืข ื’ืจื•ื™ืก ืขืงืกืขืงื•ื˜ืึทื‘ืœืขืก.
  • ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ AIX 4.x, 5.x ืื•ืŸ 6.x ืื™ื– ืึธืคึผื’ืขืฉื˜ืขืœื˜ (ืžืขืœื“ื•ื ื’ 7.1 ืื™ื– ืกื˜ื™ื™ื˜ื™ื“ ื•ื•ื™ ื“ื™ ืžื™ื ื™ืžื•ื ื’ืขืฉื˜ื™ืฆื˜ ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹AIX).
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืขืจืฉื˜ ื’ืขื‘ื•ื™ืจืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ DAP (ื“ืขื‘ื•ื’ื’ืขืจ ืึทื“ืึทืคึผื˜ืขืจ ืคึผืจืึธื˜ืึธืงืึธืœ).
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ NO_COLOR ืกื•ื•ื™ื•ื•ืข ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืขืจืฉื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื™ื ื˜ืึทื“ื–ืฉืขืจ ื˜ื™ื™ืคึผืก ื’ืจืขืกืขืจ ื•ื•ื™ 64 ื‘ื™ืฅ.
  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื‘ืจืขืึทืงืคึผืึธื™ื ืฅ ื’ืขื‘ื•ื ื“ืŸ ืฆื• ื™ื—ื™ื“ ื“ื™ื‘ืึทื’ ืึทื‘ื“ื–ืฉืขืงืฅ (ื•ื•ืขืŸ ื“ื™ื‘ืึทื’ื™ื ื’ ืงื™ื™ืคืœ ืคึผืจืึทืกืขืกืึทื–).
  • ืฆื•ื’ืขื’ืขื‘ืŸ "$_shell" ืคึฟื•ื ืงืฆื™ืข ืฆื• ืœื•ื™ืคืŸ ืึท ื‘ืึทืคึฟืขืœ ืื™ืŸ ืึท ืฉืึธืœ ืื•ืŸ ืฆื•ืจื™ืงืงื•ืžืขืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜.
  • ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ ื–ืขื ืขืŸ ื’ืขืžืื›ื˜ ืฆื• ื“ื™ Python API:
    • ืฆื•ื’ืขื’ืขื‘ืŸ ืงืœืืกืŸ ื’ื“ื‘.ืคืึธื“ืขื, ื’ื“ื‘.ื•ื ื•ื•ื™ื ื“ืขืจ.ืคืจืึทืžืขื™ื“ ืื•ืŸ ื’ื“ื‘.ื•ื•ืึทืœื•ืขืคึผืจื™ื ื˜ืขืจ.
    • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืึทื˜ืจื™ื‘ื™ื•ืฅ ื’ื“ื‘.ื™ื ืคืขืจื™ืึธืจ.ืึทืจื’ื•ืžืขื ืฅ, ื’ื“ื‘.ืื™ื ืคืขืจื™ืึธืจ.ืžืึทื™ืŸ_ื ืึทืžืข, ื’ื“ื‘.ื‘ืจืขืึทืงืคึผืึธื™ื ื˜.ื™ื ืคืขืจื™ืึธืจ, ื’ื“ื‘.ืคึผืจืึธื’ืกืคึผืึทืกืข.ืกื™ืžื‘ืึธืœ_ืคื™ืœืข, ื’ื“ื‘.ืคึผืจืึธื’ืกืคึผืึทืกืข.ืขืงืกืขืงื•ื˜ืึทื‘ืœืข_ืคื™ืœืขื ืึทืžืข.
    • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืคืึทื ื’ืงืฉืึทื ื– gdb.execute_mi(COMMAND, [ARG]...), gdb.block_signals().
    • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืžืขื˜ื”ืึธื“ืก ื’ื“ื‘.ืคืจืึทืžืข.ืกื˜ืึทื˜ื™ืง_ืœื™ื ืง, ื’ื“ื‘.ื™ื ืคืขืจื™ืึธืจ 'ืงืœืึธืจ_ืขื ื•ื•', 'ืกืขื˜_ืขื ื•ื•' ืื•ืŸ 'ื•ื ืกืขื˜_ืขื ื•ื•', ื’ื“ื‘.ื˜ื™ืคึผ 'ื™ืก_ืึทืจืจื™ื™ึท_ืœื™ื™ืง' ืื•ืŸ 'ื™ืก_ืกื˜ืจื™ื ื’_ืœื™ื™ืง', ื’ื“ื‘.ื•ื•ืึทืœื•ืข 'ืึทืจื™ื™ึทื ื˜ื™ื™ืœืŸ', ื’ื“ื‘.ื•ื•ืึทืœื•ืข 'ืฆื•_ืึทืจืจื™ื™ึท', ื’ื“ื‘. ืคึผืจืึธื’ืกืคึผืึทืกืข 'ืึธื‘ื“ื–ืฉืคื™ืœืข_ืคึฟืึทืจ_ืึทื“ืจืขืก', ื’ื“ื‘.ืœืึทื–ื™ืกื˜ืจื™ื ื’ __ืกื˜ืจ__. ืฆื•ื’ืขืœื™ื™ื’ื˜ events gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent, gdb.NewProgspaceEvent, gdb.FreeProgspaceEvent.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื’ืขื‘ืŸ ืึธื“ืขืจ ื“ื™ืกื™ื™ื‘ืึทืœ ื™ื—ื™ื“ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ ืคึฟืึทืจ ื•ื•ื™ื™ึทื˜ ื“ื™ื‘ืึทื’ื™ื ื’ ื˜ืึทืจื’ืึทืฅ.
  • ื™ืžืคึผืจื•ื•ื•ื“ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ AArch64 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืกืžืข (ืกืงืึทืœืึทื‘ืœืข ืžืึทื˜ืจื™ืฅ ืขืงืกื˜ืขื ืกื™ืึธืŸ) ืื•ืŸ ืกืžืข 2 ื™ืงืกื˜ืขื ืฉืึทื ื–.
  • ื™ืžืคึผืจื•ื•ื•ื“ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ Ada ืฉืคึผืจืึทืš ืื•ืŸ ื“ื™ Ada 2022 ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ '.' ืึทืจื’ื•ืžืขื ื˜ ืฆื• ื“ื™ 'ืจืฉื™ืžื”' ื‘ืึทืคึฟืขืœ. ืฆื• ื“ืจื•ืงืŸ ื“ืขื ืึธืจื˜ ืคื•ืŸ ื“ื™ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคื•ื ื˜ ืื™ืŸ ื“ืขื ืงืจืึทื ื˜ ืึธื ืœื™ื™ื’ืŸ ืจืึทื.
  • ื“ื™ '% V' ืคึฟืึธืจืžืึทื˜ ืกืคึผืขืกื™ืคื™ืขืจ ืื™ื– ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฆื• ื“ื™ ืคึผืจื™ื ื˜ืฃ ืื•ืŸ ื“ืคึผืจื™ื ื˜ืฃ ืงืึทืžืึทื ื“ื–.
  • ืื™ืŸ ื“ื™ ืคึผืจื™ื ื˜ืฃ ื‘ืึทืคึฟืขืœ, ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ืขื ืฉื˜ืจื™ืงืœ ื™ืงืกื˜ืจืึทืงื˜ื™ื“ ืคื•ืŸ ื“ื™ ื“ื™ื‘ืึทื’ ื›ื™ื™ืคืขืฅ ืื™ื– ืœื™ืžื™ื˜ืขื“ ื“ื•ืจืš ื“ื™ 'ืžืึทืงืก-ื•ื•ืขืจื˜-ื’ืจื™ื™ืก' ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ.
  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ื‘ื•ื™ืขืŸ ืึธืคึผืฆื™ืข "--additional-debug-dirs = PATH", ื•ื•ืึธืก ืฉื˜ืขืœื˜ ื“ื™ ืคืขืœื™ืงื™ื™ึทื˜ ื•ื•ืขืจื˜ ืคึฟืึทืจ ื“ื™ 'ื“ืขื‘ื•ื’-ื˜ืขืงืข-ื“ืขืจื•ื•ื™ื™ึทื–' ืคึผืึทืจืึทืžืขื˜ืขืจ.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืึท ื ื™ื™ึทืข ื‘ืึทืคึฟืขืœ "ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื”ื•ื™ืคึผื˜" ืฆื• ืขืงืกื˜ืจืึทืงื˜ ื“ื™ ื”ื•ื™ืคึผื˜ ืกื™ืžื‘ืึธืœ ื•ื•ืึธืก ื™ื ื“ื™ืงื™ื™ืฅ ื“ื™ ืคึผืึธื–ื™ืฆื™ืข ืคื•ื ื˜ ืฆื• ื“ื™ ืคึผืจืึธื’ืจืึทื.
  • ื ื™ื™ึทืข ืงืึทืžืึทื ื“ื– ืฆื•ื’ืขื’ืขื‘ืŸ:
    • "ืฉื˜ืขืœืŸ ื“ื™ื‘ื•ื’ ื‘ืจื™ื™ืงืคึผื•ื™ื ื˜ ืื•ื™ืฃ|ืึทื•ื•ืขืง"
    • "ืฉื˜ืขืœืŸ ื˜ื•ื™ ืžื•ื™ื–-ื’ืขืฉืขืขื ื™ืฉืŸ [ืื•ื™ืฃ|ืึทื•ื•ืขืง]"
    • "ืฉื˜ืขืœืŸ ืฉื˜ืขื ื“ื™ืง-ืœื™ื™ืขื ืขืŸ-ืงื˜ืฃ ืื•ื™ืฃ|ืึทื•ื•ืขืง"
    • "ื•ื™ืฉืึทืœื˜ ื“ืจื•ืง ืจืขืงืึธืจื“-ืื™ื ืกื˜ืจื•ืงืฆื™ืข [ืขืŸ]"
    • "ื•ื™ืฉืึทืœื˜ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืจืึทื-ืึทื ื•ื•ื™ื™ื ื“ืขืจื–"
    • "ื•ื™ืฉืึทืœื˜ ื•ื•ืึทืจื˜ืŸ ืคึฟืึทืจ ืื™ื ื“ืขืงืก ืงืึทืฉ"

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

ืงื•ื™ืคืŸ ืคืึทืจืœืึธื–ืœืขืš ื”ืึธืกื˜ื™ื ื’ ืคึฟืึทืจ ื–ื™ื™ื˜ืœืขืš ืžื™ื˜ DDoS ืฉื•ืฅ, VPS VDS ืกืขืจื•ื•ืขืจืก ๐Ÿ”ฅ ืงื•ื™ืคื˜ ืคืึทืจืœืขืกืœืขื›ืข ื•ื•ืขื‘ื–ื™ื™ื˜ืœ ื”ืึธืกื˜ื™ื ื’ ืžื™ื˜ DDoS ืฉื•ืฅ, VPS VDS ืกืขืจื•ื•ืขืจืก | ProHoster