A from-scratch, graphical debugger for Linux

About uscope


μscope (pronounced "microscope") is a debugger for Linux.

All debugging-related code is written from the ground up (ELF/DWARF parsing, subordinate process control, extracting and rendering data from the subordinate, etc).

See the GitHub README and my blog for more information.

Read more
Filters

Recent Activity

Hi all! It's been a very busy few weeks for me, but I wanted to give a quick update on &uscope since I just made a Handmade Network project page for it, and a lot's been done since I demo'ed it on Zig Showtime! [0]

  1. I completely re-wrote the variable rendering code so now it's displayed as an expandable tree. This means that things like arrays/slices, nested structs, and structs with circular pointers back to themselves are rendered properly.
  2. I also fixed a boat-load of bugs related to extracting variable data from the subordinate process, and folks are reporting some amount of success using the debugger on their real-world programs now!
  3. I added the ability to debug multi-threaded subordinates (there's still a lot of bugs and things to do here, but it's a start)
  4. Added support for Odin data types as a first-class citizen (exciting for the Handmade community hopefully! PR is coming tonight for this, but tests are passing locally)
  5. The debugger now renders very, very basic information for C++, Rust, and Jai data types. It's ugly, but can be usable if you're not doing anything insane (i.e. Jai looks OK, but C++ and Rust not so much)

Check it out if you're interested! [1]

[0] https://www.youtube.com/watch?v=stWBTv6grBc
[1] https://github.com/jcalabro/uscope

View original message on Discord