Application Domain

 Networking, multimedia and dataflow applications are at their core all operations on sequential streams of data (input/output, or I/O). Network applications encompass servers, clients and core elements. The first generally handle large numbers of small streams, the second a few large streams and the third ordinarily process stateless traffic. Illustrative examples are DNS servers, email clients and IPv4 routers. All encompass device, generic I/O and task-specific software processing. Multimedia applications produce or consume streaming audio and video content. Music players, Internet phones and digital television sets come to mind. Again, all consist of a combination of software processes and block, network, audio and graphics device logic. Dataflow processing is a generic term encompassing all applications whose tasks consist of operations on externally generated streams of data. Intrusion detection in network streams, fraud detection in financial streams and text mining in conversations are examples. Firewalls that perform content analysis can also be included in this category, as can high performance computing (HPC) applications that operate on live streams, such as live astronomical observations [ACK+02,RBvM+06].

false streaming I/O, throughputOur aim is to identify and remove structural bottlenecks in operating system I/O. To limit the problem space, we initially focus on network applications. Disk, graphics and audio processing are discussed in as far as they affect network applications. Disk I/O, for instance, is a critical factor in web serving. We target dedicated workstations and servers (as opposed to multi-user time-sharing systems), because these are predominant today. While Streamline offers Unix-equivalent isolation, we demonstrate that performance can increase further when a reduction in isolation is accepted. Our primary measure of performance (and hence success) is throughput.



Subsections
willem 2010-02-03