diff options
Diffstat (limited to 'hal')
| -rw-r--r-- | hal/memory.h | 10 | ||||
| -rw-r--r-- | hal/process.h | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/hal/memory.h b/hal/memory.h index 47dbf0a..6e685d6 100644 --- a/hal/memory.h +++ b/hal/memory.h @@ -1,3 +1,4 @@ +#include "sys/syscall.h" #ifndef _JOVE_HAL_MEMORY_H #define _JOVE_HAL_MEMORY_H 1 @@ -23,16 +24,21 @@ int untyped_merge(jove_owned_obj_t *a, jove_owned_obj_t *b); int untyped_retype(jove_owned_obj_t *tgt, uint8_t newtype); int pagedir_map_untyped_frame( - jove_owned_obj_t *tgt, jove_owned_obj_t *untyped_obj, + jove_owned_obj_t *tgt, jove_perm_obj_t *untyped_obj, uintptr_t vptr, struct syscall_pagedir_flags flg); int pagedir_map_untyped_table( - jove_owned_obj_t *tgt, jove_owned_obj_t *untyped_obj, + jove_owned_obj_t *tgt, jove_perm_obj_t *untyped_obj, uintptr_t vptr); +int pagedir_map_shmem_frame( + jove_owned_obj_t *tgt, jove_perm_obj_t *shmem_obj, uint8_t page_offset, + uintptr_t vptr, struct syscall_pagedir_flags flg); int pagedir_unmap_untyped_frame( jove_owned_obj_t *tgt, jove_owned_obj_t *dst, uintptr_t vptr); int pagedir_unmap_untyped_table( jove_owned_obj_t *tgt, jove_owned_obj_t *dst, uintptr_t vptr); +int pagedir_unmap_shmem_frame( + jove_owned_obj_t *tgt, uintptr_t vptr); #endif diff --git a/hal/process.h b/hal/process.h index 63c800f..da3e050 100644 --- a/hal/process.h +++ b/hal/process.h @@ -24,6 +24,6 @@ jove_owned_obj_t *process_current(void); pid_t pcb_pid(pcb_t *pcb); /*Returns the root kernel object directory of this PCB. */ -jove_owned_obj_t *pcb_rootdir(pcb_t *pcb); +jove_obj_t *pcb_rootdir(pcb_t *pcb); #endif |
