summaryrefslogtreecommitdiff
path: root/lume-legacy/include/kernel/proc.h
diff options
context:
space:
mode:
authorRichard Qin <richard.qin.x@gmail.com>2026-07-10 11:31:46 +0800
committerRichard Qin <richard.qin.x@gmail.com>2026-07-10 11:31:46 +0800
commite90b72ec3082588b296956730bd2930cf8d5d671 (patch)
tree36ff6916af9b4176ea5a9662219d11e721f0b691 /lume-legacy/include/kernel/proc.h
parent1767d390fbf3d0c65389de46caf0b6d43ef3b6ad (diff)
downloadlume-e90b72ec3082588b296956730bd2930cf8d5d671.tar.gz
lume-e90b72ec3082588b296956730bd2930cf8d5d671.tar.xz
refactor: promote new architecture to repository root
Archive the deprecated implementation under lume-legacy, make the new kernel the default root-level build, and update repository entry points without changing kernel behavior.
Diffstat (limited to 'lume-legacy/include/kernel/proc.h')
-rw-r--r--lume-legacy/include/kernel/proc.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/lume-legacy/include/kernel/proc.h b/lume-legacy/include/kernel/proc.h
new file mode 100644
index 0000000..e11dc47
--- /dev/null
+++ b/lume-legacy/include/kernel/proc.h
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright (C) 2026 Richard QIn
+ */
+
+#pragma once
+#include "common/types.h"
+#include "kernel/proc_def.h"
+#include "kernel/spinlock.h"
+
+namespace ProcManager
+{
+ void init();
+ void scheduler();
+ void yield();
+
+ void create_kernel_thread(void (*func)(), const char *name);
+
+ void user_init();
+ void exit(int status);
+ int wait(uint64 addr);
+
+ void sleep(void *chan, Spinlock *lk);
+ void wakeup(void *chan);
+
+ int growproc(int n);
+
+ int kill(int pid);
+}
+
+void forkret();
+struct Proc *myproc();
+void usertrapret();
+int fork(); \ No newline at end of file