diff options
Diffstat (limited to 'linux/bootstrap')
-rw-r--r-- | linux/bootstrap/README.md | 4 | ||||
-rw-r--r-- | linux/bootstrap/bootstrap.md | 17 |
2 files changed, 20 insertions, 1 deletions
diff --git a/linux/bootstrap/README.md b/linux/bootstrap/README.md index fdc3213a..ca4ea4b3 100644 --- a/linux/bootstrap/README.md +++ b/linux/bootstrap/README.md @@ -4,4 +4,6 @@ a) An emulator for SubX, the subset of the 32-bit x86 instruction set used by Mu. b) A second translator for SubX programs that emits identical binaries to the -self-hosting versions in the parent directory. +self-hosting versions in the parent directory. Having two diverse compilers +(one in a familiar language, one with minimal syscall surface area) that emit +identical binaries should help gain confidence in Mu. diff --git a/linux/bootstrap/bootstrap.md b/linux/bootstrap/bootstrap.md new file mode 100644 index 00000000..ca9320e5 --- /dev/null +++ b/linux/bootstrap/bootstrap.md @@ -0,0 +1,17 @@ +## Running + +`bootstrap` currently has the following sub-commands: + +- `bootstrap help`: some helpful documentation to have at your fingertips. + +- `bootstrap test`: runs all automated tests. + +- `bootstrap translate <input files> -o <output ELF binary>`: translates `.subx` + files into an executable ELF binary. + +- `bootstrap run <ELF binary> <args>`: simulates running the ELF binaries emitted + by `bootstrap translate`. Useful for testing and debugging. + + Remember, not all 32-bit Linux binaries are guaranteed to run. I'm not + building general infrastructure here for all of the x86 instruction set. + SubX is about programming with a small, regular subset of 32-bit x86. |