polyhal

Crates.iopolyhal
lib.rspolyhal
version0.1.3
sourcesrc
created_at2024-08-03 16:34:33.272503
updated_at2024-08-04 17:35:13.683251
descriptionThis crate provides the interface for multiple platforms.
homepage
repositoryhttps://github.com/Byte-OS/polyhal
max_upload_size
id1324441
size421,670
(yfblock)

documentation

README

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
Commit count: 0

cargo fmt