From 80c390e851e9925384cc77f11c57c3eae02b3dfd Mon Sep 17 00:00:00 2001 From: Beau McCartney Date: Sat, 5 Oct 2024 11:20:25 -0600 Subject: [PATCH] add mach procedures and vm_page_size - vm_allocate() - vm_deallocate() - vm_map() - mach_make_memory_entry() --- core/sys/darwin/mach_darwin.odin | 38 ++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/core/sys/darwin/mach_darwin.odin b/core/sys/darwin/mach_darwin.odin index 902ac8b24..c91c85153 100644 --- a/core/sys/darwin/mach_darwin.odin +++ b/core/sys/darwin/mach_darwin.odin @@ -26,6 +26,44 @@ foreign mach { semaphore_signal_thread :: proc(semaphore: semaphore_t, thread: thread_act_t) -> kern_return_t --- semaphore_wait :: proc(semaphore: semaphore_t) -> kern_return_t --- + + vm_allocate :: proc ( + target_task : vm_map_t, + address : ^vm_address_t, + size : vm_size_t, + flags : vm_flags_t, + ) -> kern_return_t --- + + vm_deallocate :: proc( + target_task: vm_map_t, + address : vm_address_t, + size : vm_size_t + ) -> kern_return_t--- + + vm_map :: proc ( + target_task : vm_map_t, + address : ^vm_address_t, + size : vm_size_t, + mask : vm_address_t, + flags : vm_flags_t, + object : mem_entry_name_port_t, + offset : vm_offset_t, + copy : boolean_t, + cur_protection : vm_prot_t, + max_protection : vm_prot_t, + inheritance : vm_inherit_t + ) -> kern_return_t --- + + mach_make_memory_entry :: proc ( + target_task : vm_map_t, + size : ^vm_size_t, + offset : vm_offset_t, + permission : vm_prot_t, + object_handle : ^mem_entry_name_port_t, + parent_entry : mem_entry_name_port_t, + ) -> kern_return_t --- + + vm_page_size : vm_size_t } // NOTE(beau): types for stuff in the mach APIS, recreated from the typedefs as