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
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 Hajji -- Unix Systems and Network Administrator | Phone: +49-2131-67-555
Broicherdorfstr. 83, D-41564 Kaarst, Germany | firstname.lastname@example.org
- - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - -
Fermat: ...I've found a remarkable proof for this: Let x,y @#$!@$!2@ NO CARRIER