|author||Joshua Branson <email@example.com>||2018-11-26 11:51:44 -0500|
|committer||Samuel Thibault <firstname.lastname@example.org>||2018-11-27 22:14:38 +0100|
I added mach_msg to the gnumach syscall page. I tried to add some more information to the rpc and syscall pages.
3 files changed, 21 insertions, 4 deletions
diff --git a/microkernel/mach/gnumach/interface/syscall.mdwn b/microkernel/mach/gnumach/interface/syscall.mdwn
index d5fc542b..f470754b 100644
@@ -14,3 +14,5 @@ License|/fdl]]."]]"""]]
[[!map pages="microkernel/mach/gnumach/interface/syscall/* and !microkernel/mach/gnumach/interface/syscall/*/*"
@@ -9,7 +9,20 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled [[GNU Free Documentation
-RPC stands for remote procedure call.
+RPC stands for remote procedure call. It is generally one userspace processes
+communicating with another userspace process. For example, a user may use
+emacs to open a text file for editing. On the Hurd, glibc turns the C function
+call into appropriate RPC calls to ext2fs. It is important to remember that
+gnumach's IPC facilitates this communication between emacs and ext2fs (with
+the gnumach mach_msg () syscall: one to send the message and one to receive
+It is also important to distinguish an RPC from a [[system call|system_call]].
+A system call, happens when a userspace process requests something of the kernel.
+An RPC is generally one userspace process requesting something from another
# See Also
diff --git a/system_call.mdwn b/system_call.mdwn
index 45ed9dbe..d8a465b4 100644
@@ -10,11 +10,13 @@ is included in the section entitled [[GNU Free Documentation
In an [[UNIX]]-like system, a *system call* (*syscall*) is used to request all
-kinds of functionality from the operating system kernel.
+kinds of functionality from the operating system kernel. On GNU/Linux, glibc
+translates function calls to system calls by packing arguments appropriately
+and using that trap or syscall instruction.
A [[microkernel]]-based system typically won't offer a lot of system calls --
-apart from one central one, and that is *send message* -- but instead [[RPC]]s
-will be used instead.
+apart from one central one, and that is *send message* (mach_msg) -- but
+instead [[RPC]]s will be used instead.
See [[GNU Mach's system calls|microkernel/mach/gnumach/interface/syscall]].
In the [[GNU Hurd|hurd]], a lot of what is traditionlly considered to be a UNIX