[GSOC] System V IPC in userspac - Final report

Grigore Larisa larisagrigore at gmail.com
Thu Sep 26 12:52:55 PDT 2013


Hi all,

First of all, sorry for the delay. Moving libsysvipc into libc brought me a
lot of problems. There are two things necessary for an application to use
userland implementation. First the sysvipc daemon (located in usr.sbin)
must be started and applications must set the environment variable
USR_SYSVIPC to "1".
I have added wrappers in libc for shm* calls and modified those for sem*
and msg*. Every time a wrapper is called, a global variable is inspected to
see if the system call or the library function must be used. The global
variable is set using a libc constructor and it is initialized with 1 if
the environment variable is set to 1.

I have attached the results obtained last week. I will repeat them because
there were made some improvements from that moment. For each implementation
(kernel or userland) there are presented in the first column, the number of
transactions including connections established and in the second one the
number of transactions excluding connections established.

I am currently adding a fork and pthread_atfork wrapper in libc to avoid
linking libc with libpthread (my implementation needs pthread_atfork) to
succeed making another set of tests.

Thanks,
Larisa
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dragonflybsd.org/pipermail/kernel/attachments/20130926/af2c4637/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Results.pdf
Type: application/pdf
Size: 221886 bytes
Desc: not available
URL: <http://lists.dragonflybsd.org/pipermail/kernel/attachments/20130926/af2c4637/attachment-0001.pdf>


More information about the Kernel mailing list