diff options
author | Himbeer <himbeer@disroot.org> | 2024-07-30 13:06:08 +0200 |
---|---|---|
committer | Himbeer <himbeer@disroot.org> | 2024-07-30 13:06:35 +0200 |
commit | 2b88b2c1d39f035c2beb643a55b0e9a1fe661695 (patch) | |
tree | 0cfb6258d8ee40131fcd15a67e6e124459769f0c | |
parent | ddb61a991735c96f7b9036602a5d514dfe82d65f (diff) |
Document new rawUserinit syscall in SRVRE kernel wiki
-rw-r--r-- | static/md/srvre/kernel/wiki/syscalls.md | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/static/md/srvre/kernel/wiki/syscalls.md b/static/md/srvre/kernel/wiki/syscalls.md index 92f4005..d770c20 100644 --- a/static/md/srvre/kernel/wiki/syscalls.md +++ b/static/md/srvre/kernel/wiki/syscalls.md @@ -44,15 +44,16 @@ List The following syscalls are currently available. Detailed descriptions follow after the summary table. -| Number | Name | -| :----: | :----------------------------------- | -| 100000 | [errorName](#errorname-100000) | -| 100001 | [consoleWrite](#consoleWrite-100001) | -| 100002 | [launch](#launch-100002) | -| 100003 | [end](#end-100003) | -| 100004 | [terminate](#terminate-100004) | -| 100005 | [processId](#processid-100005) | -| 100006 | [threadId](#threadid-100006) | +| Number | Name | +| :----: | :------------------------------------- | +| 100000 | [errorName](#errorname-100000) | +| 100001 | [consoleWrite](#consoleWrite-100001) | +| 100002 | [launch](#launch-100002) | +| 100003 | [end](#end-100003) | +| 100004 | [terminate](#terminate-100004) | +| 100005 | [processId](#processid-100005) | +| 100006 | [threadId](#threadid-100006) | +| 100007 | [rawUserinit](#rawuserinit-100007) | errorName (#100000) ------------------- @@ -159,6 +160,23 @@ threadId() usize Returns the ID of the calling thread within the calling process. +rawUserinit (#100007) +--------------------- + +Signature: +``` +rawUserinit(ptr: *[*]const u8) usize +``` + +Writes the memory address of the raw bytes of the +[userinit](/md/srvre/kernel/wiki/userinit.md) tarball to the specified pointer +using double indirection, returning the length of the tarball (in bytes). + +The resulting memory is mapped read-only so any modifications will result +in a page fault. + +* `ptr` is a pointer to the pointer to set to the userinit memory address + [Return to Wiki Main Page](/md/srvre/kernel/wiki.md) [Return to Index Page](/md/index.md) |