Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
voxmo.c File Reference
#include "hal/cpu/paging.h"
#include "libk/debug/debug.h"
#include "libk/executable/elf.h"
#include "libk/serial.h"
#include "memory/kalloc.h"
#include "memory/memory_utils.h"
#include "memory/phys_base_allocator.h"
#include "memory/vm_manager.h"
#include "modules/kernel_reader.h"
#include "procc/workqueue.h"
#include "vfs/enum.h"
#include <modules/voxmo.h>
#include <str.h>
#include <string.h>
#include <type.h>
#include <vector.h>
#include <vfs/dentry.h>
#include <vfs/vnode.h>

Go to the source code of this file.

Functions

static voxmo_loaded_module_t_ptr vxGetVoxmoModule (kstring name)
 
static void proccess_elf (voxmo_loaded_module_t_ptr module)
 
void vxVoxmoInstall (const char *path)
 
void vxSetDefaultVoxmoPath (const char *path)
 
static void vxVoxmoProbe (kstring name)
 
void vxVoxmoReload ()
 

Variables

static kstring default_voxmo_path
 
static voxmo_loaded_module_t_ptr voxmo_modules
 
static spinlock_t voxmo_list_lock = {0}
 

Function Documentation

◆ proccess_elf()

◆ vxGetVoxmoModule()

static voxmo_loaded_module_t_ptr vxGetVoxmoModule ( kstring name)
static

Definition at line 24 of file voxmo.c.

References LOG2_ERROR, name, NULL, spin_acquire(), spin_release(), stringcmp(), voxmo_list_lock, and voxmo_modules.

Referenced by proccess_elf(), and vxVoxmoProbe().

◆ vxSetDefaultVoxmoPath()

void vxSetDefaultVoxmoPath ( const char * path)

Definition at line 317 of file voxmo.c.

References default_voxmo_path, path, and str().

Referenced by __attribute__().

◆ vxVoxmoInstall()

◆ vxVoxmoProbe()

static void vxVoxmoProbe ( kstring name)
static

Definition at line 319 of file voxmo.c.

References LOG2_ERROR, LOG_INFO, name, proccess_elf(), vxGetVoxmoModule(), and vxVoxmoProbe().

Referenced by vxVoxmoProbe(), and vxVoxmoReload().

◆ vxVoxmoReload()

void vxVoxmoReload ( )

Definition at line 344 of file voxmo.c.

References LOG_INFO, spin_acquire(), spin_release(), voxmo_list_lock, voxmo_modules, and vxVoxmoProbe().

Referenced by __attribute__().

Variable Documentation

◆ default_voxmo_path

kstring default_voxmo_path
static

Definition at line 20 of file voxmo.c.

Referenced by vxSetDefaultVoxmoPath(), and vxVoxmoInstall().

◆ voxmo_list_lock

spinlock_t voxmo_list_lock = {0}
static

Definition at line 22 of file voxmo.c.

Referenced by vxGetVoxmoModule(), vxVoxmoInstall(), and vxVoxmoReload().

◆ voxmo_modules

voxmo_loaded_module_t_ptr voxmo_modules
static

Definition at line 21 of file voxmo.c.

Referenced by vxGetVoxmoModule(), vxVoxmoInstall(), and vxVoxmoReload().