Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/francisrstokes/elessaros
risc-v OS inspired by xv6
https://github.com/francisrstokes/elessaros
Last synced: 14 days ago
JSON representation
risc-v OS inspired by xv6
- Host: GitHub
- URL: https://github.com/francisrstokes/elessaros
- Owner: francisrstokes
- Created: 2023-08-19T14:59:52.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-08-24T08:16:45.000Z (about 1 year ago)
- Last Synced: 2024-04-16T01:08:09.401Z (7 months ago)
- Language: C
- Size: 37.1 KB
- Stars: 13
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# ElessarOS
risc-v OS inspired by xv6. Initially this will be pretty much me building xv6 bit by bit, but I do hope to eventually diverge and implement some more advanced OS features like users, permissions, etc.
## Docker toolchain
Installing the toolchain
```bash
docker pull ghcr.io/francisrstokes/rv-toolchain-docker:main
```## Building the kernel
```bash
docker run --rm -v $(pwd):/project -w /project -it francisrstokes/rv-toolchain:latest make
```## Debugging
Build the kernel, then run
```bash
make qemu-gdb
```(note: QEMU is not part of the riscv toolchain and needs to be separately installed)
In another console, run
```bash
docker run --rm -v $(pwd):/project --net="host" -w /project -it francisrstokes/rv-toolchain:latest riscv64-unknown-linux-gnu-gdb -ix .gdbinit
```The program should now be debuggable inside GDB.
### VSCode debugging
A gdb-multiarch configuration exists inside `.vscode/launch.json`. If the port assigned by make differs from `26000`, you'll have to manually change it. Otherwise, debugging inside VSCode should also work just fine.