From 06e6e427c76bdb88a7f72dd04411d95a4bda3270 Mon Sep 17 00:00:00 2001 From: Miguel Date: Sun, 16 Sep 2018 23:46:30 +0200 Subject: starting to create sysfs --- kernel/exceptions.c | 1 - kernel/kernel.c | 2 ++ kernel/kernel.h | 6 ++++-- kernel/kmalloc.c | 16 ++++++++++++++++ kernel/kmalloc.h | 7 +++++-- kernel/mem.c | 7 +++++++ kernel/mem.h | 1 + kernel/syscalls.c | 7 +++---- kernel/vmem.c | 1 - 9 files changed, 38 insertions(+), 10 deletions(-) (limited to 'kernel') diff --git a/kernel/exceptions.c b/kernel/exceptions.c index a092055..4ad87e8 100644 --- a/kernel/exceptions.c +++ b/kernel/exceptions.c @@ -126,7 +126,6 @@ uint32_t exception_handle(uint32_t esp, uint32_t irq) klog("killing task in question!"); task_syscall(SYSCALL_EXIT,task_get_current_pid(),0,0); - scheduler_wake_all(); return scheduler_run(esp,0); } diff --git a/kernel/kernel.c b/kernel/kernel.c index ca82a5d..0239489 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -51,6 +51,7 @@ void kernel_main(uint32_t eax,uint32_t ebx) // -- UNIT TESTING -- // testing_kmalloc(); + testing_mount(); // -- DISABLE LEGACY PIC -- // klog("Remapping & Disabling Programmable Interrupt Controller (PIC) ..."); @@ -97,6 +98,7 @@ void kernel_main(uint32_t eax,uint32_t ebx) // -- EXT2 RAM IMAGE -- // klog("Check ext2 ram image ... "); ext2_dump_info(VMEM_EXT2_RAMIMAGE); + ext2_mount("/"); // -- APIC -- // klog("Advanced Programmable Interrupt Controller (APIC) config ..."); diff --git a/kernel/kernel.h b/kernel/kernel.h index 83d89b8..e3d7590 100644 --- a/kernel/kernel.h +++ b/kernel/kernel.h @@ -22,12 +22,14 @@ REFERENCES #ifndef FOOLOS_CONFIG_H #define FOOLOS_CONFIG_H -#define BIN_INIT "/bin/init" - //#define FOOLOS_UNIT_TESTING // Run Unit Tests //#define FOOLOS_LOG_OFF // Turn off logging //#define FOOLOS_COLORLESS // Turn off colors in log +#define MAX_MOUNTS 10 + +#define BIN_INIT "/bin/init" + #define FIFO_MAX_RINGBUFFERS 20 #define MAX_FIFOS 20 #define MAX_FD 20 diff --git a/kernel/kmalloc.c b/kernel/kmalloc.c index 356aab0..6a7520a 100644 --- a/kernel/kmalloc.c +++ b/kernel/kmalloc.c @@ -116,3 +116,19 @@ void kbfree(uint32_t pos) mark_free(blk,map[blk]); spinlock_release(SPINLOCK_ALLOC); } + +void kmalloc_sysfs(void (*f)(char *fmt, ...)) +{ + uint32_t free=0; + uint32_t used=0; + for(int i=0;imod_start; mod_end=mod->mod_end; } - -- cgit v1.2.3