#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <exec2obj.h>
#include <x86/proc_reg.h>
#include <kerndebug.h>
#include <syscall_int.h>
#include <syscall.h>
#include <interrupt.h>
#include <task.h>
#include <thread.h>
#include <timer.h>
#include <vm.h>
Functions | |
void | gettid_handler (InterruptVector vector, Registers *registers) |
The handler to get the id of the thread. | |
void | fork_handler (InterruptVector vector, Registers *registers) |
The handler fork a child. | |
void | exec_handler (InterruptVector vector, Registers *registers) |
The handler for task_exec. | |
void | exit_handler (InterruptVector vector, Registers *registers) |
The handler for task_exit. | |
void | wait_wake_handler (Thread *thread, void *data) |
The handler for wait. | |
void | wait_handler (InterruptVector vector, Registers *registers) |
The handler for putting thread in wait state. | |
void | thread_fork_handler (InterruptVector vector, Registers *registers) |
The handler for forking a new therad. | |
void | yield_handler (InterruptVector vector, Registers *registers) |
The handler for yield. | |
void | deschedule_handler (InterruptVector vector, Registers *registers) |
The handler for descheule. | |
void | make_runnable_handler (InterruptVector vector, Registers *registers) |
The handler for make_runnable. | |
void | get_ticks_handler (InterruptVector vector, Registers *registers) |
The handler for get_ticks. | |
void | sleep_handler (InterruptVector vector, Registers *registers) |
The handler for sleep. | |
void | new_pages_handler (InterruptVector vector, Registers *registers) |
The handler for new_pages. | |
void | remove_pages_handler (InterruptVector vector, Registers *registers) |
The handler for remove_pages. | |
void | halt_handler (InterruptVector vector, Registers *registers) |
The handler for halt. | |
void | ls_handler (InterruptVector vector, Registers *registers) |
The handler for ls. | |
int | syscall_initialize (void) |
Initialize the system syscalls. |
This file provides the implementation for installing the syscalls
|
The handler for descheule. deschedules the currently running thread
|
|
The handler for task_exec. execs a new task
|
|
The handler for task_exit. exits a thread
|
|
The handler fork a child. forks a new task
|
|
The handler for get_ticks. Retruns the number of ticks
|
|
The handler to get the id of the thread. get the thread id of the current task
|
|
The handler for halt. shuts down the OS
|
|
The handler for ls. returns the names of the executable files
|
|
The handler for make_runnable. changes the status of the thread to run state
|
|
The handler for new_pages. Allocates new memory to the calling task
|
|
The handler for remove_pages. Removes new memory to the calling task
|
|
The handler for sleep. Puts the thread to sleep
|
|
Initialize the system syscalls. Sets up the interrupt handlers for the system calls.
|
|
The handler for forking a new therad.
|
|
The handler for putting thread in wait state.
|
|
The handler for wait. wakes the thread after a specified task has completed
|
|
The handler for yield.
|