Reflections on an operating system design
1976, Communications of the ACM
https://doi.org/10.1145/360051.360074Abstract
The main features of a general purpose multiaccess operating system developed for the CDC 6400 at Berkeley are presented, and its good and bad points are discussed as they appear in retrospect. Distinctive features of the design were the use of capabilities for protection, and the organization of the system into a sequence of layers, each building on the facilities provided by earlier ones and protecting itself from the malfunctions of later ones. There were serious problems in maintaining the protection between layers when levels were added to the memory hierarchy; these problems are discussed and a new solution is described.
Key takeaways
AI
AI
- The Cal system for CDC 6400 showcased layered design with capabilities for protection and interaction.
- It aimed to support 200 simultaneous users while balancing batch and interactive workloads.
- Memory hierarchy issues arose when adding layers, affecting protection between them.
- The project faced management challenges, resulting in inefficiencies and design flaws due to inexperience.
- The system ultimately supported 15 users, with 18 crashes recorded during its operation.
References (17)
- Bobrow, D.G., et al. Tenex: a paged time-sharing system for the PDP-10. Comm. ACM 15, 3 (March 1972), 135-143.
- Brinch Hansen, P. The nucleus of a multiprogramming system. Comm. ACM 13, 4, (April 1970), 238-241,250.
- Dahl, O-J., and Hoare, C.A.R. Hierarchical program struc- tures.
- In Structured Programming, Academic Press, New York, 1972.
- England, D.M. Capability concept, mechanisms and structure in system 250. Symp. on Protection in Operating Systems. IRIA, Rocquencourt 78150 Le Chesnay, France, Aug. 1974, pp. 68-82.
- Fabry, R.S. Capability-based addressing. Comm. ACM 17, 7 (July 1974), 403-412.
- Gray, J., et al. The control structure of an operating system. IBM Research Rep. RC 3949, Watson Research Center, Yorktown Heights, N.Y., July 1972.
- Lampson, B.W., et al. A user machine in a time-sharing system. Proc. IEEE54, 12, (Dec. 1966), 1766-1774.
- Lampson, B.W. Dynamic protection structures. AFIPS Conf. Proc., Vol. 35, 1969 FJCC, AFIPS Press, Montvale, N.J. 1969, pp. 27-28.
- Lampson, B.W. On reliable and extendable operating systems. State of the Art Report, Vol. 1, Infotech Ltd., Maiden- head, Berkshire, England, 1971.
- Lampson, B.W., et al. On the transfer of control between contexts. In Lecture Notes on Computer Science, Vol. 19, Springer-Verlag, Berlin, 1974.
- Meyer, R.A., and Seawright, L.H. A virtual machine time sharing system. IBM Systems J. 9, 3 (1970), 199-218.
- Morris, J.H. Protection in programming languages. Comm. ACM16, 1 (Jan. 1973), 15-21.
- Schroeder, M.D., and Saltzer, J.H. A hardware architecture for implementing protection rings. Comm. ACM 15, 3 (March 1972), 157-170.
- Sturgis, H.E. A Post-mortem for a time-sharing system. Ph.D. Th., U. of California, Berkeley, and Rep. CSL 74-1, Xerox Research Center, Palo Alto, Calif., Jan. 1974.
- Wulf, W., et al. Hydra: The kernel ofa multiprocessor operating system. Comm. ACM 17, 6 (June 1974), 337-345.
- Wulf, W., et al. Overview of the Hydra operating system development. Operating Systems Rev. 9, 5 (Nov. 1975),122-131.