process struct now uses address_space struct

This commit is contained in:
2023-11-09 23:00:12 -06:00
parent 1375596310
commit df90bd7313
7 changed files with 32 additions and 25 deletions

View File

@@ -3,13 +3,13 @@
#include "types/physaddr.h"
typedef struct addressspace_t
typedef struct address_space_t
{
physaddr_t page_table;
int refcount;
} addressspace_t;
} address_space_t;
addressspace_t *addressspace_construct();
address_space_t *address_space_construct();

View File

@@ -5,6 +5,7 @@
#include "queue.h"
#include "mmgr.h"
#include "syscalls.h"
#include "addressspace.h"
#include "types/syscallid.h"
#include "types/status.h"
#include "types/pid.h"
@@ -65,7 +66,7 @@ struct process_context_t *kernel_current_context();
error_t kernel_store_active_context(struct process_context_t *context);
pid_t kernel_spawn_process(void *program_entry, int priority, physaddr_t address_space);
pid_t kernel_spawn_process(void *program_entry, int priority, address_space_t *address_space);
struct process_context_t *kernel_advance_scheduler();

View File

@@ -5,6 +5,7 @@
#include "types/physaddr.h"
#include "types/status.h"
#include "queue.h"
#include "addressspace.h"
typedef enum process_state_t
{
@@ -17,7 +18,7 @@ typedef struct process_t
{
pid_t pid;
int priority;
physaddr_t page_table;
address_space_t *address_space;
struct avltree_t *shared_objects;
process_state_t state;
struct queue_t sending_queue;
@@ -26,8 +27,6 @@ typedef struct process_t
struct process_context_t *ctx;
} process_t;
process_t *process_construct(pid_t pid, void *entry, void *stack, int priority, physaddr_t address_space);
error_t process_call_func(process_t *process, void *func, void *ret, int argc, ...);
process_t *process_construct(pid_t pid, void *entry, void *stack, int priority, address_space_t *address_space);
#endif