Emulating Apache #NuttX Real-Time Operating System on #UnicornEngine ... Remember to handle Memory-Mapped I/O
Article: https://lupyuen.github.io/articles/unicorn?7#apache-nuttx-rtos-in-unicorn
Here's what happens when #UnicornEngine tries to access Emulated Memory that isn’t mapped ... And how we map it in #RustLang
Article: https://lupyuen.github.io/articles/unicorn?6#unmapped-memory
For tracing a Block of #Arm64 Instructions in #UnicornEngine ... Use a Block Execution Hook
Article: https://lupyuen.github.io/articles/unicorn?5#block-execution-hook
To intercept every #Arm64 Instruction that will be emulated by #UnicornEngine ... Just attach a Code Execution Hook to the Emulator
Article: https://lupyuen.github.io/articles/unicorn?4#code-execution-hook
Here's how we attach a Memory Access Hook in Unicorn Emulator with #RustLang
Article: https://lupyuen.github.io/articles/unicorn?3#memory-access-hook
#UnicornEngine lets us attach a Memory Access Hook ... That's called to intercept every Arm64 Memory Access in the Emulator
Article: https://lupyuen.github.io/articles/unicorn?3#memory-access-hook
(Clickable) Call Graph for Apache #NuttX Real-Time Operating System ... Made possible by Unicorn Emulator! 👍
Source: https://github.com/lupyuen/pinephone-emulator#call-graph-for-apache-nuttx-rtos
Emulating Machine Code in #RustLang ... With #UnicornEngine
Article: https://lupyuen.github.io/articles/unicorn?2#emulate-arm64-machine-code
Let's emulate some #Arm64 Machine Code in #UnicornEngine with #RustLang
Article: https://lupyuen.github.io/articles/unicorn?2#emulate-arm64-machine-code
Can we emulate Arm64 #PinePhone with Unicorn Emulator ... To automate the testing of Apache #NuttX Real-Time Operating System with #RustLang? Let's find out!
Apache #NuttX RTOS hits a Memory Mgmt Fault in Unicorn Emulator ... Let's track down the Arm64 Exception
Source: https://github.com/lupyuen/pinephone-emulator#unicorn-emulator-halts-in-nuttx-mmu
To emulate #PinePhone UART Output in Unicorn Emulator ... We intercept all writes to UART Memory-Mapped I/O
Source: https://github.com/lupyuen/pinephone-emulator#emulate-uart-output-in-unicorn-emulator
Apache #NuttX RTOS on Unicorn Emulator waits forever for UART Controller to get ready ... Let's emulate the #PinePhone UART Controller with Memory Mapped I/O
Let's emulate Apache #NuttX RTOS for #PinePhone on Unicorn Emulator ... And watch what happens!
Source: https://github.com/lupyuen/pinephone-emulator#run-apache-nuttx-rtos-in-unicorn-emulator
Use Unicorn Emulator's Code Hook ... To intercept every Arm64 Instruction that will be emulated in #RustLang
Source: https://github.com/lupyuen/pinephone-emulator#code-execution-hook-for-arm64-emulation
To emulate Arm64 Memory-Mapped I/O in #RustLang ... Just use a Memory Access Hook in Unicorn Emulator
Source: https://github.com/lupyuen/pinephone-emulator#memory-access-hook-for-arm64-emulation
#STM32 USB Driver for Apache #NuttX RTOS ... How it enumerates USB Devices
Article: https://lupyuen.github.io/articles/usb2?11#stm32-usb-driver-for-nuttx
IoT Techie and Educator / Apache NuttX PMC