Spawn Processes using memory primitives rather than and elf loader.
This allows us to remove the temporary syscall for that style of process spawn.
This commit is contained in:
parent
b06c76e477
commit
23895b5c6c
26 changed files with 403 additions and 94 deletions
45
zion/usr/zcall_internal.h
Normal file
45
zion/usr/zcall_internal.h
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
struct ZProcessSpawnReq {
|
||||
uint64_t proc_cap;
|
||||
};
|
||||
|
||||
struct ZProcessSpawnResp {
|
||||
uint64_t proc_cap;
|
||||
uint64_t as_cap;
|
||||
};
|
||||
|
||||
struct ZThreadCreateReq {
|
||||
uint64_t proc_cap;
|
||||
};
|
||||
|
||||
struct ZThreadCreateResp {
|
||||
uint64_t thread_cap;
|
||||
};
|
||||
|
||||
struct ZThreadStartReq {
|
||||
uint64_t thread_cap;
|
||||
uint64_t entry;
|
||||
uint64_t arg1;
|
||||
uint64_t arg2;
|
||||
};
|
||||
|
||||
struct ZAddressSpaceMapReq {
|
||||
uint64_t as_cap;
|
||||
uint64_t offset;
|
||||
uint64_t mem_cap;
|
||||
};
|
||||
|
||||
struct ZAddressSpaceMapResp {
|
||||
uint64_t vaddr;
|
||||
};
|
||||
|
||||
struct ZMemoryObjectCreateReq {
|
||||
uint64_t size;
|
||||
};
|
||||
|
||||
struct ZMemoryObjectCreateResp {
|
||||
uint64_t mem_cap;
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue