summaryrefslogtreecommitdiff
path: root/src/sys/arch/amd64/os/os_proc.c
AgeCommit message (Collapse)Author
13 hourskern/amd64: proc: Don't dequeue procs in idle loopIan Moffett
There is no need to dequeue any processes in the idle loop as this happens once per timer interrupt Signed-off-by: Ian Moffett <ian@osmora.org>
13 hourskern/amd64: proc: md_proc_yield -> md_proc_idleIan Moffett
Improve naming to be less confusing Signed-off-by: Ian Moffett <ian@osmora.org>
15 hourskern/amd64: Introduce kernel threadsIan Moffett
Introduces kernel threads. by using the proc_ktd() function, one can spawn a CPL 0 running thread to the desired code. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: proc: Implement process sleeping and wakingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Try to continue if no proc on switchIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Set RBP when kicking processesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: proc: Remove redundant flag setIan Moffett
The PROC_EXITING flag is already set within the MI layer of the process management core Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern/amd64: proc: Mark process as exiting on killIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: proc: Add initial penv block supportIan Moffett
This commit introduces the initial support for the process environment block and implements argv and argc. Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern/amd64: Attempt to dequeue on a cores first goIan Moffett
When a CPU core first starts up, it has no proceses to assign to itself. This commit ensures that the processor will right away start trying to find tasks to grab from its runqueue. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-23kern/amd64: proc: Deallocate mapped frames on exitIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern/amd64: proc: Add proc_self()Ian Moffett
Introduce a new proc_self() function to get the current running process on the current CPU core. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern/amd64: proc: Add proc_kill() routineIan Moffett
Add a new function to kill processes and clean them up. They will then be marked as EXITING and it is up to the parent to do the rest. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern/amd64: proc: Add initial context switch logicIan Moffett
This commit introduces new functions that will be useful for having multiple processes run on the system. - Add md_proc_yield() - Add md_proc_kick() - Add md_sched_switch() Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern/amd64: proc: Do not kick proc in md_set_ip()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: proc: Add initialization code for ring 3Ian Moffett
This commit introduces several new functions for switching the processor into a ring three context along with its task's respective process descriptors to be implemented correctly. - Add md_set_ip() to update proc instruction pointer - Add stack definitions - Add stack mapping logic ... Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: proc: Add initial proc init + PCB codeIan Moffett
This commit introduces the initial logic for putting process descriptors in an initialized state. This commit also introduces the process control block definition. Signed-off-by: Ian Moffett <ian@osmora.org>