瀏覽代碼

Base: Add man pages for create_shared_buffer() and share_buffer_with()

Andreas Kling 5 年之前
父節點
當前提交
eb18825fce
共有 2 個文件被更改,包括 47 次插入0 次删除
  1. 23 0
      Base/usr/share/man/man2/create_shared_buffer.md
  2. 24 0
      Base/usr/share/man/man2/share_buffer_with.md

+ 23 - 0
Base/usr/share/man/man2/create_shared_buffer.md

@@ -0,0 +1,23 @@
+## Name
+
+create\_shared\_buffer - create a shareable memory buffer
+
+## Synopsis
+```**c++
+#include <SharedBuffer.h>
+
+int create_shared_buffer(int size, void** buffer);
+```
+
+## Description
+
+Creates a new memory region that can be shared with other processes. The region is only accessible to the creating process by default.
+
+## Return value
+
+If a region is successfully created, `create_shared_buffer()` stores a pointer to the memory in `buffer` and returns a buffer ID. Otherwise, it returns -1 and sets `errno` to describe the error.
+
+## Errors
+
+* `EINVAL`: `size` is zero or negative.
+* `EFAULT`: `buffer` is not a valid address.

+ 24 - 0
Base/usr/share/man/man2/share_buffer_with.md

@@ -0,0 +1,24 @@
+## Name
+
+share\_buffer\_with - allow another process to map a shareable buffer
+
+## Synopsis
+```**c++
+#include <SharedBuffer.h>
+
+int share_buffer_with(int shared_buffer_id, pid_t peer_pid);
+```
+
+## Description
+
+Gives the process with PID `peer_pid` permission to map the shareable buffer with ID `shared_buffer_id`.
+
+## Return value
+
+On success, returns 0. Otherwise, returns -1 and `errno` is set.
+
+## Errors
+
+* `EINVAL`: `peer_pid` is invalid, or `shared_buffer_id` is not a valid ID.
+* `EPERM`: The calling process does not have access to the buffer with `shared_buffer_id`.
+* `ESRCH`: No process with PID `peer_pid` is found.