[][src]Crate kernel

The Redox OS Kernel, version 2

The Redox OS Kernel is a microkernel that supports x86_64 systems and provides Unix-like syscalls for primarily Rust applications

Re-exports

pub extern crate x86;
pub use consts::*;
pub use arch::*;

Modules

allocator

Heap allocators

arch

Architecture-dependent stuff

common

Shared data structures

consts

Constants like memory locations

context

Context management

devices

Architecture-independent devices

elf

ELF file parsing ELF executables

event

Event handling

externs

External functions

memory

Memory management

panic

Panic Intrinsics for panic handling

scheme

Schemes, filesystem handlers

sync

Synchronization primitives

syscall

Syscall handlers

time

Time

Macros

int_like
interrupt

Create an interrupt function that can safely run rust code

interrupt_error
interrupt_error_p
interrupt_stack
interrupt_stack_p
print

Print to console

println

Print with new line to console

Functions

cpu_count

Get the number of CPUs currently active

cpu_id

Get the current CPU's scheduling ID

kmain

This is the kernel entry point for the primary CPU. The arch crate is responsible for calling this

kmain_ap

This is the main kernel entry point for secondary CPUs

ksignal

Allow exception handlers to send signal to arch-independant kernel

userspace_init

Initialize userspace by running the initfs:bin/init process This function will also set the CWD to initfs:bin and open debug: as stdio