Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
workqueue.c File Reference
#include "procc/workqueue.h"
#include "hal/acpi/acpi.h"
#include "hal/cpu/paging.h"
#include "init/init.h"
#include "libk/serial.h"
#include "procc/thread.h"
#include <hal/cpu/core.h>
#include <spinlock.h>
#include <type.h>
#include <vector.h>

Go to the source code of this file.

Macros

#define SLOT_EMPTY   0x00
 
#define SLOT_BUSY   0xFF
 

Functions

static void workqueue_process ()
 
workqueue_tvxAddWorkqueueTask (void(*task)(void *), void *arg, struct vector_workqueue_ptr_t *dependency)
 
 INIT (Workqueue)
 

Variables

static spinlock_t lock
 

Macro Definition Documentation

◆ SLOT_BUSY

#define SLOT_BUSY   0xFF

Definition at line 15 of file workqueue.c.

Referenced by vxAddWorkqueueTask().

◆ SLOT_EMPTY

#define SLOT_EMPTY   0x00

Definition at line 14 of file workqueue.c.

Function Documentation

◆ INIT()

◆ vxAddWorkqueueTask()

workqueue_t * vxAddWorkqueueTask ( void(* task )(void *),
void * arg,
struct vector_workqueue_ptr_t * dependency )

◆ workqueue_process()

Variable Documentation

◆ lock

spinlock_t lock
static

Definition at line 12 of file workqueue.c.