37 releases
0.9.37 | Mar 14, 2023 |
---|---|
0.9.36 | Mar 7, 2023 |
0.9.35 | Feb 15, 2023 |
0.9.30 | Jan 31, 2023 |
0.9.0 | Sep 27, 2022 |
#190 in Operating systems
107 downloads per month
525KB
9K
SLoC
Contains (static library, 17KB) bin/riscv64imac-unknown-none-elf.a, (static library, 11KB) bin/riscv32i-unknown-none-elf.a, (static library, 10KB) bin/riscv32imac-unknown-none-elf.a, (static library, 10KB) bin/riscv32imac-unknown-xous-elf.a, (static library, 10KB) bin/riscv32imc-unknown-none-elf.a, (static library, 17KB) bin/riscv64gc-unknown-none-elf.a
Xous Kernel
This contains the core kernel for Xous. It requires a stage 1 loader in order to start up, as it assumes the system is already running in Supervisor mode.
Building
To build the kernel, you will need a riscv32 target for Rust. Possible
targets include riscv32i-unknown-none-elf
, riscv32imac-unknown-none-elf
,
or riscv32imac-unknown-xous-elf
.
- Decide what target you want. For simple, embedded systems this could
be
riscv32i-unknown-none-elf
, and for more complex systems with compressed instructions you could useriscv32imac-unknown-none-elf
. - Get Rust. Go to https://rustup.rs/ and follow its instructions.
- Install the proper toolchain:
rustup target add ${target_arch}
- Build the kernel:
cargo build --release --target ${target_arch}
Using
To use the kernel, you must package it up into an arguments binary with
xous-tools
.
Testing
TBD
Contribution Guidelines
Please see CONTRIBUTING for details on how to make a contribution.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide its terms.
License
Copyright © 2020
This project is licensed under the Apache License 2.0 LICENSE. For accurate information, please check individual files.
Dependencies
~2–5.5MB
~86K SLoC