Page 1 of 1

RPC? for Microkernel and Hybrid Kernel

Posted: Tue Feb 19, 2013 4:43 pm
by mgoppold
Are there any other ways, other than RPC like in http://wiki.osdev.org/RPC, to make calls from regular userspace programs to subsystem/service userspace code?

Regular RPC seems so slow.

Re: RPC? for Microkernel and Hybrid Kernel

Posted: Tue Feb 19, 2013 11:49 pm
by thepowersgang
By definition, calling a function in another process (or even thread) is a 'RPC'. How you chose to implement it is up to you. The RPC wiki page appears to be describing the method used by COM and SunRPC, where the RPC wrapper code is computer generated, but for smaller operations writing up your own works well.

It depends on what you want to do, some simple operations can easily be serialised into a command stream [e.g. Graphics rendering] (assuming they do not need to be synchronous) while more complex ones would require framing and return values [e.g. open() or ioctl(), for a microkernel VFS]

Re: RPC? for Microkernel and Hybrid Kernel

Posted: Sun Apr 14, 2013 11:49 am
by zeitue
So what methods of RPC are there besides those mentioned on the previous post?

Re: RPC? for Microkernel and Hybrid Kernel

Posted: Sun Apr 14, 2013 2:00 pm
by Brendan
Hi,
zeitue wrote:So what methods of RPC are there besides those mentioned on the previous post?
You can probably extract a list from wikipedia's page.

Mostly it's just "synchronous messages with wrappers", which means that it's inferior to other forms of IPC. ;)


Cheers,

Brendan