Advanced MS-DOS: the Microsoft guide for assembly language and C programmers
Advanced MS-DOS: the Microsoft guide for assembly language and C programmers
Inside Macintosh
Recovery management in QuickSilver
ACM Transactions on Computer Systems (TOCS)
ASPLOS II Proceedings of the second international conference on Architectual support for programming languages and operating systems
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
Communications of the ACM
Firefly: A Multiprocessor Workstation
IEEE Transactions on Computers - Special issue on architectural support for programming languages and operating systems
The mach exception handling facility
PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
RPC in the x-Kernel: evaluating new design techniques
SOSP '89 Proceedings of the twelfth ACM symposium on Operating systems principles
The Performance Implications of Thread Management Alternatives for Shared-Memory Multiprocessors
IEEE Transactions on Computers
Computer programming and architecture: The VAX
Computer programming and architecture: The VAX
Lightweight remote procedure call
ACM Transactions on Computer Systems (TOCS)
Performance of the Firefly RPC
ACM Transactions on Computer Systems (TOCS)
Virtual memory primitives for user programs
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
Scheduler activations: effective kernel support for the user-level management of parallelism
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
A Syntactic Theory of Message Passing
Journal of the ACM (JACM)
The ITC distributed file system: principles and design
Proceedings of the tenth ACM symposium on Operating systems principles
From RIG to Accent to Mach: the evolution of a network operating system
ACM '86 Proceedings of 1986 ACM Fall joint computer conference
First-class user-level threads
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Communications of the ACM
A Theory of Programming Language Semantics
A Theory of Programming Language Semantics
On the transfer of control between contexts
Programming Symposium, Proceedings Colloque sur la Programmation
Engines build process abstractions
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Continuation-based multiprocessing
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
Accent: A communication oriented network operating system kernel
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
Evolution of an Operating System for Large-Scale Shared-Memory Multiprocessors
Evolution of an Operating System for Large-Scale Shared-Memory Multiprocessors
High-performance cross-address space communication
High-performance cross-address space communication
Scheduling and resource management techniques for multiprocessors
Scheduling and resource management techniques for multiprocessors
Computation migration: enhancing locality for distributed-memory parallel systems
PPOPP '93 Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming
Implementing network protocols at user level
SIGCOMM '93 Conference proceedings on Communications architectures, protocols and applications
Using threads in interactive systems: a case study
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
The impact of operating system structure on memory system performance
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Improving IPC by kernel design
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Implementing network protocols at user level
IEEE/ACM Transactions on Networking (TON)
Optimal allocation of on-chip memory for multiple-API operating systems
ISCA '94 Proceedings of the 21st annual international symposium on Computer architecture
SPIN—an extensible microkernel for application-specific operating system services
ACM SIGOPS Operating Systems Review
SCONE: using concurrent objects for low-level operating system programming
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
User-level threads on a general hardware interface
ACM SIGOPS Operating Systems Review
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Extensibility safety and performance in the SPIN operating system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Teapot: language support for writing memory coherence protocols
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Analysis of techniques to improve protocol processing latency
Conference proceedings on Applications, technologies, architectures, and protocols for computer communications
ACM SIGOPS Operating Systems Review
User-level Real-Time Network System on Microkernel-basedOperating Systems
WPDRTS Selected papers from the 4th workshop on Parallel and distributed real-time systems
Interface and execution models in the Fluke kernel
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
EMERALDS: a small-memory real-time microkernel
Proceedings of the seventeenth ACM symposium on Operating systems principles
Using Cohort Scheduling to Enhance Server Performance (Extended Abstract)
OM '01 Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems
Designing an Efficient and Scalable Server-side Asynchrony Model for CORBA
OM '01 Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems
SPIN: an extensible microkernel for application-specific operating system services
EW 6 Proceedings of the 6th workshop on ACM SIGOPS European workshop: Matching operating systems to application needs
EMERALDS: A Small-Memory Real-Time Microkernel
IEEE Transactions on Software Engineering
Porting multithreading libraries to an exokernel system
EW 9 Proceedings of the 9th workshop on ACM SIGOPS European workshop: beyond the PC: new challenges for the operating system
PANDA - Supporting Distributed Programming in C++
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Design and Performance of Asynchronous Method Handling for CORBA
On the Move to Meaningful Internet Systems, 2002 - DOA/CoopIS/ODBASE 2002 Confederated International Conferences DOA, CoopIS and ODBASE 2002
Using Cohort-Scheduling to Enhance Server Performance
ATEC '02 Proceedings of the General Track of the annual conference on USENIX Annual Technical Conference
Scale and performance in the Denali isolation kernel
ACM SIGOPS Operating Systems Review - OSDI '02: Proceedings of the 5th symposium on Operating systems design and implementation
Improving the reliability of commodity operating systems
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Stateful distributed interposition
ACM Transactions on Computer Systems (TOCS)
Thread coloring: a scheduler proposal from user to hardware threads
ACM SIGOPS Operating Systems Review
Scale and performance in the Denali isolation kernel
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
IEEE Transactions on Software Engineering
Signals, timers, and continuations for multithreaded user-level protocols
Software—Practice & Experience - Research Articles
Event-driven programming for robust software
EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Proceedings of the 4th international conference on Computing frontiers
Optimizing IPC Performance for Shared-Memory Multiprocessors
ICPP '94 Proceedings of the 1994 International Conference on Parallel Processing - Volume 01
Evolving mach 3.0 to a migrating thread model
WTEC'94 Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference
An efficient kernel-based implementation of POSIX threads
USTC'94 Proceedings of the USENIX Summer 1994 Technical Conference on USENIX Summer 1994 Technical Conference - Volume 1
Experiences with locking in a NUMA multiprocessor operating system kernel
OSDI '94 Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation
HiPEC: high performance external virtual memory caching
OSDI '94 Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation
Using continuations to build a user-level threads library
MSYM'93 Proceedings of the 3rd conference on USENIX MACH III Symposium - Volume 1
Cheating the I/O bottleneck: network storage with Trapeze/Myrinet
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
RT-IPC: an IPC extension for real-time mach
moas'93 USENIX Symposium on USENIX Microkernels and Other Kernel Architectures Symposium - Volume 4
Fast interrupt priority management in operating system kernels
moas'93 USENIX Symposium on USENIX Microkernels and Other Kernel Architectures Symposium - Volume 4
User level IPC and device management in the Raven kernel
moas'93 USENIX Symposium on USENIX Microkernels and Other Kernel Architectures Symposium - Volume 4
Scala Actors: Unifying thread-based and event-based programming
Theoretical Computer Science
Actors that unify threads and events
COORDINATION'07 Proceedings of the 9th international conference on Coordination models and languages
Improving interrupt response time in a verifiable protected microkernel
Proceedings of the 7th ACM european conference on Computer Systems
Virtualization for safety-critical, deeply-embedded devices
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Hi-index | 0.00 |
We have improved the performance of the Mach 3.0 operating system by redesigning its internal thread and interprocess communication facilities to use continuations as the basis for control transfer. Compared to previous versions of Mach 3.0, our new system consumes 85% less space per thread. Cross-address space remote procedure calls execute 14% faster. Exception handling runs over 60% faster.In addition to improving system performance, we have used continuations to generalize many control transfer optimizations that are common to operating systems, and have recast those optimizations in terms of a single implementation methodology. This paper describes our experiences with using continuations in the Mach operating system.