Voxia OS
v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
task.c
Go to the documentation of this file.
1
// #include "task.h"
2
// #include <libk/serial.h>
3
// #include <type.h>
4
// #include <memory/memory_utils.h>
5
// #include <memory/phys_base_allocator.h>
6
7
// static struct task* g__task = 0;
8
// static pid_t g__curr_pid = 1;
9
10
// void task_initialize() {
11
// }
12
13
// struct task* task_get_current() {
14
// return g__task;
15
// }
16
17
// void task_add(char* name, uintptr_t entry, task_state_t state,
18
// task_priority_t priority, page_t page_root, uintptr_t stack,
19
// struct program_paramater param) {
20
// struct task* task = (struct task*) vxPhysBaseAlloc(1);
21
// serial_trace("task address : 0x%x\n", task);
22
// task->name = name;
23
// task->state = state;
24
// task->priority = priority;
25
// task->page_root = page_root;
26
// task->stack = stack;
27
// task->entry = entry;
28
// task->pid = g__curr_pid++;
29
// task->next = NULL;
30
// task->param = param;
31
// serial_trace("task pid %d\n", task->pid);
32
33
// struct task* current = g__task;
34
// if (current == 0) {
35
// g__task = task;
36
// // serial_trace("task added %s\n", task->name);
37
// return;
38
// }
39
40
// // serial_trace("head task address : 0x%x\n", current);
41
// while (current->next != 0) {
42
// current = current->next;
43
// }
44
// current->next = task;
45
// // serial_trace("task added %s\n", task->name);
46
// }
47
48
// struct task* task_get(pid_t pid) {
49
// struct task* current = g__task;
50
// while (current != 0 && current->pid != pid) {
51
// current = current->next;
52
// }
53
// return current;
54
// }
55
56
// void task_free(pid_t pid) {
57
// struct task* current = g__task;
58
// struct task* prev = NULL;
59
// while (current != 0 && current->pid != pid) {
60
// prev = current;
61
// current = current->next;
62
// }
63
// prev->next = current->next;
64
65
// // TODO: freeing memory has been allocated for loading
66
// vxPhysBaseFree(current, 1);
67
// }
kernel
procc
task.c
Generated on Sat May 30 2026 11:09:57 for Voxia OS by
1.13.2