#include <setjmp.h>
#include "l4_types.h"
#include "activation.h"
#include "config.h"
#include "deadline_timeout.h"
#include "mem_layout.h"
#include "preemption.h"
#include "receiver.h"
#include "sender.h"
#include "space.h"
#include "thread_lock.h"
#include "trap_state.h"
#include "fpu_alloc.h"
#include "timeout.h"
#include "fpu_state.h"
#include "gdt.h"
#include "entry_frame.h"
#include "task.h"
#include "mod32.h"
#include "map_util.h"
#include "lock_guard.h"
#include "kdb_ke.h"
#include "logdefs.h"
#include "regdefs.h"
#include "std_macros.h"
#include "vmem_alloc.h"
#include "warn.h"
#include "jdb_trace.h"
#include "cpu_lock.h"
#include "kmem.h"
#include <cstdio>
#include "processor.h"
Go to the source code of this file.
Functions | |
Thread * | current_thread () |
Currently executing thread. | |
FIASCO_FASTCALL int | thread_page_fault (Address pfa, Mword error_code, Address ip, Mword flags, Return_frame *regs) |
The low-level page fault handler called from entry.S. | |
FIASCO_FASTCALL int | thread_handle_trap (Trap_state *ts) |
The catch-all trap entry point. | |
FIASCO_FASTCALL void | thread_timer_interrupt (Address ip) |
void | thread_timer_interrupt_stop (void) |
Extra version of timer interrupt handler which is used when the jdb is active to prevent busy waiting. | |
void | thread_timer_interrupt_slow (void) |
Slow version of timer interrupt. | |
void | sys_thread_switch_wrapper () |
void | sys_fpage_unmap_wrapper () |
void | sys_id_nearest_wrapper () |
void | sys_thread_ex_regs_wrapper () |
void | sys_task_new_wrapper () |
void | sys_thread_schedule_wrapper () |
void | sys_ipc_wrapper () |
void | ipc_short_cut_wrapper () |
void | sys_ipc_log_wrapper (void) |
void | sys_ipc_trace_wrapper (void) |
void | sys_fpage_unmap_log_wrapper (void) |
Variables | |
void(* | syscall_table [])() |
|
Currently executing thread.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The catch-all trap entry point. Called by assembly code when a CPU trap (that's not specially handled, such as system calls) occurs. Just forwards the call to Thread::handle_slow_trap().
|
|
The low-level page fault handler called from entry.S. We're invoked with interrupts turned off. Apart from turning on interrupts in almost all cases (except for kernel page faults in TCB area), just forwards the call to Thread::handle_page_fault().
|
|
|
|
Slow version of timer interrupt. Activated on every clock tick. Checks if something related to debugging is to do. After returning from this function, the real timer interrupt handler is called. |
|
Extra version of timer interrupt handler which is used when the jdb is active to prevent busy waiting.
|
|
|