9 releases

new 0.2.4 Apr 19, 2025
0.2.3 Apr 17, 2025
0.1.3 Aug 4, 2024

#1503 in Procedural macros

Download history 27/week @ 2024-12-28 10/week @ 2025-01-04 19/week @ 2025-01-11 12/week @ 2025-01-18 21/week @ 2025-01-25 37/week @ 2025-02-01 21/week @ 2025-02-08 29/week @ 2025-02-15 24/week @ 2025-02-22 23/week @ 2025-03-01 13/week @ 2025-03-08 13/week @ 2025-03-15 20/week @ 2025-03-22 79/week @ 2025-03-29 301/week @ 2025-04-05 199/week @ 2025-04-12

600 downloads per month
Used in 3 crates (2 directly)

MIT license

10KB
152 lines

arch crate

A crate help you to write a os that support multiple platforms.

English | 中文简体

Wiki

Supported platforms

Platform Board
riscv64 qemu
x86_64 qemu
aarch64 qemu
loongarch64 qemu

Example

Here is an simple example in the example dir.

Run

cd example
# Run on riscv64
make ARCH=riscv64 run
# Run on x86_64
make ARCH=x86_64 run
# Run on aarch64
make ARCH=aarch64 run
# Run on loongarch64
make ARCH=loongarch64 run

Used OS

ByteOS

How to run?

Prepare
git clone https://github.com/Byte-OS/ByteOS.git
cd ByteOS
git reset 655eef3e38b5a85baaab4b2ba33832fbb299f19a --hard
git clone https://github.com/Byte-OS/arch.git
Run on a specific platform

run on riscv64

make ARCH=riscv64 LOG=error run

Change ARCH value if you want to run on another platform.

rCore-tutorial-v3 ch7

Prepare
git clone https://github.com/yfblock/rcore-tutorial-v3-with-hal-component.git
git reset fe2c146dedeadcc5fa9db8402128e066e45ca5a9 --hard
git clone https://github.com/Byte-OS/arch.git
Run on a specific platform
make ARCH=riscv64 run

Dependencies

~190–620KB
~15K SLoC