Wording improvements
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
\begin{document}
|
||||
|
||||
\section{\Gls{wamr} Modifications}\label{sec:wamrmodifications}
|
||||
\section{WAMR Modifications}\label{sec:wamrmodifications}
|
||||
|
||||
The experiments use a slightly modified version of \Gls{wamr} based on release 2.4.4\footnote{\url[2026-09-11]{https://github.com/wasm-micro-runtime/wasm-micro-runtime/releases/tag/WAMR-2.4.4}}.
|
||||
The modifications provide a platform port for the bare-metal execution environment described in \autoref{sec:executionenvironment} and an explicit marker call during runtime exceptions.
|
||||
@@ -15,14 +15,14 @@ The modifications provide a platform port for the bare-metal execution environme
|
||||
The added \code{baremetal} platform only provides the subset of this layer that is required by the experiments.
|
||||
It is selected through \code{WAMR\_BUILD\_PLATFORM=baremetal} and compiled for 32-bit x86 using a freestanding cross-compiler.
|
||||
The build enables the classic interpreter and \Gls{aot} execution, while disabling the fast interpreter, the \Glspl{jit}, and WASI support.
|
||||
The modifications also remove the mandatory CMake thread-library lookup and disables the compiler option \code{-mindirect-branch-register}\todo{Option was disabled because gcc 5.4 didn't support it, now I'm using a newer cross compiler}.
|
||||
The modifications also remove the mandatory CMake thread-library lookup and disable the compiler option \code{-mindirect-branch-register}\todo{Option was disabled because gcc 5.4 didn't support it, now I'm using a newer cross compiler}.
|
||||
|
||||
Since execution is single-threaded and no operating system is present, many platform functions are stubs.
|
||||
Platform initialization and mutex operations report success without performing any work, console output is discarded, and time queries return zero.
|
||||
The system allocation functions \code{os\_malloc} and \code{os\_realloc} return \code{NULL}.
|
||||
Instead, the host initializes \Gls{wamr} with a supplied memory pool or custom allocation callbacks, as described later in \autoref{sssec:wamrmemoryallocation}.
|
||||
|
||||
\Gls{aot} experiment variants additionally require implementations of \code{os\_mmap} and \code{os\_mremap}, to allocate memory for the loaded module text.
|
||||
\Gls{aot} experiment variants also require implementations of \code{os\_mmap} and \code{os\_mremap} to allocate memory for the loaded module text.
|
||||
The platform provides these using a static \SI{2}{\mega\byte} buffer and a simple bump allocator (allocator with monotonically increasing offset into the reserved memory region).
|
||||
Remapping allocates a new region and copies the old one, without reclaiming any memory.
|
||||
Unmapping does not reclaim memory, and \code{os\_mprotect} reports success without changing access permissions.
|
||||
|
||||
Reference in New Issue
Block a user