12 releases

0.3.2 May 5, 2025
0.3.1 May 5, 2025
0.2.4 Apr 19, 2025
0.1.3 Aug 4, 2024

#1696 in Procedural macros

Download history 23/week @ 2025-01-24 35/week @ 2025-01-31 22/week @ 2025-02-07 26/week @ 2025-02-14 25/week @ 2025-02-21 26/week @ 2025-02-28 13/week @ 2025-03-07 14/week @ 2025-03-14 20/week @ 2025-03-21 5/week @ 2025-03-28 274/week @ 2025-04-04 287/week @ 2025-04-11 250/week @ 2025-04-18 25/week @ 2025-04-25 344/week @ 2025-05-02 100/week @ 2025-05-09

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

MIT license

5KB
82 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

~3MB
~64K SLoC