forked from PoliEcho-holding-org/kern
Updated syscall.h
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
|
||||||
#define MAX_SYSCALLS 9
|
#define SYSCALL_COUNT 9
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
SYS_EXIT,
|
SYS_EXIT,
|
||||||
|
|||||||
+2
-6
@@ -3,9 +3,7 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <syscall.h>
|
#include <syscall.h>
|
||||||
|
|
||||||
void* malloc(size_t size) {
|
void* malloc(size_t size) { return (void*)_malloc(size); }
|
||||||
return (void*)syscall(SYS_MALLOC, size, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void* calloc(size_t count, size_t size) {
|
void* calloc(size_t count, size_t size) {
|
||||||
size_t total = count * size;
|
size_t total = count * size;
|
||||||
@@ -35,7 +33,5 @@ void* realloc(void* ptr, size_t size) {
|
|||||||
return newptr;
|
return newptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void free(void* ptr) {
|
void free(void* ptr) { _free(ptr); }
|
||||||
syscall(SYS_FREE, (int)ptr, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|||||||
+1
-3
@@ -2,9 +2,7 @@
|
|||||||
#include <syscall.h>
|
#include <syscall.h>
|
||||||
|
|
||||||
// Exits without cleaning up
|
// Exits without cleaning up
|
||||||
void _Exit(int status) {
|
void _Exit(int status) { _exit(status); }
|
||||||
syscall(SYS_EXIT, status, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void exit(int status) {
|
void exit(int status) {
|
||||||
// TODO: Close open files
|
// TODO: Close open files
|
||||||
|
|||||||
+2
-6
@@ -3,14 +3,10 @@
|
|||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
// Seconds sleep
|
// Seconds sleep
|
||||||
void sleep(size_t s) {
|
void sleep(size_t s) { _sleep(s*1000); }
|
||||||
syscall(SYS_SLEEP, s*1000, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Millisecond sleep
|
// Millisecond sleep
|
||||||
void msleep(size_t ms) {
|
void msleep(size_t ms) { _sleep(s); }
|
||||||
syscall(SYS_SLEEP, ms, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Microsecond sleep
|
// Microsecond sleep
|
||||||
void usleep(size_t us) { /* TODO */ }
|
void usleep(size_t us) { /* TODO */ }
|
||||||
|
|||||||
Reference in New Issue
Block a user