The duality of memory and communication in the implementation of a multiprocessor operating system
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Lions' commentary on UNIX 6th edition with source code
Lions' commentary on UNIX 6th edition with source code
Continuous profiling: where have all the cycles gone?
Proceedings of the sixteenth ACM symposium on Operating systems principles
Resource containers: a new facility for resource management in server systems
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Win32 Systems Programming
Exploring the bounds of web latency reduction from caching and prefetching
USITS'97 Proceedings of the USENIX Symposium on Internet Technologies and Systems on USENIX Symposium on Internet Technologies and Systems
Measuring the capacity of a web server
USITS'97 Proceedings of the USENIX Symposium on Internet Technologies and Systems on USENIX Symposium on Internet Technologies and Systems
System design issues for internet middleware services: deductions from a large client trace
USITS'97 Proceedings of the USENIX Symposium on Internet Technologies and Systems on USENIX Symposium on Internet Technologies and Systems
Scalable kernel performance for internet servers under realistic loads
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
A hierarchical internet object cache
ATEC '96 Proceedings of the 1996 annual conference on USENIX Annual Technical Conference
Flash: an efficient and portable web server
ATEC '99 Proceedings of the annual conference on USENIX Annual Technical Conference
Lightweight kernel/user communication for real-time and multimedia applications
NOSSDAV '01 Proceedings of the 11th international workshop on Network and operating systems support for digital audio and video
Scalable packet classification
Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications
SEDA: an architecture for well-conditioned, scalable internet services
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
Optimizing web content delivery using web server accelerator
ACSC '02 Proceedings of the twenty-fifth Australasian conference on Computer science - Volume 4
Increasing web server throughput with network interface data caching
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Kqueue - A Generic and Scalable Event Notification Facility
Proceedings of the FREENIX Track: 2001 USENIX Annual Technical Conference
High-Performance Memory-Based Web Servers: Kernel and User-Space Performance
Proceedings of the General Track: 2002 USENIX Annual Technical Conference
Scalability of Linux Event-Dispatch Mechanisms
Proceedings of the General Track: 2002 USENIX Annual Technical Conference
Scalability and accuracy in a large-scale network emulator
ACM SIGOPS Operating Systems Review - OSDI '02: Proceedings of the 5th symposium on Operating systems design and implementation
vBET: a VM-based emulation testbed
MoMeTools '03 Proceedings of the ACM SIGCOMM workshop on Models, methods and tools for reproducible network research
Static reflector: a pattern for object-oriented access to non-object-oriented interfaces
SAICSIT '03 Proceedings of the 2003 annual research conference of the South African institute of computer scientists and information technologists on Enablement through technology
AMPS: a flexible, scalable proxy testbed for implementing streaming services
NOSSDAV '04 Proceedings of the 14th international workshop on Network and operating systems support for digital audio and video
Evaluating the performance of user-space and kernel-space web servers
CASCON '04 Proceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research
Scalability and accuracy in a large-scale network emulator
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Flexible cross-domain event delivery for quality-managed multimedia applications
ACM Transactions on Multimedia Computing, Communications, and Applications (TOMCCAP)
FAST '03 Proceedings of the 2nd USENIX Conference on File and Storage Technologies
Performance analysis of TLS Web servers
ACM Transactions on Computer Systems (TOCS)
Overload management as a fundamental service design primitive
EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
A detailed MPI communication model for distributed systems
Future Generation Computer Systems
Improving connection management of the OpenLDAP directory server
PDCN'06 Proceedings of the 24th IASTED international conference on Parallel and distributed computing and networks
Evaluating network processing efficiency with processor partitioning and asynchronous I/O
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Server network scalability and TCP offload
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Making the "box" transparent: system call performance as a first-class result
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
Acceptable strategies for improving web server performance
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
Making events less slippery with eel
HOTOS'05 Proceedings of the 10th conference on Hot Topics in Operating Systems - Volume 10
Trickles: a stateless network stack for improved scalability, resilience, and flexibility
NSDI'05 Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation - Volume 2
System support for bandwidth management and content adaptation in internet applications
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Scalable, distributed data structures for internet service construction
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Adaptive overload control for busy internet servers
USITS'03 Proceedings of the 4th conference on USENIX Symposium on Internet Technologies and Systems - Volume 4
Comparing the performance of web server architectures
Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007
A stateless approach to connection-oriented protocols
ACM Transactions on Computer Systems (TOCS)
Extending futex for kernel to user notification
ACM SIGOPS Operating Systems Review - Research and developments in the Linux kernel
A detailed MPI communication model for distributed systems
Future Generation Computer Systems
AHAFS subsystem for enhancing operating system health in the cloud computing era
IBM Journal of Research and Development
Application-specific service technologies for commodity operating systems in real-time environments
ACM Transactions on Embedded Computing Systems (TECS)
FAST'03 Proceedings of the 2nd USENIX conference on File and storage technologies
Exception-less system calls for event-driven servers
USENIXATC'11 Proceedings of the 2011 USENIX conference on USENIX annual technical conference
MegaPipe: a new programming interface for scalable network I/O
OSDI'12 Proceedings of the 10th USENIX conference on Operating Systems Design and Implementation
KSEQ: a new scalable synchronous I/O multiplexing mechanism for event-driven applications
ISPA'07 Proceedings of the 5th international conference on Parallel and Distributed Processing and Applications
Network stack specialization for performance
Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks
Hi-index | 0.00 |
UNIX applications not wishing to block when doing I/O often use the select() system call, to wait for events on multiple file descriptors. The select() mechanism works well for small-scale applications, but scales poorly as the number of file descriptors increases. Many modern applications, such as Internet servers, use hundreds or thousands of file descriptors, and suffer greatly from the poor scalability of select(). Previous work has shown that while the traditional implementation of select() can be improved, the poor scalability is inherent in the design. We present a new event-delivery mechanism, which allows the application to register interest in one or more sources of events, and to efficiently dequeue new events. We show that this mechanism, which requires only minor changes to applications, performs independently of the number of file descriptors.