PINE64
Article: (Clickable) Call Graph for Apache NuttX Real-Time Operating System - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: PinePhone (https://forum.pine64.org/forumdisplay.php?fid=120)
+--- Forum: PinePhone Software (https://forum.pine64.org/forumdisplay.php?fid=121)
+--- Thread: Article: (Clickable) Call Graph for Apache NuttX Real-Time Operating System (/showthread.php?tid=18000)



Article: (Clickable) Call Graph for Apache NuttX Real-Time Operating System - lupyuen - 03-04-2023

Last week we ran Apache NuttX Real-Time Operating System (RTOS) on Unicorn Emulator, and we hit a baffling Arm64 Exception in the emulator. In this article we’ll create some tools to troubleshoot the exception…

1.  Render the Dynamic Call Graph for Apache NuttX RTOS, to understand how it boots

2.  Make it Clickable, so we can browse the NuttX Source Code as we explore the Call Graph

3.  We’ll use a Block Execution Hook in Unicorn Emulator to generate the Call Graph with Rust

4.  And call the Rust Libraries addr2line and gimli to map the Code Addresses to NuttX Kernel Functions

5.  Thanks to the (Clickable) Call Graph, we’ll describe the complete Boot Sequence of NuttX RTOS on PinePhone

6.  And explain how we might do Automated Daily Build and Test for NuttX on PinePhone

(Clickable) Call Graph for Apache NuttX Real-Time Operating System