Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/haileys/crabos
My hobby operating system written in Rust
https://github.com/haileys/crabos
Last synced: about 1 month ago
JSON representation
My hobby operating system written in Rust
- Host: GitHub
- URL: https://github.com/haileys/crabos
- Owner: haileys
- Created: 2019-03-23T00:52:19.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-06-22T05:08:04.000Z (about 1 year ago)
- Last Synced: 2024-06-30T14:47:31.632Z (3 months ago)
- Language: Rust
- Homepage:
- Size: 11.4 MB
- Stars: 53
- Watchers: 5
- Forks: 7
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CrabOS 🦀
![](https://user-images.githubusercontent.com/179065/168691073-39f24002-cd6f-4090-8852-df5eb1ad46d2.jpg)
## Setup
You need a few things to build this:
* Rust nightly
* `cargo-xbuild`
* `nasm`
* A cross binutils targeting x86_64-elf### MacOS
1. Install Rust with [rustup](https://rustup.rs/). Make sure install nightly and select it as your default compiler.
1. Install `nasm` from Homebrew:
```
brew install nasm
```1. Install `cargo-xbuild` from cargo:
```
cargo install cargo-xbuild
```1. Install binutils from source. I build my cross compilers into `~/cross`, but anywhere works.
```
curl -O https://ftp.gnu.org/gnu/binutils/binutils-2.32.tar.gz
tar xf binutils-2.32
cd binutils-2.32
./configure --target=x86_64-elf --disable-werror --prefix=$HOME/cross
make && make install
```## Building
```
make
```## Known Bugs
* QEMU's TCG accelerator (the default) has a buggy implementation of the FS.base and GS.base MSRs. Use the KVM or HVF accelerators instead.