ИзданиС Π½Π° ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° GDB 15

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ Ρ€Π΅Π»ΠΈΠ· Π½Π° ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° GDB 15.1 (ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‚ сСрия 15.x, ΠΊΠ»ΠΎΠ½ 15.0 Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°). GDB ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° Π½ΠΈΠ²ΠΎ ΠΈΠ·Ρ…ΠΎΠ΄Π΅Π½ ΠΊΠΎΠ΄ Π·Π° голямо Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΈ Π΅Π·ΠΈΡ†ΠΈ (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust ΠΈ Π΄Ρ€.) Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈ (i386, amd64, ARM, Power, Sparc, RISC-V ΠΈ Π΄Ρ€.) ΠΈ софтуСрни ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ (GNU/Linux, *BSD, Unix, Windows, macOS).

ΠšΠ»ΡŽΡ‡ΠΎΠ²ΠΈ подобрСния:

  • Π—Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° GDB ΠΈ GDBserver сСга Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° C++17 (ΠΏΠΎΠ½Π΅ GCC 9).
  • ВнСсСни са подобрСния Π² Python API. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ gdb.notify_mi, gdb.missing_debug.register_handler ΠΈ gdb.interrupt, ΠΊΠ»Π°ΡΡŠΡ‚ gdb.missing_debug.MissingDebugInfo, ΠΌΠΎΠ΄ΡƒΠ»ΡŠΡ‚ db.missing_debug, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΈΡ‚Π΅ gdb.Value.bytes ΠΈ gdb.InferiorThread.ptid_string, константитС gdb.SYMBOL_TYPE_DOMAIN, gdb.SYMBOL_FUNCTION_DOMAIN ΠΈ gdb.SEARCH_*_DOMAIN. Π’ ΠΎΠ±Π΅ΠΊΡ‚ΠΈΡ‚Π΅ gdb.Inferior ΠΈ gdb.InferiorThread Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° добавянС Π½Π° потрСбитСлски Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΈ.
  • ΠŸΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ΅Π½Π° Π΅ рСализацията Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° DAP (Debugger Adapter Protocol). Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«set debug dap-log-levelΒ» Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π»ΠΎΠ³ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° DAP. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° заявката Β«cancelΒ» ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅ Β«processΒ».
  • Π’ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Π·Π° дистанционно отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ QThreadOptions ΠΈ qIsAddressTagged, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«set/show remote thread-options-packetΒ».
  • Π’ GDBserver Π΅ спряна ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΎΠΏΡ†ΠΈΠΈΡ‚Π΅ Β«--remote-debugΒ» ΠΈ Β«--event-loop-debugΒ», ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡ‚Π΅ β€˜monitor set remote-debug’ ΠΈ β€˜monitor set event-loop-debug’. ВмСсто тях, Π² опцията Β«--debugΒ» Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° списък ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π° отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ с Π·Π°ΠΏΠ΅Ρ‚Π°ΠΈ (all, threads, event-loop ΠΈ remote). Аналогично, Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΡƒΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° β€˜monitor set debug’.
  • Π’ индСкса Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° информация Π·Π° функцията main, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява ускоряванС Π½Π° стартиранСто ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с някои Π³ΠΎΠ»Π΅ΠΌΠΈ изпълними Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.
  • ОбявСни Π·Π° остарСли са MPX ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡ‚Π΅ Β«show/set mpx boundΒ», ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ Intel спря ΠΏΡ€Π΅Π· 2019 Π³ΠΎΠ΄ΠΈΠ½Π°.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ:
    • Β«set/show direct-call-timeoutΒ»
    • Β«set/show indirect-call-timeoutΒ»
    • Β«set/show unwind-on-timeout on|offΒ»
    • Β«set/show unwind-on-signal on|offΒ»
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡ‚Π΅ Β«gcoreΒ» ΠΈ Β«generate-core-fileΒ» Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° оптимизация Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€Π°Π·Π½ΠΈ области Π² Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ core Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster