Run x86_64 containers on WASI/browser using Bochs #59
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit adds an experimental support for running x86_64 containers on WASI/browser leveraging Bochs emulator. This improves the performance of x86_64 containers on WASM by eliminating guest-side emulation (user-space qemu with binfmt in guest VM).
Running on WASI runtimes
WASI runtime's directory mapping is unsupported by x86_64 containers as of now.
Non-x86_64 containers (based on TinyEMU) still supports directory mappings.
Running on browser
There are two methods for running the container on browser.
WASI-converted image on browser
The WASI-converted image can run on browser leveraging browser_wasi_shim.
emscripten image on browser
--to-js
flag still supports creating emscripten-compiled image.TODOs