Abstract
Orthogonal persistence opens up the possibility for a number of applications. We present an approach for easily enabling transparent orthogonal persistence, basically on top of a modern μ-kernel. Not only are all data objects made persistent. Threads and tasks are also treated as normal data objects, making the threads and tasks persistent between system restarts. As such, the system is fault surviving. Persistence is achieved by the means of a transparent checkpoint server running in user-level. The checkpoint server takes regular snapshots of all user-level memory in the system, and also of the thread control blocks inside the kernel. The execution of the checkpointing itself is completely transparent to the μ-kernel, and only a few recovery mechanisms need to be implemented inside the kernel in order to support checkpointing. During system recovery (after a crash or a controlled shutdown), the consistency of threads is assured by the fact that all their user-level state (user memory) and kernel-level state (thread control blocks) will reside in stable storage. All other kernel state in the system can be reconstructed either upon initial recovery, or by standard page fault mechanisms during runtime.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Michael F. Challis. Database consistency and integrity in a multi-user environment. In Proceedings of the 1st International Conference on Data and Knowledge Bases, pages 245–270, Haifa, Israel, August 2–3 1978. Academic Press.
Alan Dearle, Rex di Bona, James Farrow, Frans Henskens, Anders Lindström, John Rosenberg, and Francis Vaughan. Grasshopper: an orthogonally persistent operating system. Computing Systems, 7(3):289–312, Summer 1994.
Alan Dearle and David Hulse. Operating system support for persistent systems: past, present and future. Software-Practice and Experience, Special Issue on Persistent Object Systems, 30(4):295–324, 2000.
Elmootazbellah N. Elnohazy, David B. Johnson, and Willy Zwaenepoel. The performance of consistent checkpointing. In Proceedings of the 11th Symposium on Reliable Distributed Systems, Houston, TX, October 5–7 1992.
Alain Gefflaut et al. Building efficient and robust multiserver systems: the SawMill approach. In Proceedings of the ACM SIGOPS European Workshop 2000, Kolding, Denmark, September 17–20 2000.
Hermann Härtig, Michael Hohmuth, Jochen Liedtke, Sebastiann Scönberg, and Jean Wolter. The performance of μ-kernel bases systems. In Proceeding of the 16th ACM Symposium on Operating System Principles (SOSP), Saint-Malo, France, October 5–8 1997.
Charles R. Landau. The checkpoint mechanism in KeyKOS. In Proceedings of the 2nd International Workshop on Persistent Object Systmes (POS2), Paris, France, September 24–25 1992.
Juan León, Allan L. Fisher, and Peter Steenkist. Fail-safe PVM: a portable package for distributed programming with transparent recovery. Technical Report CMU-CS-93-124, Carnegie Mellon University, February 1993.
Jochen Liedtke. A persistent system in real use: experiences of the first 13 years. In Proceedings of the 3rd International Workshop on Object-Orientation in Operatins Systems (IWOOOS’ 93), Asheville, NC, December 9–10 1993.
Jochen Liedtke. On μ-kernel construction. In Proceedings of the 15th ACM Symposium on Operating System Principles (SOSP’ 95), Copper Mountain Resort, CO, December 3–6 1995.
Michael Litzkow, Todd Tannenbaum, Jim Basney, and Miron Livny. Checkpoint and migration of UNIX processes in the Condor distributed processing system. Technical Report #1346, University of Wisconsin-Madison, April 1997.
Raymond A. Lorie. Physical integrity in a large segmented database. ACM Transactions on Database Systems (TODS), 2(1):91–104, September 1977.
James S. Plank, Micah Beck, Gerry Kingsley, and Kai Li. Libckpt: transparent checkpointing under UNIX. In Proceeding of the USENIX 1995 Technical Conference, New Orleans, LA, January 16–20 1995.
Jonathan S. Shapiro, Jonathan M. Smith, and David J. Farber. EROS: a fast capability system. In Proceedings of the 17th ACM Symposium on Operating System Pronciples (SOSP’ 99), Kiawah Island Resort, SC, December 12–15 1999.
Patrick Tullmann, Jay Lepreau, Bryan Ford, and Mike Hibler. User-level checkpointing through exportable kernel state. In Proceedings of the 5th International Workshop on Object-Orientation in Operating System (IWOOOS’ 96), Seattle, WA, October 27–28 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Skoglund, E., Ceelen, C., Liedtke, J. (2001). Transparent Orthogonal Checkpointing through User-Level Pagers. In: Kirby, G.N.C., Dearle, A., Sjøberg, D.I.K. (eds) Persistent Object Systems: Design, Implementation, and Use. POS 2000. Lecture Notes in Computer Science, vol 2135. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45498-5_18
Download citation
DOI: https://doi.org/10.1007/3-540-45498-5_18
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42735-3
Online ISBN: 978-3-540-45498-4
eBook Packages: Springer Book Archive