Expand description

Hardware Abstraction Layer

Modules

Definition of phyical, virtual addresses and helper functions.

Bootstrap and initialization.

Kernel configuration.

Console input and output.

User context.

CPU information.

Device drivers.

liboslibos

Functions only available on the libos mode.

Physical memory operations.

Random number generator.

Thread spawning.

Time and clock functions.

Raw pointer from user land.

VDSO constants.

Virtual memory operations.

Structs

The error type which is returned from HAL functions. TODO: more error types.

Kernel configuration passed by kernel when calls crate::primary_init_early().

Generic memory flags.

Enums

Generic cache policy.

Constants

The smallest size of a page (4K).

Traits

Functions implemented in the kernel and used by HAL funtions.

Functions

Non-SMP initialization.

The main part of the primary CPU initialization.

Initialize the primary CPU at an early stage (before the physical frame allocator).

Initialize the secondary CPUs.

Type Definitions

Device address.

The result type returned by HAL functions.

Physical address.

Virtual address.