Skip to content

Version 2.0.0Beta2

Compare
Choose a tag to compare
@mubes mubes released this 25 Jul 16:39
· 283 commits to main since this release

Beta 2 Release for 2.0.0

This is a transient release which will be removed when a new Beta or full release is issued. It is intended for the testing and feedback of issues with V2.00 prior to release.

The biggest changes in V2.0.0 are the support of parallel trace and the ORBTrace FPGA-based solution (see the ORBTrace repository..it pairs with V1.1.0 of the ORBTrace gateware), but there are numerous other smaller improvements throughout the codebase.

Main changes in Beta2 against Beta1;

  • Improved TPIU deframer in orbuculum leading to significantly reduced CPU load
  • Removal of internal packet layer in orbuculum, again reducing CPU load. We're near the point you won't even notice it's running!
  • Windows support!! Woohoo
  • Verbosity reduction across several utilities
  • Addition of longopts and unification of command line options
  • Code review and minor fixup as a result of -fanalyzer reports
  • Trivial installer integrated into makefile for both POSIX and Windows
  • Tidy connect and reconnect behaviour in multiple utilities
  • Exception name integration into orbtop
  • Support for SWO over Manchester transport in ORBTrace (in the orbtrace utility)
  • Cleanup of feeder sources to allow better unification of codebase across platforms
  • MTB support integrated into orbmortem
  • Addition of health warning to orbprofile
  • Addition of ZeroMQ support in the orbzmq utility (early visibility, not production ready yet)

Earlier changes from Beta1 against V1.13;

  • Addition of ORBMortem for post-mortem analysis
  • Split of orbuculum into the network server (orbuculum) and the fifo server (orbfifo)
  • Alpha version of orbprofile for code profiling support
  • orbtrace utility for controlling tracing functionality
  • Extensive refactoring and simplification (e.g. removal of need for libbfd etc)
  • New cpu family support in gdbinit

Even when fully released V2.0.0 should be viewed as somewhat experimental. We're into new territory with parallel trace and there is still much be be learnt. Current code supports up to ETM 3.5...4.0 support is outstanding.

Known issues

  • orbzmq binding is a bit 'odd' on Linux. Use the updated version from the Devel branch (with accompanying notes) or set the bind address to tcp://*:1234 or similar.