kern: implement first half of SvcCreateProcess

This commit is contained in:
Michael Scire 2020-07-21 18:54:08 -07:00 committed by SciresM
parent fb6e85b291
commit 8759cb4da3
9 changed files with 228 additions and 26 deletions

View file

@ -374,6 +374,15 @@ namespace ams::svc {
/* 7.x+ Should memory allocation be optimized? This requires IsApplication. */
CreateProcessFlag_OptimizeMemoryAllocation = (1 << 11),
/* Mask of all flags. */
CreateProcessFlag_All = CreateProcessFlag_Is64Bit |
CreateProcessFlag_AddressSpaceMask |
CreateProcessFlag_EnableDebug |
CreateProcessFlag_EnableAslr |
CreateProcessFlag_IsApplication |
CreateProcessFlag_PoolPartitionMask |
CreateProcessFlag_OptimizeMemoryAllocation,
};
/* Debug types. */

View file

@ -25,10 +25,10 @@ namespace ams::svc {
u32 version;
u64 program_id;
u64 code_address;
u32 code_num_pages;
s32 code_num_pages;
u32 flags;
Handle reslimit;
u32 system_resource_num_pages;
s32 system_resource_num_pages;
};
static_assert(sizeof(CreateProcessParameter) == 0x30);
@ -41,10 +41,10 @@ namespace ams::svc {
u32 version;
u64 program_id;
u64 code_address;
u32 code_num_pages;
s32 code_num_pages;
u32 flags;
Handle reslimit;
u32 system_resource_num_pages;
s32 system_resource_num_pages;
};
static_assert(sizeof(CreateProcessParameter) == 0x30);