Esitatud on GDB 16.1 debugeerimise versioon (esimene 16.x seeria väljaanne, 16.0 haru kasutati arenduseks). GDB toetab lähtekoodi tasemel silumist laiale programmikeelte valikule (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust jne) erinevates riistvarades (i386, amd64, ARM, Power, Sparc, RISC-V, LoongArch jne) ja tarkvaraplatvormidel (GNU/Linux, *BSD, Unix, Windows, macOS).
Silmapaistvamad täiustused:
- LoongArch arhitektuuriga süsteemidesse Linuxi keskkondadele on rakendatud salvestamise ja uuesti täitmise (record/replay) tugi.
- Tegustatud näidikute jaoks, mille teatud bitid on kasutatavad täiendavate andmete hoidmiseks, on rakendatud andmepunktide toetamine, mis aktiveeruvad, kui andmed muutuvad (watchpoint).
- AArch64 arhitektuuriga süstemites on rakendatud MTE (Memory Tagging Extension) kaitsemehhanismi silumise tugi. MTE võimaldab siduda sildid mälu aladega ja organiseerida näidikute kasutamise õigsuse kontrolli, et vältida haavatavuste ärakasutamist, mis tuleneb vale mäluhalduse tõttu.
- Lisatud on bash-skript gstack, mis kasutab GDB-d töötavate protsesside virna jälgimise (stack trace) väljastamiseks.
- Ootepunktide ooteolek (pending) tõttu sõnas ‘thread’ ja ‘task’ töödeldakse nüüd ooteoleku loomisel, mitte pärast selle lõpuleviimist.
- Pakkuda on võimalikud peatuste sidumine ainult sellesse programmi osasse, kus vajalik teema töötab.
- Intel'i protsessorite jälgimisvõimalusi on laienenud: samm-sammult silumiseks, samuti käskude ‘record instruction-history’ ja ‘record function-call-history’ korral on realiseeritud asünkroonsete sündmuste ja andmete väljund, mis salvestatakse ptwrite käsu kasutamise ajal.
- Python API-s on lisatud: moodul gdb.missing_objfile, sündmus gdb.tui_enabled, atribuut gdb.Symbol.is_artificial ja funktsioon gdb.record.clear.
- On laienenud DAP (Debugger Adapter Protocol) protokolli võimekus, mis on seotud ‘scopes’, ‘launch’ ja ‘attach’ päringute töötlemisega.
- Kaugjälgimise protokolli on lisatud toetus pakettidele ‘vFile:stat’ ja ‘x addr,length’.
- Tugiteenuste lõpetamine QNX Neutrino, Nios II ja Intel MPX osas.
Allikas: opennet.ru
