Crate hermit[][src]

Modules

environment

Determining and providing information about the environment (unikernel vs. multi-kernel, hypervisor, etc.) as well as central parsing of the command-line parameters.

fs
irq
kernel
mm
percore
processor
scheduler

Architecture dependent interface to initialize a task

x86_64

Macros

print

Print formatted text to our console.

println

Print formatted text to our console, followed by a newline.

Structs

SpinlockContainer
SpinlockIrqSaveContainer
itimerval
timespec
timeval

Constants

CLOCK_MONOTONIC
CLOCK_PROCESS_CPUTIME_ID
CLOCK_REALTIME
CLOCK_THREAD_CPUTIME_ID
DEFAULT_STACK_SIZE
HW_DESTRUCTIVE_INTERFERENCE_SIZE

See https://github.com/facebook/folly/blob/1b5288e6eea6df074758f877c849b6e73bbb9fbb/folly/lang/Align.h#L107 for details

KERNEL_STACK_SIZE
TIMER_ABSTIME
USER_STACK_SIZE
VIRTIO_MAX_QUEUE_SIZE

Functions

__sys_shutdown
__sys_usleep
get_application_parameters
get_boot_time
get_processor_count
message_output_init

Earliest initialization function called by the Boot Processor.

output_message_buf
output_message_byte
random_init
sanity_check

Sanity check for config parameters

set_current_kernel_stack
set_oneshot_timer
switch_to_fpu_owner
switch_to_task
sys_abort
sys_add_queue
sys_block_current_task

Set the current task state to blocked

sys_clock_getres
sys_clock_gettime
sys_clock_nanosleep
sys_clock_settime
sys_close
sys_destroy_queue
sys_exit
sys_get_mac_address
sys_get_mtu
sys_get_priority

Determine the priority of the current thread

sys_get_processor_count

Returns the number of processors currently online.

sys_get_processor_frequency

Returns the processor frequency in MHz.

sys_get_tx_buffer
sys_getpagesize
sys_getpid
sys_getprio
sys_gettimeofday
sys_init_queue
sys_join
sys_lseek
sys_msleep
sys_nanosleep
sys_netwait
sys_netwait_and_wakeup
sys_notify
sys_open
sys_rand

The function computes a sequence of pseudo-random integers in the range of 0 to RAND_MAX

sys_read
sys_receive_rx_buffer
sys_recmutex_destroy
sys_recmutex_init
sys_recmutex_lock
sys_recmutex_unlock
sys_rx_buffer_consumed
sys_secure_rand32

Create a cryptographicly secure 32bit random number with the support of the underlying hardware. If the required hardware isn’t available, the function returns None.

sys_secure_rand64

Create a cryptographicly secure 64bit random number with the support of the underlying hardware. If the required hardware isn’t available, the function returns None.

sys_sem_cancelablewait
sys_sem_destroy
sys_sem_init
sys_sem_post
sys_sem_timedwait
sys_sem_trywait
sys_send_tx_buffer
sys_setitimer
sys_setprio
sys_shutdown
sys_spawn
sys_spawn2
sys_spinlock_destroy
sys_spinlock_init
sys_spinlock_irqsave_destroy
sys_spinlock_irqsave_init
sys_spinlock_irqsave_lock
sys_spinlock_irqsave_unlock
sys_spinlock_lock
sys_spinlock_unlock
sys_srand

The function sets its argument as the seed for a new sequence of pseudo-random numbers to be returned by rand()

sys_stat
sys_thread_exit
sys_unlink
sys_usleep
sys_wait
sys_wakeup_task

Wake up the task with the identifier id

sys_write
sys_yield
wakeup_core

Send an inter-processor interrupt to wake up a CPU Core that is in a HALT state.

Type Definitions

Tid