Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
| jesperrosenkilde:reducingsyscalloverhead [2022/10/06 00:58] – Move to personal namespace KubilayKocak | jesperrosenkilde:reducingsyscalloverhead [2022/10/06 01:00] (current) – Add Category: GsoC, move footnote to intro KubilayKocak | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Avoiding syscall Overhead ===== | ===== Avoiding syscall Overhead ===== | ||
| + | |||
| + | This project is for the 2007 Google Summer of Code. [[/ | ||
| ==== Synopsis ==== | ==== Synopsis ==== | ||
| + | |||
| At the moment the setproctitle call is implemented with a sysctl, this has the unfortunate side effect that this simple call locks the Giant-lock. As this call is a simple matter of setting a value, it could be better implemented with shared memory between the kernel and user-space. | At the moment the setproctitle call is implemented with a sysctl, this has the unfortunate side effect that this simple call locks the Giant-lock. As this call is a simple matter of setting a value, it could be better implemented with shared memory between the kernel and user-space. | ||
| ==== Project ==== | ==== Project ==== | ||
| + | |||
| This project purposes a scheme to securely share process specific data, between the kernel and a user-space process. This is done by having each process allocate a special memory page, on which the kernel and user-space process can share data. This will give the security needed, as the VM-system will make sure that no outside processes can fiddle with a process' | This project purposes a scheme to securely share process specific data, between the kernel and a user-space process. This is done by having each process allocate a special memory page, on which the kernel and user-space process can share data. This will give the security needed, as the VM-system will make sure that no outside processes can fiddle with a process' | ||
| - | //Update: Howard Su has sugested | + | //Update: Howard Su has suggested |
| ==== Milestone ==== | ==== Milestone ==== | ||
| + | |||
| This is a list of milestone, and the order in which I will take them. | This is a list of milestone, and the order in which I will take them. | ||
| Line 31: | Line 36: | ||
| All weeks included. | All weeks included. | ||
| - | %%-%%-- | ||
| ==== Patch/ | ==== Patch/ | ||
| - | This should add a working getpid() through the page-scheme. A page is allocated on fork() and exec() and its address is accesible | + | |
| + | This should add a working getpid() through the page-scheme. A page is allocated on fork() and exec() and its address is accessible | ||
| http:// | http:// | ||
| Line 40: | Line 45: | ||
| ---- | ---- | ||
| - | //This project is for the 2007 Google Summer of Code. [[/ | + | {{tag> |