Skip to content

arceos-org/arceos-crates

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ArceOS Crates

Reusable crates list for ArceOS.

Crate List

Crate      crates.io      Documentation Description
allocator N/A Docs.rs Various allocator algorithms in a unified interface.
arm_gicv2 Crates.io Docs.rs ARM Generic Interrupt Controller version 2 (GICv2) register definitions and basic operations.
arm_pl011 Crates.io Docs.rs ARM Uart pl011 register definitions and basic operations.
arm_pl031 Crates.io Docs.rs System Real Time Clock (RTC) Drivers for aarch64 based on PL031.
axdriver_base N/A Docs.rs Common interfaces for all kinds of device drivers.
axdriver_block N/A Docs.rs Common traits and types for block storage drivers.
axdriver_display N/A Docs.rs Common traits and types for graphics device drivers.
axdriver_net N/A Docs.rs Common traits and types for network device (NIC) drivers.
axdriver_pci N/A Docs.rs Structures and functions for PCI bus operations.
axdriver_virtio N/A Docs.rs Wrappers of some devices in the virtio-drivers crate, that implement traits in the axdriver_base series crates.
axerrno Crates.io Docs.rs Generic error code representation.
axfs_devfs Crates.io Docs.rs Device filesystem used by ArceOS.
axfs_ramfs Crates.io Docs.rs RAM filesystem used by ArceOS.
axfs_vfs Crates.io Docs.rs Virtual filesystem interfaces used by ArceOS.
axio Crates.io Docs.rs std::io-like I/O traits for no_std environment.
cap_access Crates.io Docs.rs Provide basic capability-based access control to objects.
crate_interface Crates.io Docs.rs Provides a way to define an interface (trait) in a crate, but can implement or use it in any crate.
dw_apb_uart Crates.io Docs.rs Uart snps,dw-apb-uart driver in Rust for BST A1000b FADA board.
flatten_objects Crates.io Docs.rs A container that stores numbered objects. Each object can be assigned with a unique ID.
handler_table Crates.io Docs.rs A lock-free table of event handlers.
int_ratio Crates.io Docs.rs The type of ratios represented by two integers.
kernel_guard Crates.io Docs.rs RAII wrappers to create a critical section with local IRQs or preemption disabled.
kspin Crates.io Docs.rs Spinlocks used for kernel space that can disable preemption or IRQs in the critical section.
lazyinit Crates.io Docs.rs Initialize a static value lazily.
linked_list N/A Docs.rs Linked lists that supports arbitrary removal in constant time.
memory_addr Crates.io Docs.rs Wrappers and helper functions for physical and virtual addresses.
memory_set Crates.io Docs.rs Data structures and operations for managing memory mappings.
page_table_entry Crates.io Docs.rs Page table entry definition for various hardware architectures.
page_table_multiarch Crates.io Docs.rs Generic page table structures for various hardware architectures.
percpu Crates.io Docs.rs Define and access per-CPU data structures.
percpu_macros Crates.io Docs.rs Macros to define and access a per-CPU data structure.
riscv_goldfish Crates.io Docs.rs System Real Time Clock (RTC) Drivers for riscv based on goldfish.
scheduler N/A Docs.rs Various scheduler algorithms in a unified interface.
slab_allocator N/A Docs.rs Slab allocator for no_std systems. Uses multiple slabs with blocks of different sizes and a linked list for blocks larger than 4096 bytes.
timer_list Crates.io Docs.rs A list of timed events that will be triggered sequentially when the timer expires.
tuple_for_each Crates.io Docs.rs Provides macros and methods to iterate over the fields of a tuple struct.
x86_rtc Crates.io Docs.rs System Real Time Clock (RTC) Drivers for x86_64 based on CMOS.