تم إصدار GDB 16.1 (الإصدار الأول من سلسلة 16.x، حيث تم استخدام فرع 16.0 للتطوير). يدعم GDB تصحيح الأخطاء على مستوى الكود المصدري لمجموعة واسعة من لغات البرمجة (Ada، C، C++، D، Fortran، Go، Objective-C، Modula-2، Pascal، Rust، إلخ) على مختلف أنواع الأجهزة (i386، amd64، ARM، Power، Sparc، RISC-V، LongArch، إلخ) ومنصات البرامج (GNU/Linux*BSD، يونكس، Windows, macOS).
التحسينات الأكثر وضوحا:
- إلى Linux- قامت البيئات الموجودة على الأنظمة ذات بنية LoongArch بتطبيق دعم التسجيل وإعادة التنفيذ (التسجيل/إعادة التشغيل).
- بالنسبة للمؤشرات ذات العلامات، يتم استخدام بعض البتات لتخزين بيانات إضافية، ودعم نقاط التوقف التي يتم تشغيلها عند تنفيذ تغييرات البيانات (نقطة المراقبة).
- في الأنظمة ذات بنية AArch64، يتم تنفيذ دعم تصحيح أخطاء آلية الحماية MTE (امتداد وضع علامات الذاكرة). يتيح MTE ربط العلامات بالمناطق الموجودة في الذاكرة وتنظيم التحقق من الاستخدام الصحيح للمؤشرات لمنع استغلال الثغرات الأمنية الناجمة عن العمل غير الصحيح مع الذاكرة.
- تمت إضافة برنامج bash script gstack، والذي يستخدم GDB لطباعة آثار المكدس للعمليات الجارية.
- بالنسبة لنقاط التوقف المعلقة، يتم الآن تحليل الكلمات الرئيسية "سلسلة المحادثات" و"المهمة" عند إنشاء نقطة التوقف، وليس بعد الخروج من الحالة المعلقة.
- يضمن إدراج نقاط التوقف المرتبطة بسلاسل الرسائل فقط في منطقة البرنامج التي يعمل فيها مؤشر الترابط المطلوب.
- تم توسيع إمكانيات التتبع في معالجات Intel: أثناء تصحيح الأخطاء خطوة بخطوة، وكذلك في أوامر "سجل تعليمات السجل" و"سجل سجل استدعاء الوظيفة"، يتم حفظ إخراج الأحداث والبيانات غير المتزامنة عند استخدام يتم تنفيذ تعليمات ptwrite.
- تمت إضافة وحدة gdb.missing_objfile وحدث gdb.tui_enabled وسمة gdb.Symbol.is_artificial ووظيفة gdb.record.clear إلى واجهة برمجة تطبيقات Python.
- تم توسيع قدرات بروتوكول DAP (بروتوكول محول مصحح الأخطاء) المتعلق بمعالجة طلبات "النطاقات" و"التشغيل" و"الإرفاق".
- تمت إضافة دعم لحزم "vFile:stat" و"x addr,length" إلى بروتوكول تصحيح الأخطاء عن بُعد.
- لقد توقف دعم QNX Neutrino وNios II وIntel MPX.
المصدر: opennet.ru
