Abstract
This work presents several approaches for designing the memory management component of self-stabilizing operating systems. We state the requirements which a memory manager should satisfy. One requirement is eventual memory hierarchy consistency among different copies of data residing in different (level of) memory devices e.g., ram and disk. Another requirement is stabilization preserving where the memory manager ensures that every process that is proven to stabilize independently, also stabilizes under the (self-stabilizing scheduler and the) memory manager operation. Three memory managers that satisfy the above requirements are presented. The first allocates the entire physical memory to a single process in every given point of time, the second uses fixed partition of the memory among processes, and the last uses memory leases for dynamic memory allocations.
Partially supported by Rafael, Microsoft, IBM, NSF, Intel, Deutsche Telekom, Rita Altura Trust Chair in Computer Sciences and Lynn and William Frankel Center for Computer Sciences.
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
Baker, M., Sullivan, M.: The Recovery Box: Using Fast Recovery to Provide High Availability in the UNIX Environment. In: Proceedings of the Summer 1992 USENIX Conference, Texas (June 1992)
Belady, L.A., Parmelee, R.P., Scalzi, C.A.: The IBM History of Memory Management Technology. IBM Journal of Research and Development 25(5), 491–504 (1981)
Bochs IA-32 Emulator Project, http://bochs.sourceforge.net/
Brukman, O., Dolev, S., Kolodner, H.: Self-Stabilizing Autonomic Recoverer for Eventual Byzantine Software. In: Proceedings of IEEE International Conference on Software-Science Technology & Engineering (SwSTE 2003), Israel (2003)
Castro, M., Liskov, B.: Proactive Recovery in a Byzantine-Fault-Tolerant System. In: Proceedings of the Fourth Symposium on Operating Systems Design and Implementation, San Diego, CA, pp. 273–288 (October 2000)
Daley, R.C., Dennis, J.B.: Virtual memory, processes, and sharing in Multics. In: Proceedings of the first ACM symposium on Operating System Principles, Gatlinburg, TN, pp. 12.1-12.8 (January 1967)
Dijkstra, E.W.: Self-Stabilizing Systems in Spite of Distributed Control. Communications of the ACM 17(11), 643–644 (1974)
Dolev, S.: Self-Stabilization. The MIT Press, Cambridge (2000)
Dolev, S., Haviv, Y.A.: Self-Stabilizing Soft Error Resilient Microprocessor. In: Müller-Schloer, C., Ungerer, T., Bauer, B. (eds.) ARCS 2004. LNCS, vol. 2981, pp. 31–46. Springer, Heidelberg (2004); Also to appear in IEEE Transaction on computers
Dolev, S., Yagel, R.: Toward Self-Stabilizing Operating Systems. In: Proceedings of the 15th International Conference on Database and Expert Systems Applications, 2nd International Workshop on Self-Adaptive and Autonomic Computing Systems (SAACS 2004, DEXA), Zaragoza, Spain, pp. 684–688 (August 2004)
Dolev, S., Yagel, R.: Memory Management for Self-Stabilizing Operating Systems. Technical report, #05-05, Computer Science, Ben-Gurion University, Beer-Sheva, Israel (June 2005)
IBM. Autonomic computing initiative (2001), http://www.research.ibm.com/autonomic
Intel Corporation. The IA-32 Intel Architecture Software Developer’s Manual (2005), http://developer.intel.com/design/pentium4/documentation.htm
Kistler, M., Shivakumar, P., Alvisi, L., Burger, D., Keckler, S.: Modeling the effect of technology trends on the soft error rate of combinational logic. In: ICDSN. LNCS, vol. 72, pp. 216–226 (2002)
Lamport, L., Shostak, R., Pease, M.: The Byzantine Generals Problem. ACM Trans. on Programming Languages and Systems 4(3), 382–401 (1982)
The Netwide Assembler, http://nasm.sourceforge.net
Patterson, D., Brown, A., Broadwell, P., Candea, G., Chen, M., Cutler, J., Enriquez, P., Fox, A., Kiciman, E., Merzbacher, M., Oppenheimer, D., Sastry, N., Tetzlaff, W., Traupman, J., Treuhaft, N.: Recovery Oriented Computing(ROC): Motivation, definition, techniques and case studies., UC Berkeley Computer Science Technical Report UCB/CSD-02-1175, Berkeley, CA (March 2002)
Saltzer, J.H.: Protection and the control of information sharing in multics. Communications of the ACM 17(7), 388–402 (1974)
Swift, M.M., Bershad, B.N., Levy, H.M.: Improving the reliability of commodity operating systems. In: Proceedings of the 19th ACM Symposium on Operating Systems Principles - SOSP 2003, Bolton Landing, NY (October 2003)
Sun Microsystems, Inc., Predictive Self-Healing in the SolarisTM10 Operating System, White paper (September 2004), http://www.sun.com/software/whitepapers/solaris10/self_healing.pdf
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dolev, S., Yagel, R. (2005). Memory Management for Self-stabilizing Operating Systems. In: Tixeuil, S., Herman, T. (eds) Self-Stabilizing Systems. SSS 2005. Lecture Notes in Computer Science, vol 3764. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11577327_8
Download citation
DOI: https://doi.org/10.1007/11577327_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29814-4
Online ISBN: 978-3-540-32123-1
eBook Packages: Computer ScienceComputer Science (R0)