aarch64-std

Crates.ioaarch64-std
lib.rsaarch64-std
version0.1.2
sourcesrc
created_at2022-12-11 07:01:16.491531
updated_at2022-12-11 07:19:06.378955
descriptionimplementations of standard library components for bare-metal aarch64
homepagehttps://github.com/ccbrown/aarch64-std
repositoryhttps://github.com/ccbrown/aarch64-std
max_upload_size
id734197
size44,347
Chris (ccbrown)

documentation

README

aarch64-std

aarch64-std implements components from the Rust standard library in a way suitable for no_std or bare metal ARM applications.

Design Goals

In order:

  1. Run on any aarch64 platform at EL0. Anything from microcontrollers to Zynq UltraScale+ MPSoCs to M1 Macs should just work.
  2. Mimic the standard library APIs as closely as possible. For the most part these modules are drop-in replacements for the standard library.
  3. Perform as efficiently as possible.

Highlights

  • sync
    • Mutex
  • thread
    • sleep
    • spawn
      • Uses cooperative green threads.
      • As many cores as you'd like can participate using thread::contribute.
      • Threads yield via the standard thread::yield_now function.
  • time
    • Instant

Cargo Features

  • "alloc" enables functionality which requires the use of the alloc crate. It's enabled by default, but may be disabled if you don't have an allocator available.
Commit count: 15

cargo fmt