Line 3: |
Line 3: |
| = System calls = | | = System calls = |
| {| class=wikitable | | {| class=wikitable |
− | ! Id || Name | + | ! Id || Return Type || Name || Arguments |
| |- | | |- |
− | | 0x1 || [[#SetHeapSize]] | + | | 0x01 || Result || [[#SetHeapSize|SetHeapSize]] || uintptr_t *out_address, size_t size |
| |- | | |- |
− | | 0x2 || [[#SetMemoryPermission]] | + | | 0x02 || Result || [[#SetMemoryPermission|SetMemoryPermission]] || uintptr_t address, size_t size, MemoryPermission perm |
| |- | | |- |
− | | 0x3 || [[#SetMemoryAttribute]] | + | | 0x03 || Result || [[#SetMemoryAttribute|SetMemoryAttribute]] || uintptr_t address, size_t size, uint32_t mask, uint32_t attr |
| |- | | |- |
− | | 0x4 || [[#MapMemory]] | + | | 0x04 || Result || [[#MapMemory|MapMemory]] || uintptr_t dst_address, uintptr_t src_address, size_t size |
| |- | | |- |
− | | 0x5 || [[#UnmapMemory]] | + | | 0x05 || Result || [[#UnmapMemory|UnmapMemory]] || uintptr_t dst_address, uintptr_t src_address, size_t size |
| |- | | |- |
− | | 0x6 || [[#QueryMemory]] | + | | 0x06 || Result || [[#QueryMemory|QueryMemory]] || arch::MemoryInfo *out_memory_info, PageInfo *out_page_info, uintptr_t address |
| |- | | |- |
− | | 0x7 || [[#ExitProcess]] | + | | 0x07 || void || [[#ExitProcess|ExitProcess]] || |
| |- | | |- |
− | | 0x8 || [[#CreateThread]] | + | | 0x08 || Result || [[#CreateThread|CreateThread]] || Handle *out_handle, ThreadFunc func, uintptr_t arg, uintptr_t stack_bottom, int32_t priority, int32_t core_id |
| |- | | |- |
− | | 0x9 || [[#StartThread]] | + | | 0x09 || Result || [[#StartThread|StartThread]] || Handle thread_handle |
| |- | | |- |
− | | 0xA || [[#ExitThread]] | + | | 0x0A || void || [[#ExitThread|ExitThread]] || |
| |- | | |- |
− | | 0xB || [[#SleepThread]] | + | | 0x0B || void || [[#SleepThread|SleepThread]] || int64_t ns |
| |- | | |- |
− | | 0xC || [[#GetThreadPriority]] | + | | 0x0C || Result || [[#GetThreadPriority|GetThreadPriority]] || int32_t *out_priority, Handle thread_handle |
| |- | | |- |
− | | 0xD || [[#SetThreadPriority]] | + | | 0x0D || Result || [[#SetThreadPriority|SetThreadPriority]] || Handle thread_handle, int32_t priority |
| |- | | |- |
− | | 0xE || [[#GetThreadCoreMask]] | + | | 0x0E || Result || [[#GetThreadCoreMask|GetThreadCoreMask]] || int32_t *out_core_id, uint64_t *out_affinity_mask, Handle thread_handle |
| |- | | |- |
− | | 0xF || [[#SetThreadCoreMask]] | + | | 0x0F || Result || [[#SetThreadCoreMask|SetThreadCoreMask]] || Handle thread_handle, int32_t core_id, uint64_t affinity_mask |
| |- | | |- |
− | | 0x10 || [[#GetCurrentProcessorNumber]] | + | | 0x10 || int32_t || [[#GetCurrentProcessorNumber|GetCurrentProcessorNumber]] || |
| |- | | |- |
− | | 0x11 || [[#SignalEvent]] | + | | 0x11 || Result || [[#SignalEvent|SignalEvent]] || Handle event_handle |
| |- | | |- |
− | | 0x12 || [[#ClearEvent]] | + | | 0x12 || Result || [[#ClearEvent|ClearEvent]] || Handle event_handle |
| |- | | |- |
− | | 0x13 || [[#MapSharedMemory]] | + | | 0x13 || Result || [[#MapSharedMemory|MapSharedMemory]] || Handle shmem_handle, uintptr_t address, size_t size, MemoryPermission map_perm |
| |- | | |- |
− | | 0x14 || [[#UnmapSharedMemory]] | + | | 0x14 || Result || [[#UnmapSharedMemory|UnmapSharedMemory]] || Handle shmem_handle, uintptr_t address, size_t size |
| |- | | |- |
− | | 0x15 || [[#CreateTransferMemory]] | + | | 0x15 || Result || [[#CreateTransferMemory|CreateTransferMemory]] || Handle *out_handle, uintptr_t address, size_t size, MemoryPermission map_perm |
| |- | | |- |
− | | 0x16 || [[#CloseHandle]] | + | | 0x16 || Result || [[#CloseHandle|CloseHandle]] || Handle handle |
| |- | | |- |
− | | 0x17 || [[#ResetSignal]] | + | | 0x17 || Result || [[#ResetSignal|ResetSignal]] || Handle handle |
| |- | | |- |
− | | 0x18 || [[#WaitSynchronization]] | + | | 0x18 || Result || [[#WaitSynchronization|WaitSynchronization]] || int32_t *out_index, const Handle *handles, int32_t numHandles, int64_t timeout_ns |
| |- | | |- |
− | | 0x19 || [[#CancelSynchronization]] | + | | 0x19 || Result || [[#CancelSynchronization|CancelSynchronization]] || Handle handle |
| |- | | |- |
− | | 0x1A || [[#ArbitrateLock]] | + | | 0x1A || Result || [[#ArbitrateLock|ArbitrateLock]] || Handle thread_handle, uintptr_t address, uint32_t tag |
| |- | | |- |
− | | 0x1B || [[#ArbitrateUnlock]] | + | | 0x1B || Result || [[#ArbitrateUnlock|ArbitrateUnlock]] || uintptr_t address |
| |- | | |- |
− | | 0x1C || [[#WaitProcessWideKeyAtomic]] | + | | 0x1C || Result || [[#WaitProcessWideKeyAtomic|WaitProcessWideKeyAtomic]] || uintptr_t address, uintptr_t cv_key, uint32_t tag, int64_t timeout_ns |
| |- | | |- |
− | | 0x1D || [[#SignalProcessWideKey]] | + | | 0x1D || void || [[#SignalProcessWideKey|SignalProcessWideKey]] || uintptr_t cv_key, int32_t count |
| |- | | |- |
− | | 0x1E || [[#GetSystemTick]] | + | | 0x1E || int64_t || [[#GetSystemTick|GetSystemTick]] || |
| |- | | |- |
− | | 0x1F || [[#ConnectToNamedPort]] | + | | 0x1F || Result || [[#ConnectToNamedPort|ConnectToNamedPort]] || Handle *out_handle, const char *name |
| |- | | |- |
− | | 0x20 || [[#SendSyncRequestLight]] | + | | 0x20 || Result || [[#SendSyncRequestLight|SendSyncRequestLight]] || Handle session_handle |
| |- | | |- |
− | | 0x21 || [[#SendSyncRequest]] | + | | 0x21 || Result || [[#SendSyncRequest|SendSyncRequest]] || Handle session_handle |
| |- | | |- |
− | | 0x22 || [[#SendSyncRequestWithUserBuffer]] | + | | 0x22 || Result || [[#SendSyncRequestWithUserBuffer|SendSyncRequestWithUserBuffer]] || uintptr_t message_buffer, size_t message_buffer_size, Handle session_handle |
| |- | | |- |
− | | 0x23 || [[#SendAsyncRequestWithUserBuffer]] | + | | 0x23 || Result || [[#SendAsyncRequestWithUserBuffer|SendAsyncRequestWithUserBuffer]] || Handle *out_event_handle, uintptr_t message_buffer, size_t message_buffer_size, Handle session_handle |
| |- | | |- |
− | | 0x24 || [[#GetProcessId]] | + | | 0x24 || Result || [[#GetProcessId|GetProcessId]] || uint64_t *out_process_id, Handle process_handle |
| |- | | |- |
− | | 0x25 || [[#GetThreadId]] | + | | 0x25 || Result || [[#GetThreadId|GetThreadId]] || uint64_t *out_thread_id, Handle thread_handle |
| |- | | |- |
− | | 0x26 || [[#Break]] | + | | 0x26 || void || [[#Break|Break]] || BreakReason break_reason, uintptr_t arg, size_t size |
| |- | | |- |
− | | 0x27 || [[#OutputDebugString]] | + | | 0x27 || Result || [[#OutputDebugString|OutputDebugString]] || const char *debug_str, size_t len |
| |- | | |- |
− | | 0x28 || [[#ReturnFromException]] | + | | 0x28 || void || [[#ReturnFromException|ReturnFromException]] || Result result |
| |- | | |- |
− | | 0x29 || [[#GetInfo]] | + | | 0x29 || Result || [[#GetInfo|GetInfo]] || uint64_t *out, InfoType info_type, Handle handle, uint64_t info_subtype |
| |- | | |- |
− | | 0x2A || [[#FlushEntireDataCache]] | + | | 0x2A || void || [[#FlushEntireDataCache|FlushEntireDataCache]] || |
| |- | | |- |
− | | 0x2B || [[#FlushDataCache]] | + | | 0x2B || Result || [[#FlushDataCache|FlushDataCache]] || uintptr_t address, size_t size |
| |- | | |- |
− | | 0x2C || [3.0.0+] [[#MapPhysicalMemory]]
| + | | [3.0.0+] 0x2C || Result || [[#MapPhysicalMemory|MapPhysicalMemory]] || uintptr_t address, size_t size |
| |- | | |- |
− | | 0x2D || [3.0.0+] [[#UnmapPhysicalMemory]]
| + | | [3.0.0+] 0x2D || Result || [[#UnmapPhysicalMemory|UnmapPhysicalMemory]] || uintptr_t address, size_t size |
| |- | | |- |
− | | 0x2E || [5.0.0+] [[#GetFutureThreadInfo]]
| + | | [5.0.0+] 0x2E || Result || [[#GetDebugFutureThreadInfo|GetDebugFutureThreadInfo]] || arch::LastThreadContext *out_context, uint64_t *thread_id, Handle debug_handle, int64_t ns |
| |- | | |- |
− | | 0x2F || [[#GetLastThreadInfo]] | + | | 0x2F || Result || [[#GetLastThreadInfo|GetLastThreadInfo]] || arch::LastThreadContext *out_context, uintptr_t *out_tls_address, uint32_t *out_flags |
| |- | | |- |
− | | 0x30 || [[#GetResourceLimitLimitValue]] | + | | 0x30 || Result || [[#GetResourceLimitLimitValue|GetResourceLimitLimitValue]] || int64_t *out_limit_value, Handle resource_limit_handle, LimitableResource which |
| |- | | |- |
− | | 0x31 || [[#GetResourceLimitCurrentValue]] | + | | 0x31 || Result || [[#GetResourceLimitCurrentValue|GetResourceLimitCurrentValue]] || int64_t *out_current_value, Handle resource_limit_handle, LimitableResource which |
| |- | | |- |
− | | 0x32 || [[#SetThreadActivity]] | + | | 0x32 || Result || [[#SetThreadActivity|SetThreadActivity]] || Handle thread_handle, ThreadActivity thread_activity |
| |- | | |- |
− | | 0x33 || [[#GetThreadContext3]] | + | | 0x33 || Result || [[#GetThreadContext3|GetThreadContext3]] || ThreadContext *out_context, Handle thread_handle |
| |- | | |- |
− | | 0x34 || [4.0.0+] [[#WaitForAddress]]
| + | | [4.0.0+] 0x34 || Result || [[#WaitForAddress|WaitForAddress]] || uintptr_t address, ArbitrationType arb_type, int32_t value, int64_t timeout_ns |
| |- | | |- |
− | | 0x35 || [4.0.0+] [[#SignalToAddress]]
| + | | [4.0.0+] 0x35 || Result || [[#SignalToAddress|SignalToAddress]] || uintptr_t address, SignalType signal_type, int32_t value, int32_t count |
| |- | | |- |
− | | 0x36 || [8.0.0+] [[#SynchronizePreemptionState]]
| + | | [8.0.0+] 0x36 || void || [[#SynchronizePreemptionState|SynchronizePreemptionState]] || |
| |- style="border-top: double" | | |- style="border-top: double" |
− | | 0x3C || [4.0.0+] [[#KernelDebug]] ([1.0.0-3.0.2] [[#DumpInfo]]) | + | | [1.0.0-3.0.2] 0x3C || void || [[#DumpInfo|DumpInfo]] || DumpInfoType dump_info_type, uint64_t arg |
| |- | | |- |
− | | 0x3D || [4.0.0+] [[#ChangeKernelTraceState]] | + | | [4.0.0+] 0x3C || void || [[#KernelDebug|KernelDebug]] || KernelDebugType kern_debug_type, uint64_t arg0, uint64_t arg1, uint64_t arg2 |
| + | |- |
| + | | [4.0.0+] 0x3D || void || [[#ChangeKernelTraceState|ChangeKernelTraceState]] || KernelTraceState kern_trace_state |
| |- style="border-top: double" | | |- style="border-top: double" |
− | | 0x40 || [[#CreateSession]] | + | | 0x40 || Result || [[#CreateSession|CreateSession]] || Handle *out_server_session_handle, Handle *out_client_session_handle, bool is_light, uintptr_t name |
| |- | | |- |
− | | 0x41 || [[#AcceptSession]] | + | | 0x41 || Result || [[#AcceptSession|AcceptSession]] || Handle *out_handle, Handle port |
| |- | | |- |
− | | 0x42 || [[#ReplyAndReceiveLight]] | + | | 0x42 || Result || [[#ReplyAndReceiveLight|ReplyAndReceiveLight]] || Handle handle |
| |- | | |- |
− | | 0x43 || [[#ReplyAndReceive]] | + | | 0x43 || Result || [[#ReplyAndReceive|ReplyAndReceive]] || int32_t *out_index, const Handle *handles, int32_t num_handles, Handle reply_target, int64_t timeout_ns |
| |- | | |- |
− | | 0x44 || [[#ReplyAndReceiveWithUserBuffer]] | + | | 0x44 || Result || [[#ReplyAndReceiveWithUserBuffer|ReplyAndReceiveWithUserBuffer]] || int32_t *out_index, uintptr_t message_buffer, size_t message_buffer_size, const Handle *handles, int32_t num_handles, Handle reply_target, int64_t timeout_ns |
| |- | | |- |
− | | 0x45 || [[#CreateEvent]] | + | | 0x45 || Result || [[#CreateEvent|CreateEvent]] || Handle *out_write_handle, Handle *out_read_handle |
| |- style="border-top: double" | | |- style="border-top: double" |
− | | 0x48 || [5.0.0+] [[#MapPhysicalMemoryUnsafe]]
| + | | [5.0.0+] 0x48 || Result || [[#MapPhysicalMemoryUnsafe|MapPhysicalMemoryUnsafe]] || uintptr_t address, size_t size |
| |- | | |- |
− | | 0x49 || [5.0.0+] [[#UnmapPhysicalMemoryUnsafe]]
| + | | [5.0.0+] 0x49 || Result || [[#UnmapPhysicalMemoryUnsafe|UnmapPhysicalMemoryUnsafe]] || uintptr_t address, size_t size |
| |- | | |- |
− | | 0x4A || [5.0.0+] [[#SetUnsafeLimit]]
| + | | [5.0.0+] 0x4A || Result || [[#SetUnsafeLimit|SetUnsafeLimit]] || size_t limit |
| |- | | |- |
− | | 0x4B || [4.0.0+] [[#CreateCodeMemory]]
| + | | [4.0.0+] 0x4B || Result || [[#CreateCodeMemory|CreateCodeMemory]] || Handle *out_handle, uintptr_t address, size_t size |
| |- | | |- |
− | | 0x4C || [4.0.0+] [[#ControlCodeMemory]]
| + | | [4.0.0+] 0x4C || Result || [[#ControlCodeMemory|ControlCodeMemory]] || Handle code_memory_handle, CodeMemoryOperation operation, uint64_t address, uint64_t size, MemoryPermission perm |
| |- | | |- |
− | | 0x4D || [[#SleepSystem]] | + | | 0x4D || void || [[#SleepSystem|SleepSystem]] || |
| |- | | |- |
− | | 0x4E || [[#ReadWriteRegister]] | + | | 0x4E || Result || [[#ReadWriteRegister|ReadWriteRegister]] || uint32_t *out_value, PhysicalAddress address, uint32_t mask, uint32_t value |
| |- | | |- |
− | | 0x4F || [[#SetProcessActivity]] | + | | 0x4F || Result || [[#SetProcessActivity|SetProcessActivity]] || Handle process_handle, ProcessActivity process_activity |
| |- | | |- |
− | | 0x50 || [[#CreateSharedMemory]] | + | | 0x50 || Result || [[#CreateSharedMemory|CreateSharedMemory]] || Handle *out_handle, size_t size, MemoryPermission owner_perm, MemoryPermission remote_perm |
| |- | | |- |
− | | 0x51 || [[#MapTransferMemory]] | + | | 0x51 || Result || [[#MapTransferMemory|MapTransferMemory]] || Handle trmem_handle, uintptr_t address, size_t size, MemoryPermission owner_perm |
| |- | | |- |
− | | 0x52 || [[#UnmapTransferMemory]] | + | | 0x52 || Result || [[#UnmapTransferMemory|UnmapTransferMemory]] || Handle trmem_handle, uintptr_t address, size_t size |
| |- | | |- |
− | | 0x53 || [[#CreateInterruptEvent]] | + | | 0x53 || Result || [[#CreateInterruptEvent|CreateInterruptEvent]] || Handle *out_read_handle, int32_t interrupt_id, InterruptType interrupt_type |
| |- | | |- |
− | | 0x54 || [[#QueryPhysicalAddress]] | + | | 0x54 || Result || [[#QueryPhysicalAddress|QueryPhysicalAddress]] || arch::PhysicalMemoryInfo *out_info, uintptr_t address |
| |- | | |- |
− | | 0x55 || [[#QueryIoMapping]] | + | | 0x55 || Result || [[#QueryIoMapping|QueryIoMapping]] || uintptr_t *out_address, PhysicalAddress physical_address, size_t size |
| |- | | |- |
− | | 0x56 || [[#CreateDeviceAddressSpace]] | + | | 0x56 || Result || [[#CreateDeviceAddressSpace|CreateDeviceAddressSpace]] || Handle *out_handle, uint64_t das_address, uint64_t das_size |
| |- | | |- |
− | | 0x57 || [[#AttachDeviceAddressSpace]] | + | | 0x57 || Result || [[#AttachDeviceAddressSpace|AttachDeviceAddressSpace]] || DeviceName device_name, Handle das_handle |
| |- | | |- |
− | | 0x58 || [[#DetachDeviceAddressSpace]] | + | | 0x58 || Result || [[#DetachDeviceAddressSpace|DetachDeviceAddressSpace]] || DeviceName device_name, Handle das_handle |
| |- | | |- |
− | | 0x59 || [[#MapDeviceAddressSpaceByForce]] | + | | 0x59 || Result || [[#MapDeviceAddressSpaceByForce|MapDeviceAddressSpaceByForce]] || Handle das_handle, Handle process_handle, uint64_t process_address, size_t size, uint64_t device_address, MemoryPermission device_perm |
| |- | | |- |
− | | 0x5A || [[#MapDeviceAddressSpaceAligned]] | + | | 0x5A || Result || [[#MapDeviceAddressSpaceAligned|MapDeviceAddressSpaceAligned]] || Handle das_handle, Handle process_handle, uint64_t process_address, size_t size, uint64_t device_address, MemoryPermission device_perm |
| |- | | |- |
− | | 0x5B || [[#MapDeviceAddressSpace]] | + | | 0x5B || Result || [[#MapDeviceAddressSpace|MapDeviceAddressSpace]] || size_t *out_mapped_size, Handle das_handle, Handle process_handle, uint64_t process_address, size_t size, uint64_t device_address, MemoryPermission device_perm |
| |- | | |- |
− | | 0x5C || [[#UnmapDeviceAddressSpace]] | + | | 0x5C || Result || [[#UnmapDeviceAddressSpace|UnmapDeviceAddressSpace]] || Handle das_handle, Handle process_handle, uint64_t process_address, size_t size, uint64_t device_address |
| |- | | |- |
− | | 0x5D || [[#InvalidateProcessDataCache]] | + | | 0x5D || Result || [[#InvalidateProcessDataCache|InvalidateProcessDataCache]] || Handle process_handle, uint64_t address, uint64_t size |
| |- | | |- |
− | | 0x5E || [[#StoreProcessDataCache]] | + | | 0x5E || Result || [[#StoreProcessDataCache|StoreProcessDataCache]] || Handle process_handle, uint64_t address, uint64_t size |
| |- | | |- |
− | | 0x5F || [[#FlushProcessDataCache]] | + | | 0x5F || Result || [[#FlushProcessDataCache|FlushProcessDataCache]] || Handle process_handle, uint64_t address, uint64_t size |
| |- | | |- |
− | | 0x60 || [[#DebugActiveProcess]] | + | | 0x60 || Result || [[#DebugActiveProcess|DebugActiveProcess]] || Handle *out_handle, uint64_t process_id |
| |- | | |- |
− | | 0x61 || [[#BreakDebugProcess]] | + | | 0x61 || Result || [[#BreakDebugProcess|BreakDebugProcess]] || Handle debug_handle |
| |- | | |- |
− | | 0x62 || [[#TerminateDebugProcess]] | + | | 0x62 || Result || [[#TerminateDebugProcess|TerminateDebugProcess]] || Handle debug_handle |
| |- | | |- |
− | | 0x63 || [[#GetDebugEvent]] | + | | 0x63 || Result || [[#GetDebugEvent|GetDebugEvent]] || arch::DebugEventInfo *out_info, Handle debug_handle |
| |- | | |- |
− | | 0x64 || [[#ContinueDebugEvent]] | + | | 0x64 || Result || [[#ContinueDebugEvent|ContinueDebugEvent]] || Handle debug_handle, uint32_t flags, const uint64_t *thread_ids, int32_t num_thread_ids |
| |- | | |- |
− | | 0x65 || [[#GetProcessList]] | + | | 0x65 || Result || [[#GetProcessList|GetProcessList]] || int32_t *out_num_processes, uint64_t *out_process_ids, int32_t max_out_count |
| |- | | |- |
− | | 0x66 || [[#GetThreadList]] | + | | 0x66 || Result || [[#GetThreadList|GetThreadList]] || int32_t *out_num_threads, uint64_t *out_thread_ids, int32_t max_out_count, Handle debug_handle |
| |- | | |- |
− | | 0x67 || [[#GetDebugThreadContext]] | + | | 0x67 || Result || [[#GetDebugThreadContext|GetDebugThreadContext]] || ThreadContext *out_context, Handle debug_handle, uint64_t thread_id, uint32_t context_flags |
| |- | | |- |
− | | 0x68 || [[#SetDebugThreadContext]] | + | | 0x68 || Result || [[#SetDebugThreadContext|SetDebugThreadContext]] || Handle debug_handle, uint64_t thread_id, const ThreadContext *context, uint32_t context_flags |
| |- | | |- |
− | | 0x69 || [[#QueryDebugProcessMemory]] | + | | 0x69 || Result || [[#QueryDebugProcessMemory|QueryDebugProcessMemory]] || arch::MemoryInfo *out_memory_info, PageInfo *out_page_info, Handle process_handle, uintptr_t address |
| |- | | |- |
− | | 0x6A || [[#ReadDebugProcessMemory]] | + | | 0x6A || Result || [[#ReadDebugProcessMemory|ReadDebugProcessMemory]] || uintptr_t buffer, Handle debug_handle, uintptr_t address, size_t size |
| |- | | |- |
− | | 0x6B || [[#WriteDebugProcessMemory]] | + | | 0x6B || Result || [[#WriteDebugProcessMemory|WriteDebugProcessMemory]] || Handle debug_handle, uintptr_t buffer, uintptr_t address, size_t size |
| |- | | |- |
− | | 0x6C || [[#SetHardwareBreakPoint]] | + | | 0x6C || Result || [[#SetHardwareBreakPoint|SetHardwareBreakPoint]] || HardwareBreakPointRegisterName name, uint64_t flags, uint64_t value |
| |- | | |- |
− | | 0x6D || [[#GetDebugThreadParam]] | + | | 0x6D || Result || [[#GetDebugThreadParam|GetDebugThreadParam]] || uint64_t *out_64, uint32_t *out_32, Handle debug_handle, uint64_t thread_id, DebugThreadParam param |
| |- style="border-top: double" | | |- style="border-top: double" |
− | | 0x6F || [5.0.0+] [[#GetSystemInfo]]
| + | | [5.0.0+] 0x6F || Result || [[#GetSystemInfo|GetSystemInfo]] || uint64_t *out, SystemInfoType info_type, Handle handle, uint64_t info_subtype |
| + | |- |
| + | | 0x70 || Result || [[#CreatePort|CreatePort]] || Handle *out_server_handle, Handle *out_client_handle, int32_t max_sessions, bool is_light, uintptr_t name |
| |- | | |- |
− | | 0x70 || [[#CreatePort]] | + | | 0x71 || Result || [[#ManageNamedPort|ManageNamedPort]] || Handle *out_server_handle, const char *name, int32_t max_sessions |
| |- | | |- |
− | | 0x71 || [[#ManageNamedPort]] | + | | 0x72 || Result || [[#ConnectToPort|ConnectToPort]] || Handle *out_handle, Handle port |
| |- | | |- |
− | | 0x72 || [[#ConnectToPort]] | + | | 0x73 || Result || [[#SetProcessMemoryPermission|SetProcessMemoryPermission]] || Handle process_handle, uint64_t address, uint64_t size, MemoryPermission perm |
| |- | | |- |
− | | 0x73 || [[#SetProcessMemoryPermission]] | + | | 0x74 || Result || [[#MapProcessMemory|MapProcessMemory]] || uintptr_t dst_address, Handle process_handle, uint64_t src_address, size_t size |
| |- | | |- |
− | | 0x74 || [[#MapProcessMemory]] | + | | 0x75 || Result || [[#UnmapProcessMemory|UnmapProcessMemory]] || uintptr_t dst_address, Handle process_handle, uint64_t src_address, size_t size |
| |- | | |- |
− | | 0x75 || [[#UnmapProcessMemory]] | + | | 0x76 || Result || [[#QueryProcessMemory|QueryProcessMemory]] || arch::MemoryInfo *out_memory_info, PageInfo *out_page_info, Handle process_handle, uint64_t address |
| |- | | |- |
− | | 0x76 || [[#QueryProcessMemory]] | + | | 0x77 || Result || [[#MapProcessCodeMemory|MapProcessCodeMemory]] || Handle process_handle, uint64_t dst_address, uint64_t src_address, uint64_t size |
| |- | | |- |
− | | 0x77 || [[#MapProcessCodeMemory]] | + | | 0x78 || Result || [[#UnmapProcessCodeMemory|UnmapProcessCodeMemory]] || Handle process_handle, uint64_t dst_address, uint64_t src_address, uint64_t size |
| |- | | |- |
− | | 0x78 || [[#UnmapProcessCodeMemory]] | + | | 0x79 || Result || [[#CreateProcess|CreateProcess]] || Handle *out_handle, const arch::CreateProcessParameter *parameters, const uint32_t *caps, int32_t num_caps |
| |- | | |- |
− | | 0x79 || [[#CreateProcess]] | + | | 0x7A || Result || [[#StartProcess|StartProcess]] || Handle process_handle, int32_t priority, int32_t core_id, uint64_t main_thread_stack_size |
| |- | | |- |
− | | 0x7A || [[#StartProcess]] | + | | 0x7B || Result || [[#TerminateProcess|TerminateProcess]] || Handle process_handle |
| |- | | |- |
− | | 0x7B || [[#TerminateProcess]] | + | | 0x7C || Result || [[#GetProcessInfo|GetProcessInfo]] || int64_t *out_info, Handle process_handle, ProcessInfoType info_type |
| |- | | |- |
− | | 0x7C || [[#GetProcessInfo]] | + | | 0x7D || Result || [[#CreateResourceLimit|CreateResourceLimit]] || Handle *out_handle |
| |- | | |- |
− | | 0x7D || [[#CreateResourceLimit]] | + | | 0x7E || Result || [[#SetResourceLimitLimitValue|SetResourceLimitLimitValue]] || Handle resource_limit_handle, LimitableResource which, int64_t limit_value |
| |- | | |- |
− | | 0x7E || [[#SetResourceLimitLimitValue]] | + | | 0x7F || void || [[#CallSecureMonitor|CallSecureMonitor]] || SecureMonitorArguments *args |
| |- | | |- |
− | | 0x7F || [[#CallSecureMonitor]]
| |
| |} | | |} |
| | | |
Line 1,123: |
Line 1,126: |
| </div> | | </div> |
| | | |
− | == GetFutureThreadInfo == | + | == GetDebugFutureThreadInfo == |
| <div style="display: inline-block;"> | | <div style="display: inline-block;"> |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |