Abstract
An operating system is persistent if all objects it supports have a lifetime independent of the context in which they were created. This concept, known as orthogonal persistence, extends to data objects and computations (processes and threads). A persistent computation is required to survive system crashes and shutdowns. After the service is restored it is expected to continue with a very small loss of productive activity. Over its lifetime every computation interacts with some transient aspects of its environment, for example I/O devices, network connections etc. The main issue in providing support for persistent computations is how to control such interactions in order to prevent them from becoming a part of the preserved state of a computation. These interactions are mediated by the system kernel; therefore the provision of persistent computations relates directly to the persistence of the kernel itself. In this paper we examine the solutions offered by persistent operating systems constructed to date, and we propose a new approach, implemented in the Grasshopper operating system. We show that this approach is sufficiently flexible to handle all problems identified so far, and sufficiently general to suit any operating system.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bem, E.Z., „Global Stability and Resilience in a Persistent Operating System“, PhD Thesis, University of Sydney, 1999
Dearle, A., J. Rosenberg, F.A. Henskens, F. Vaughan, K. Maciunas „An Examination of Operating System Support for Persistent Object Systems“ Proceedings of the 25th Hawaii International Conference on System Sciences, vol 1 (ed. V. Milutinovic and D.B. Shriver), IEEE Computer Society Press, Hawaii, 1992
Dearle, A., R. di Bona, J.M. Farrow, F.A. Henskens, A. Lindström, J. Rosenberg, F. Vaughan „Grasshopper: An Orthogonally Persistent Operating System“, Computer Systems, Vol 7(3), Summer 1994
Dearle, A., D. Hulse „Operating System Support for Persistent Systems: Past, present and Future“, awaiting publication, 2000
Hardy, N. „The KeyKOS Architecture“ Operating System Review, 1985
Landau, C.R., „The Checkpoint Mechanism in KeyKOS“ Proceedings of the 2nd International Workshop on Object Orientation in Operating Systems, IEEE, 1992
Liedtke, J., „A Persistent System in Real Use-Experiences of the First 13 Years“ Proceedings of the 3rd International Workshop on Object-Orientation in Operating Systems, North Carolina, 1993
Lindström, A., A. Dearle, R. di Bona, S. Norris, J. Rosenberg, F. Vaughan „Persistence in the Grasshopper Kernel“ Proceedings of the Eighteenth Australasian Computer Science Conference, ACSC-18, ed. Ramamohanarao Kotagiri, Glenelg, South Australia, February 1995
Rosenberg, J. „The MONADS Architecture: A Layered View“ 4th International Workshop on Persistent Object Systems, eds A. Dearle, G.M. Shaw and S.B. Zdonik, Morgan Kaufmann, 1990
Rosenberg, J., M.J. Flanagan, S.R. Norris, A. Patterson, Persistent Systems Research Group, Universities of Sydney and Monash, personal communications, Melbourne, July 1998
Shapiro, J.S., J.M. Smith, D.J. Farber „EROS: A Fast Capability System“ 17th ACM Symposium on Operating Systems Principles, 1999
Skoglund E., J. Liedtke „Transparent Orthogonal Checkpointing Through User-Level Pagers“, awaiting publication, 2000
Tullmann P., J. Lepreau, B. Ford, M. Hibler „User-Level Checkpointing Through Exportable Kernel State“ Proceedings of 5th International Workshop on Object Orientation in Operating Systems, Seattle, 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
Bem, E.Z., Rosenberg, J. (2001). An Approach to Implementing Persistent Computations. 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_17
Download citation
DOI: https://doi.org/10.1007/3-540-45498-5_17
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