Need to emulate Linux programs? Check out the Qiling Binary Emulation Framework
Article: https://lupyuen.github.io/articles/unicorn?11#emulation-concerns
#UnicornEngine is good enough for Automated Daily Build & Test of #NuttX RTOS on #PinePhone
Article: https://lupyuen.github.io/articles/unicorn?11#emulation-concerns
Apache #NuttX RTOS halts in #UnicornEngine with an MMU Fault ... Let's troubleshoot in the next article!
Article: https://lupyuen.github.io/articles/unicorn?10#emulator-halts-with-mmu-fault
To emulate #PinePhone UART Output ... We intercept Memory-Mapped I/O with #UnicornEngine
Article: https://lupyuen.github.io/articles/unicorn?9#emulate-uart-output
Apache #NuttX Real-Time Operating System on #PinePhone @PINE64 🤩
Source: https://www.pine64.org/2023/03/01/february-update-things-are-taking-shape/
Let's emulate the #PinePhone Allwinner A64 UART Controller ... So #UnicornEngine won't get stuck waiting for UART
Article: https://lupyuen.github.io/articles/unicorn?8#wait-for-uart-controller
#NuttX RTOS gets stuck while booting on #UnicornEngine ... Let's emulate the #PinePhone UART Controller
Article: https://lupyuen.github.io/articles/unicorn?8#wait-for-uart-controller
How we map the Memory Regions in #UnicornEngine ... For booting Apache #NuttX Real-Time Operating System
Article: https://lupyuen.github.io/articles/unicorn?7#apache-nuttx-rtos-in-unicorn
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
IoT Techie and Educator / Apache NuttX PMC