1#ifndef KERNEL_ARCH_I686_PROCESS_H
2#define KERNEL_ARCH_I686_PROCESS_H
14#include <kernel/types.h>
59 ctx->
esp = (u32)stack;
64 return (
void *)ctx->
esp;
70 ctx->
frame.stub.ebp = (vaddr_t)ptr;
75 return (
void *)ctx->
frame.stub.ebp;
94 return (
void *)ctx->
esp0;
103static inline void *arch_thread_get_user_stack_top(
const thread_context_t *ctx)
111 return (
void *)ctx->
frame.state.eip;
struct interrupt_frame frame
Frame pushed during the last userland -> kernel context switch.
Definition: process.h:52
u32 esp0
Address of the top of the thread's kernel stack.
Definition: process.h:34
u32 esp_user
Address of the top of the user stack This is only valid for user threads.
Definition: process.h:40
u32 cr3
Physical address of the process's page directory.
Definition: process.h:24
u32 esp
The thread's current stack pointer.
Definition: process.h:49
Frame passed onto the interrupt handlers by our stub handler.
Definition: interrupts.h:121
Contains all the system-level information about a task.
Definition: process.h:22