Toy microkernel and userspace written in Rust, exploring modern ideas
See the codePoplar is a microkernel and userspace written in Rust, exploring modern ideas. It is not a UNIX, and does not aim for compatibility with existing software. It currently supports x86_64 and RISC-V.
The best way to learn about Poplar is to read the book. The website also hosts some other useful resources.
Operating systems tend to be complex to build and run. We've tried to make this as simple as we can, but if you encounter problems or have suggestions to make it easier, feel free to file an issue :)
Firstly, clone the repository and fetch the submodules:
git clone https://github.com/IsaacWoods/poplar.git
git submodule update --init --recursive
rust-src component (install with rustup component add rust-src)qemu-system-{arch})This repository includes an xtask-based build tool to simplify building and running Poplar.
The tool can be configured in Poplar.toml - this can, for example, be used to set whether to build using the
release profile, and the architecture to build for.
cargo xtask dist will build a disk imagecargo xtask qemu will build a disk image, and then start emulating it in QEMUSee cargo xtask --help for more information about how to invoke the build system.
Rust
98.6%
Toy microkernel and userspace written in Rust, exploring modern ideas
See the codePoplar is a microkernel and userspace written in Rust, exploring modern ideas. It is not a UNIX, and does not aim for compatibility with existing software. It currently supports x86_64 and RISC-V.
The best way to learn about Poplar is to read the book. The website also hosts some other useful resources.
Operating systems tend to be complex to build and run. We've tried to make this as simple as we can, but if you encounter problems or have suggestions to make it easier, feel free to file an issue :)
Firstly, clone the repository and fetch the submodules:
git clone https://github.com/IsaacWoods/poplar.git
git submodule update --init --recursive
rust-src component (install with rustup component add rust-src)qemu-system-{arch})This repository includes an xtask-based build tool to simplify building and running Poplar.
The tool can be configured in Poplar.toml - this can, for example, be used to set whether to build using the
release profile, and the architecture to build for.
cargo xtask dist will build a disk imagecargo xtask qemu will build a disk image, and then start emulating it in QEMUSee cargo xtask --help for more information about how to invoke the build system.
Rust
98.6%