diff options
author | Jon Santmyer <jon@jonsantmyer.com> | 2025-09-10 13:28:28 -0400 |
---|---|---|
committer | Jon Santmyer <jon@jonsantmyer.com> | 2025-09-10 13:28:28 -0400 |
commit | 7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5 (patch) | |
tree | aef9904e2495ce840319f2815cd859c47294c88a /include/object.h | |
parent | 032a7bc4d79efea100a00cf3464bea3249a07ff6 (diff) | |
download | jove-kernel-7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5.tar.gz jove-kernel-7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5.tar.bz2 jove-kernel-7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5.zip |
refactor paging code. regression on loading init program
Diffstat (limited to 'include/object.h')
-rw-r--r-- | include/object.h | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/include/object.h b/include/object.h index c8621ee..4cf5159 100644 --- a/include/object.h +++ b/include/object.h @@ -2,17 +2,7 @@ #define _JOVE_OBJECT_H #include <stdint.h> - -enum { - INIT_OBJECT_ROOTDIR = 0, - INIT_OBJECT_PAGEMAP, - INIT_OBJECT_PROCESSOR_DIR, - INIT_OBJECT_UNTYPED_DIR, - INIT_OBJECT_INITRD_DIR, - INIT_OBJECT_TCB, - INIT_OBJECT_MESSAGE, - INIT_OBJECT_LOG -}; +#include <stddef.h> enum { @@ -64,13 +54,18 @@ typedef struct jove_ObjectDirectory objdir_entry_t *objdir_seek(objdir_t *dir, uint8_t *path, unsigned long pathw); unsigned long objdir_pathw(objdir_t *dir, uint8_t *path); +void *ko_entry_data(objdir_entry_t *entry); +uintptr_t ko_data_toentry(uintptr_t vptr); + int ko_message_unmap(objdir_entry_t *message, uintptr_t *saveptr); int ko_message_remap(objdir_entry_t *message); void ko_message_move(objdir_entry_t *message, uintptr_t vptr); +int ko_untyped_split(objdir_entry_t *untyped, objdir_entry_t *dest, size_t bytes); + int ko_untyped_retype_objdir(objdir_entry_t *target); int ko_untyped_retype_memory_mapping(objdir_entry_t *target); int ko_untyped_retype_tcb(objdir_entry_t *target); -int ko_untyped_retype_message(objdir_entry_t *target); +int ko_untyped_retype_message(objdir_entry_t *target, uintptr_t vptr); #endif |