separating: there will be libk and libc

This commit is contained in:
2025-01-07 15:23:14 +01:00
parent b3687d20ee
commit a8582ba343
32 changed files with 29 additions and 31 deletions

45
kernel/system.h Normal file
View File

@@ -0,0 +1,45 @@
// System utilities and routines kernel module header
// Author: xamidev
// Licensed under the Unlicense. See the repo below.
// https://github.com/xamidev/blankos
#ifndef SYSTEM_H
#define SYSTEM_H
#include <stdint.h>
typedef int size_t;
#define NULL ((void*)0)
void *memset(void *dest, char val, size_t count);
void *memmove(void* dest, const void* src, size_t n);
void *memcpy(void* dest, const void* src, uint32_t n);
struct regs
{
unsigned int gs, fs, es, ds;
unsigned int edi, esi, ebp, esp, ebx, edx, ecx, eax;
unsigned int int_no, err_code;
unsigned int eip, cs, eflags, useresp, ss;
};
void panic();
void isr_install();
void irq_install();
void irq_install_handler(int irq, void (*handler)(struct regs *r));
void irq_uninstall_handler(int irq);
void timer_install();
void delay(int ticks);
void keyboard_install();
char keyboard_getchar();
void shell_install();
int uptime();
extern volatile unsigned long global_ticks;
extern unsigned int g_multiboot_info_address;
void syscall_handler();
#endif