GitOS
Operating system exercise
Loading...
Searching...
No Matches
syscall.hpp
Go to the documentation of this file.
1#pragma once
2
3extern "C" {
4#include "idt/idt.h"
5}
6
7#define MAX_SYSCALLS 1024
8
9typedef void*(*SYSCALL)(struct interrupt_frame* frame);
10extern "C" {
11extern void syscall_wrapper();
12void* syscall_handler(int syscall_id, struct interrupt_frame* frame);
13}
14void syscall_init();
15
16
Definition idt.h:22
syscalls
Definition syscall.hpp:18
@ SYSCALL_FOPEN
Definition syscall.hpp:28
@ SYSCALL_PUTSTRING
Definition syscall.hpp:21
@ SYSCALL_GETCHAR
Definition syscall.hpp:19
@ SYSCALL_FREE
Definition syscall.hpp:24
@ SYSCALL_GET_PROCESS_ARGUMENTS
Definition syscall.hpp:25
@ SYSCALL_EXECPROCESS
Definition syscall.hpp:22
@ SYSCALL_EXIT
Definition syscall.hpp:26
@ SYSCALL_OPENIPC
Definition syscall.hpp:34
@ SYSCALL_PUTCHAR
Definition syscall.hpp:20
@ SYSCALL_FSTAT
Definition syscall.hpp:30
@ SYSCALL_FSEEK
Definition syscall.hpp:31
@ SYSCALL_MALLOC
Definition syscall.hpp:23
@ SYSCALL_GET_FRAMEBUFFER_INFO
Definition syscall.hpp:27
@ SYSCALL_GETPID
Definition syscall.hpp:35
@ SYSCALL_FREAD
Definition syscall.hpp:29
@ SYSCALL_FWRITE
Definition syscall.hpp:33
@ SYSCALL_FCLOSE
Definition syscall.hpp:32
void syscall_wrapper()
void syscall_init()
Definition syscall.cpp:315
void * syscall_handler(int syscall_id, struct interrupt_frame *frame)
Definition syscall.cpp:58