Mechanisms for reliable distributed real-time operating systems: The Alpha Kernel
Mechanisms for reliable distributed real-time operating systems: The Alpha Kernel
Concurrent garbage collection on stock hardware
Proc. of a conference on Functional programming languages and computer architecture
Real-time concurrent collection on stock multiprocessors
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Real-time garbage collection on general-purpose machines
Journal of Systems and Software
The treadmill: real-time garbage collection without motion sickness
ACM SIGPLAN Notices
Real-time replication garbage collection
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
System support for automatic profiling and optimization
Proceedings of the sixteenth ACM symposium on Operating systems principles
Scheduling garbage collector for embedded real-time systems
Proceedings of the ACM SIGPLAN 1999 workshop on Languages, compilers, and tools for embedded systems
List processing in real time on a serial computer
Communications of the ACM
A LISP garbage-collector for virtual-memory computer systems
Communications of the ACM
A parallel, real-time garbage collector
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
A real-time garbage collector with low overhead and consistent utilization
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An Adaptive, Distributed Airborne Tracking System ("process the Right Tracks at the Right Time")
Proceedings of the 11 IPPS/SPDP'99 Workshops Held in Conjunction with the 13th International Parallel Processing Symposium and 10th Symposium on Parallel and Distributed Processing
Time-triggered garbage collection: robust and adaptive real-time GC scheduling for embedded systems
Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems
Trading data space for reduced time and code space in real-time garbage collection on stock hardware
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
A Protocol and Correctness Proofs for Real-Time High-Performance Broadcast Networks
ICDCS '98 Proceedings of the The 18th International Conference on Distributed Computing Systems
Dynamic and Aggressive Scheduling Techniques for Power-Aware Real-Time Systems
RTSS '01 Proceedings of the 22nd IEEE Real-Time Systems Symposium
Best-effort decision-making for real-time scheduling
Best-effort decision-making for real-time scheduling
Scheduling dependent real-time activities
Scheduling dependent real-time activities
Non-compacting memory allocation and real-time garbage collection
Non-compacting memory allocation and real-time garbage collection
Fast, Best-Effort Real-Time Scheduling Algorithms
IEEE Transactions on Computers
IEEE Transactions on Software Engineering
On Recent Advances in Time/Utility Function Real-Time Scheduling and Resource Management
ISORC '05 Proceedings of the Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
Hi-index | 0.00 |
We consider garbage collection (GC) in dynamic real-time systems. We consider the time-based GC approach of running the collector as a separate, concurrent thread, and focus on real-time scheduling to obtain assurances on mutator timing behavior, while ensuring that memory is never exhausted. We present a scheduling algorithm called GCUA. The algorithm considers mutator activities that are subject to time/utility function time constraints, variable execution time demands, the unimodal arbitrary arrival model that allows a strong adversary, and resource overloads. We establish several properties of GCUA including probabilistically-satisfied utility lower bounds for each mutator activity, a lower bound on the system-wide total accrued utility, bounded sensitivity for the assurances to variations in mutator execution time demand estimates, and no memory exhaustion at all times. Our simulation experiments validate our analytical results and confirm the algorithm's effectiveness and superiority.