44 lines
1.3 KiB
Text
44 lines
1.3 KiB
Text
kern_return_t :: s32;
|
|
|
|
natural_t :: u32;
|
|
boolean_t :: s32;
|
|
|
|
vm_prot_t :: s32;
|
|
vm_map_t :: mach_port_t;
|
|
|
|
mach_port_t :: natural_t;
|
|
mach_vm_address_t :: u64;
|
|
mach_vm_size_t :: u64;
|
|
|
|
host_t :: *void;
|
|
|
|
VM_FLAGS_FIXED :: 0x0000;
|
|
VM_FLAGS_ANYWHERE :: 0x0001;
|
|
VM_FLAGS_PURGABLE :: 0x0002;
|
|
VM_FLAGS_4GB_CHUNK :: 0x0004;
|
|
VM_FLAGS_RANDOM_ADDR :: 0x0008;
|
|
VM_FLAGS_NO_CACHE :: 0x0010;
|
|
VM_FLAGS_RESILIENT_CODESIGN :: 0x0020;
|
|
VM_FLAGS_RESILIENT_MEDIA :: 0x0040;
|
|
VM_FLAGS_OVERWRITE :: 0x4000;
|
|
|
|
VM_PROT_READ :: 0x1;
|
|
VM_PROT_WRITE :: 0x2;
|
|
VM_PROT_EXECUTE :: 0x4;
|
|
|
|
|
|
host_self :: () -> host_t #foreign Kernel;
|
|
|
|
host_page_size :: (host: host_t, page_size: *mach_vm_size_t) -> kern_return_t #foreign Kernel;
|
|
|
|
mach_task_self :: () -> mach_port_t #foreign Kernel;
|
|
|
|
mach_vm_allocate :: (target: vm_map_t, address: *mach_vm_address_t, size:mach_vm_size_t , flags: s32) -> kern_return_t #foreign Kernel;
|
|
|
|
mach_vm_deallocate :: (target: vm_map_t, address: mach_vm_address_t, size:mach_vm_size_t) -> kern_return_t #foreign Kernel;
|
|
|
|
mach_vm_protect :: (target_task: vm_map_t, address: mach_vm_address_t, size: mach_vm_size_t, set_maximum: boolean_t, new_protection: vm_prot_t) -> kern_return_t #foreign Kernel;
|
|
|
|
#scope_module
|
|
|
|
Kernel :: #library,system "libc";
|