<div dir="ltr">Hi all,<div><br></div><div>This week I've changed the shared memory approach according to Samuel and Markus feedback. For each ipc resource, the daemon creates a file in a known directory, open it and installs a file descriptor in the client files table. After the daemon open its, it does a <i>unlink()</i> call (as Samuel suggested) such as no other process can access it.</div>
<div><i>shmat</i> is done using <i>mmap</i> call and the daemon is announced in order to update some data. I have discussed with Markus about the case a process bypasses the API and calls directly <i>mmap</i> instead of <i>shmat</i>. A way of resolving this problem is to use <i>kevents</i> and add another type of EVFILT_VNODE events (for mmap and munmap).</div>
<div><i>shmctl</i> is implementing by exchanging data with the daemon.</div><div>In the last part of the week I have studied the semaphores kernel implementation and made a plan for the userland approach.</div><div><br></div>
<div>Larisa</div></div>