[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Hurd favourite way to do shared memory



> Where can I find description of favourite Hurd way to do shared memory ?
> Don't have to be standard, it would be even more interesting if it weren't :-).
It would be nice if glibc already supported the shm*() family. Unfortunately,
it seems that this is not the case with the Hurd yet

  [Looking at the current glibc sources shows that the file
     <glibc>/sysdeps/generic/shmget.c
   contains just a stub for shmget() which returns ENOSYS. The same
   situation for most other shm*() functions.]

The best way to implement those Unix-isch semantics would be in glibc,
somewhere in <glibc>/sysdeps/mach. This implementation would use the
generic vm_*() interfaces of Mach in a straightforward way.

A good place to look at is <glibc>/sysdeps/mach/hurd/mmap.c. Good Mach
functions would be vm_read() and vm_write(), as well as the other vm_*()
Mach functions whose man pages I already posted earlier to this list.

Of course, the Hurd architects may already have some ideas how to isolate
user programs from such Mach internals by providing a suitable interface
(either in glibc, another custom library or possibly involving the pager).

-Farid.

-- 
Farid Hajji -- Unix Systems and Network Administrator | Phone: +49-2131-67-555
Broicherdorfstr. 83, D-41564 Kaarst, Germany          | farid.hajji@ob.kamp.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - -
Fermat: ...I've found a remarkable proof for this: Let x,y @#$!@$!2@ NO CARRIER



Reply to: