Size: 127
Comment:
|
Size: 891
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 4: | Line 4: |
= Asynchronous System Calls = Asynchronous system API's like aio are important both for performance as well as for more stable applications. Consider applications that access a high latentcy file system (like nfs) and a need to terminate the system call immediatly occurs. In an asynchronous system, the specific system call can be cancelled while there is no way to perform a cancellation in a synchronous API. There are a number of system calls that this kind of problem can occur. "open", "mount", etc. |
|
Line 5: | Line 7: |
= Asynchronous System Calls = ... |
The other issue with the current asynchronous APIs is that it is very difficult to use. Going to a queue based asynchronous api with a "select()"able method of managing the results will provide a more stable programming environment. In effect, somthing similar to epoll may do the trick. |
Asynchronous System Calls
Asynchronous system API's like aio are important both for performance as well as for more stable applications. Consider applications that access a high latentcy file system (like nfs) and a need to terminate the system call immediatly occurs. In an asynchronous system, the specific system call can be cancelled while there is no way to perform a cancellation in a synchronous API. There are a number of system calls that this kind of problem can occur. "open", "mount", etc.
The other issue with the current asynchronous APIs is that it is very difficult to use. Going to a queue based asynchronous api with a "select()"able method of managing the results will provide a more stable programming environment. In effect, somthing similar to epoll may do the trick.