article

Distributed operating systems

Abstract

Distributed operating systems have many aspects in common with centralized ones, but they also differ in certain ways. This paper is intended as an introduction to distributed operating systems, and especially to current university research about them. After a discussion of what constitutes a distributed operating system and how it is distinguished from a computer network, various key design issues are discussed. Then several examples of current research projects are examined in some detail, namely, the Cambridge Distributed Computing System, Amoeba, V, and Eden.

References

  1. ADAMS, C. J., ADAMS, G. C., WATERS, A. G., LESLIE, I., AND KIRK, P. 1982. Protocol architecture of the UNIVERSE project. In Proceedings of the 6th International Conference on Computer Communication (London, Sept. 7-10). International Conference for Computer Communication, pp. 379- 383.Google ScholarGoogle Scholar
  2. ALMES, G. T., BLACK, A. P., LAZOWSKA, E. D., AND NOE, J. D. 1985. The Eden system: A technical review. IEEE Trans. Softw. Eng. SE-11 (Jan.), 43-59.Google ScholarGoogle Scholar
  3. ANDERSON, T., AND LEE, P. A. 1981. Fault Tolerance, Principles and Practice. Prentice-Hall International, London. Google ScholarGoogle Scholar
  4. AVIZIENIS, A., AND CHEN, L. 1977. On the implementation of N-version programming for software fault-tolerance during execution. In Proceedings of the International Computer Software and Applications Conference. IEEE, New York, pp. 149-155.Google ScholarGoogle Scholar
  5. AVIZIENIS, A., AND KELLY, J. 1984. Fault tolerance by design diversity. Computer 17 (Aug.), 66-80.Google ScholarGoogle Scholar
  6. BAL, H. E., VAN RENESSE, R., AND TANENBAUM, A. S. 1985. A distributed, parallel, fault tolerant computing system. Rep. IR-106, Dept. of Mathematics and Computer Science, Vrije Univ., The Netherlands, Oct.Google ScholarGoogle Scholar
  7. BALL, J. E., FELDMAN, J., LOW, R., RASHID, R., AND ROVNER, P. 1976. RIG, Rochester's intelligent gateway: System overview. IEEE Trans. Softw. Eng. SE-2 (Dec.), 321-329.Google ScholarGoogle Scholar
  8. BARAK, A., AND SHILOH, A. 1985. A distributed loadbalancing policy for a multicomputer. Softw. Pract. Exper. 15 (Sept.), 901-913. Google ScholarGoogle Scholar
  9. BIRMAN, K. P., AND ROWE, L. A. 1982. A local network based on the UNIX operating system. IEEE Trans. Softw. Eng. SE-8 (Mar.), 137-146.Google ScholarGoogle Scholar
  10. BIRRELL, A. D. 1985. Secure communication using remote procedure calls. A CM Trans. Comput. Syst. 3, 1 (Feb.), 1-14. Google ScholarGoogle Scholar
  11. BIRRELL, A. D., AND NEEDHAM, R. M. 1980. A universal file server. IEEE Trans. Softw. Eng. SE-6, (Sept.), 450-453.Google ScholarGoogle Scholar
  12. BIRRELL, A. D., AND NELSON, B. J. 1984. Implementing remote procedure calls. ACM Trans. Comput. Syst. 2, 1 (Feb.), 39-59. Google ScholarGoogle Scholar
  13. BIRRELL, A. D., LEVIN, R., NEEDHAM, R. M., AND SCHROEDER, M. 1982. Grapevine: An exercise in distributed computing. Commun. A CM 25, 4 (Apr.), 260-274. Google ScholarGoogle Scholar
  14. BIRRELL, A. D., LEVIN, R., NEEDHAM, R. M., AND SCHROEDER, M. 1984. Experience with Grapevine: The growth of a distributed system. ACM Trans. Comput. Syst. 2, 1 (Feb.), 3-23. Google ScholarGoogle Scholar
  15. BLACK, A. P. 1983. An asymmetric stream communications system. Oper. Syst. Rev. (ACM) 17, 5, 4-10. . Google ScholarGoogle Scholar
  16. BLACK, A. P. 1985. Supporting distributed applications: Experience with Eden. In Proceedings of the l Oth Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 181-193. Google ScholarGoogle Scholar
  17. BOGGS, D. R., SCHOCH, J. F., TAFT, E. A., Afro METCALFE, R. M. 1980. Pup: An internetwork architecture. IEEE Trans. Cornmun. COM-28 (Apr.), 612-624.Google ScholarGoogle Scholar
  18. BORG, A., BAUMBACH, J., AND GLAZER, S. 1983. A message system supporting fault tolerance. Oper. Syst. Rev. (ACM) 17, 5, 90-99. Google ScholarGoogle Scholar
  19. BROWN, M. R., KOLLING, K. N., AND TAFT. E. A. 1985. The Alpine file system. ACM Trans. Cornput. Syst. 3, 4 (Nov.), 261-293. Google ScholarGoogle Scholar
  20. BROWNBRIDGE, D. R., MARSHALL, L. F., AND RANDELL, B. 1982. The Newcastle connection-Or UNIXES of the world unite! Softw. Pract. Exper. 12 (Dec.), 1147-1162.Google ScholarGoogle Scholar
  21. BRYANT, R. M., AND FINKEL, R. A. 1981. A stable distributed scheduling algorithm. In Proceedinks of the 2nd International Conference on Distributed Computer Systems (Apr.). IEEE, New York, pp. 314-323.Google ScholarGoogle Scholar
  22. CHANDY, K. M., MISRA, J., AND HAAS, L. M. 1983. Distributed deadlock detection. ACM Trans. Comput. Syst. 1, 2 (May), 145-156. Google ScholarGoogle Scholar
  23. CHERITON, D. R. 1982. The Thoth System: Multi- Process Structuring and Portability. American Elsevier, New York. Google ScholarGoogle Scholar
  24. CHERITON, D. R. 1984a. An experiment using registers for fast message-based interprocess communication. Oper. Syst. Rev. 18 (Oct.), 12-20. Google ScholarGoogle Scholar
  25. CHERITON, D. R. 1984b. The V kernel: A software base for distributed systems. IEEE Softw. 1 (Apr.), 19-42.Google ScholarGoogle Scholar
  26. CHERITON, D. R., AND MANN, T. P. 1984. Uniform access to distributed name interpretation in the V system. In Proceedings of the 4th International Conference on Distributed Computing Systems. IEEE, New York, pp. 290-297.Google ScholarGoogle Scholar
  27. CHERITON, D. R., AND ZWAENEPOEL, W. 1983. The distributed V kernel and its performance for diskless workstations. In Proceedings of the 9th Symposium on Operating System Principles. ACM, New York, pp. 128-140. Google ScholarGoogle Scholar
  28. CHERITON, D. R., AND ZWAENEPOEL, W. 1984. One-to-many interprocess communication in the V-system. In SIGCOMM '84 Tutorials and Symposium on Communications Architectures and Protocols (Montreal, Quebec, June 6-8). ACM, New York. Google ScholarGoogle Scholar
  29. CHERITON, D. R., MALCOLM, M. A., MELEN, L. $., AND SAGER, G. R. 1979. Thoth, a portable realtime operating system. Commun. A CM 22, 2 (Feb.), 105-115. Google ScholarGoogle Scholar
  30. CHESSON, G. 1975. The network UNIX system. In Proceedings of the 5th Symposium on Operating Systems Principles (Austin, Tex., Nov. 19-21). ACM, New York, pp. 60-66. Google ScholarGoogle Scholar
  31. CHOW, T. C. K., AND ABRAHAM, J. A. 1982. Load balancing in distributed systems. IEEE Trans. So{tw. Eng. SE-8 (July), 401-412.Google ScholarGoogle Scholar
  32. CHOW, Y. C., AND KOHLER, W. H. 1979. Models for dynamic load balancing in heterogeneous multipie processor systems. IEEE Trans. Comput. C-28 (May), 354-361.Google ScholarGoogle Scholar
  33. CHU, W. W., HOLLOWAY, L. J., M~N-TSUNG, L., AND ErE, K. 1980. Task allocation in distributed data processing. Computer 13 (Nov.), 57-69.Google ScholarGoogle Scholar
  34. CURTIS, R. S., AND WITTIE, L. D. 1984. Global naming in distributed systems. IEEE So{tw. 1, 76-80.Google ScholarGoogle Scholar
  35. DALAL, Y. K. 1977. Broadcast protocols in packet switched computer networks. Ph.D. Dissertation, Computer Science Dept., Stanford Univ., Stanford, Calif. Google ScholarGoogle Scholar
  36. DELLAR, C. 1982. A file server for a network of low-cost personal microcomputers. Softw. Pract. Exper. 12 (Nov.), 1051-1068.Google ScholarGoogle Scholar
  37. DENNIS, J. B., AND VAN HORN, E. C. 1966. Programming semantics for multiprogrammed computations. Commun. ACM 9, 3 (Mar.), 143- 154. Google ScholarGoogle Scholar
  38. DEWITT, D. J., FINKEL, R. A., AND SOLOMON, M. 1984. The CRYSTAL multicomputer: Design and implementation experience. Tech. Rep. TR- 553, Computer Science Dept., Univ. of Wisconsin, Madison, Wis.Google ScholarGoogle Scholar
  39. DION, J. 1980. The Cambridge file server. Oper. Syst. Re~. (ACM) 14 (Oct.), 41-49. Google ScholarGoogle Scholar
  40. EFE, K. 1982. Heuristic models of task assignment scheduling in distributed systems. Computer 15 (June), 50-56.Google ScholarGoogle Scholar
  41. ESWARAN, K. P., GRAY, J. N., Loam, J. N., AND TRAIGER, I. L. 1976. The notions of consistency and predicate locks in a database system. Commun. ACM 19, 11 (Nov.), 624-633. Google ScholarGoogle Scholar
  42. FARBER, D. J., AND LARSON, K. C. 1972. The system architecture of the distributed computer system-The communications system. In Proceedings of the Symposium on Computer Networks (Brooklyn, Apr.). Polytechnic Inst. of Brooklyn, Brooklyn, N.Y.Google ScholarGoogle Scholar
  43. FINKEL, R. A., SOLOMON, M. H., AND TISCHLER, R. 1979. The Roscoe resource manager. COMP- CON 79 Digest of Papers (Feb.). IEEE, New York, pp. 88-91.Google ScholarGoogle Scholar
  44. FITZGERALD, R., AND RASHID R. 1985. The integration of virtual memory management and interprocess communication in Accent. In Proceedings of the 10th Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 13-14. Google ScholarGoogle Scholar
  45. FRIDRICH, M., AND OLDER, W. 1981. The Felix file server. In Proceedings of the 8th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 14-16). ACM, New York, pp. 37-44. Google ScholarGoogle Scholar
  46. FRIDRICH, M., AND OLDER, W. 1984. HELIX: The architecture of a distributed file system, in Proceedings of the 4th International Conference on Distributed Computing Systems. IEEE, New York, pp. 422-431.Google ScholarGoogle Scholar
  47. GAGLIANELLO, R. D., AND KATSEFF, H. P. 1985. Meglos: An operating system for a multiprocessor environment. In Proceedings of the 5th International Conference on Distributed Computing Systems (May). IEEE, New York, pp. 35-42.Google ScholarGoogle Scholar
  48. GUGOR, V. D., AND SHATTUCK, S. H. 1980. Deadlock detection in distributed systems. IEEE Trans. Softw. Eng. SE-6 (Sept.), 435-440.Google ScholarGoogle Scholar
  49. GYLYS, V. B., AND EDWARDS, J. A. 1976. Optimal partitioning of workload for distributed systems. In Proceedings of COMPCON (Sept.). IEEE, New York, pp. 353-357.Google ScholarGoogle Scholar
  50. HWANG, K., CROFT, W. J., GOBLE, G. H. WAH, B. W., BRIGGS, F. A., SIMMONS, W. R., AND COATES, C. L. 1982. A UNIX-based local computer network. Computer 15 (Apr.), 55-66.Google ScholarGoogle Scholar
  51. ISLOOR, s. S., AND MARSLAND, T. A. 1978. An elfective on-line deadlock detection technique for distributed database management systems. In Proceedings of the International Computer and Software Application Conference. IEEE, New York, pp. 283-288.Google ScholarGoogle Scholar
  52. JANSON, P., SVOBODOVA, L., AND MAEHLE, E. 1983. Filing and printing services in a local area network. In Proceedings of the 8th Data Commu~ nications Symposium (Cape Cod, Mass., Oct. 3-6). IEEE, New York, pp. 211-219. Google ScholarGoogle Scholar
  53. JEFFERSON, D. R. 1985. Virtual time. ACM Trans. Program. Lang. Syst. 7 (July), 404-425. Google ScholarGoogle Scholar
  54. JENSEN, E. D. 1978. The Honeywell experimental distributed processor~An overview of its objective, philosophy and architectural facilities. Compurer 11 (Jan), 28-38.Google ScholarGoogle Scholar
  55. JESSOP, W. H., JACOBSON, D. M., NOE, J. D., BAER, J.-L., AND PU, C. 1982. The Eden transactionbased file system. In Proceedings of the 2nd Symposium on Reliability in Distributed Software and Database Systems (July). IEEE, New York, pp. 163-169.Google ScholarGoogle Scholar
  56. KRUEGER, P., ANO FINKEL, R. A. 1983. An adaptive load balancing algorithm for a multicomputer. Unpublished manuscript, Computer Science Dept., Univ. of Wisconsin.Google ScholarGoogle Scholar
  57. LAMPORT, L. 1978. Time, clocks, and the ordering of events in a distributed system. Commun. A CM 21, 7 (July), 558-565. Google ScholarGoogle Scholar
  58. LAMPORT, L. 1984. Using time instead of timeout for fault-tolerant distributed systems. ACM Trans. Program. Lang. Syst. 6 (Apr.), 254-280. Google ScholarGoogle Scholar
  59. LAMPSON, B. W. 1981. Atomic transactions. In Distributed SystemswArchitecture and Implementation, B. W. Lampson, Ed. Springer-Verlag, Berlin and New York, pp. 246-265. Google ScholarGoogle Scholar
  60. LAZOWSKA, E. D., LEVY, H. M., ALMES, G. T., FISCHER, M. J., FOWLER, R. J., AND VESTAL, S. C. 1981. The architecture of the Eden system. In Proceedings of the 8th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 14- 16). ACM, New York, pp. 148-159. Google ScholarGoogle Scholar
  61. LEVY, H. M. 1984. Capability-Based Computer Systerns. Digital Press, Maynard, Mass. Google ScholarGoogle Scholar
  62. LISKOV, B. 1982. On linguistic support for distributed programs. IEEE Trans. So{tw. Eng. SE-8 (May), 203-210.Google ScholarGoogle Scholar
  63. LISKOV, B. 1984. Overview of the Argus language and system. Programming Methodology Group Memo 40. Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, Mass., Feb.Google ScholarGoogle Scholar
  64. LISKOV, B., AND SCHEIFLER, R. 1982. Guardians and actions: Linguistic support for robust, distributed programs. ACM Trans. Program. Lang. Syst. 5, 3 (July), 381-404. 1983. ACM, pp. 7-19, Jan. 1982. Google ScholarGoogle Scholar
  65. LO, V. M. 1984. Heuristic algorithms for task assignment in distributed systems. In Proceedings of the 4th International Conference on Distributed Computing Systems. iEEE, New York, pp. 30-39.Google ScholarGoogle Scholar
  66. LUDERER, G. W. R., CHE, H., HAGGERTY, J. P., KIRSLiS, P. A., AND MARSHALL, W. T. 1981. A distributed UNIX system based on a virtual circuit switch. In Proceedings of the 8th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 14-16). ACM, New York, pp. 160- 168. Google ScholarGoogle Scholar
  67. MAMRAK, S. A., MAURATH, P., GOMEZ, J., JANARDAN, S., ANO NICHOLAS, C. 1982. Guest layering distributed processing support on local operating systems. In Proceedings of the 3rd International Conference on Distributed Computing Systems. IEEE, New York, pp. 854-859.Google ScholarGoogle Scholar
  68. MARZULLO, K., AND OWICKI, S. 1985. Maintaining the time in a distributed system. Oper. Syst. Rev. 19 (July), 44-54. Google ScholarGoogle Scholar
  69. MENASCE, D., AND MUNTZ, R. 1979. Locking and deadlock detection in distributed databases. IEEE Trans. Softw. Eng. SE-5 (May), 195-202.Google ScholarGoogle Scholar
  70. MILLSTEIN, R. E. 1977. The national software works. In Proceedings of the ACM Annual Conference (Seattle, Wash., Oct. 16-19). ACM, New York, pp. 44-52. Google ScholarGoogle Scholar
  71. MITCHELL, J. G., AND DION, J. 1982. A comparison of two network-based file servers. Commun. ACM 25, 4 (Apr.), 233-245. Google ScholarGoogle Scholar
  72. MOHAN, C. K., ANO WITTIE, L. D. 1985. Local reconfiguration of management trees in large networks. In Proceedings of the 5th International Conference on Distributed Computing Systems (May). IEEE, New York, pp. 386-393.Google ScholarGoogle Scholar
  73. MULLENDER, S. J., AND TANENBAUM, A. S. 1984. Protection and resource control in distributed operating systems. Comput. Networks 8 (Nov.), 421-432.Google ScholarGoogle Scholar
  74. MULLENDER, S. J., AND TANENBAUM, A. S. 1985. A distributed file service based on optimistic concurrency control. In Proceedings of the lOth Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 51-62. Google ScholarGoogle Scholar
  75. MULLENDER, S. J., AND TANENBAUM, A. S. 1986. The design of a capability-based distributed operating system. Computer J. (in press).Google ScholarGoogle Scholar
  76. NEEDHAM, R. M., AND HERBERT, A. J. 1982. The Cambridge Distributed Computing System. Addison-Wesley, Reading, Mass.Google ScholarGoogle Scholar
  77. NELSON, B. J. 1981. Remote procedure call. Tech. Rep. CSL-81-9, Xerox Palo Alto Research Center, Palo Alto, Calif.Google ScholarGoogle Scholar
  78. OBERMARCK, R. 1982. Distributed deadlock detection algorithm. ACM Trans. Database Syst. 7 (June), 187-208. Google ScholarGoogle Scholar
  79. OKI, B. M., LIsKov, B. H., A~O SCHEIFLER, R. W. 1985. Reliable object storage to support atomic actions. In Proceedings of the l Oth Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 147-159. Google ScholarGoogle Scholar
  80. OUSTERHOUT, J. K. 1982. Scheduling techniques for concurrent systems. In Proceedings of the 3rd International Conference on Distributed Computing Systems. IEEE, New York, pp. 22-30.Google ScholarGoogle Scholar
  81. PASHTAN, A. 1982. Object oriented operating systems: An emerging design methodology. In Proceedings of the A CM National Conference (Dallas, Tex., Oct. 25-27). ACM, New York, pp. 126-131. Google ScholarGoogle Scholar
  82. POPEK, G., WALKER, B., CHOW, J., EDWARDS, D., KLINE, C., RUOlSlN, G., ANO THIEL, G. 1981. LOCUS: A network transparent, high reliability distributed system. In Proceedings of the 8th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 14-16). ACM, New York, pp. 160-168. Google ScholarGoogle Scholar
  83. POWELL, M. L., AND MILLER, B. P. 1983. Process migration in DEMOS/MP. Oper. Syst. Rev. (ACM) 17, 5, 110-119. Google ScholarGoogle Scholar
  84. POWELL, M. L., AND PRESOTTO, D. L. 1983. Publishing--A reliable broadcast communication mechanism. Oper. Syst. Rev. (ACM) 17, 5, 100- 109. Google ScholarGoogle Scholar
  85. PU, C., ANO NOE, J. D. 1985. Nested transactions for general objects. Rep. TR-85-12-03, Computer Science Dept., Univ. of Washington, Seattle, Wash.Google ScholarGoogle Scholar
  86. PU, C., NOF., J. D., AND P~OUOFOOT, A. 1986. Regeneration of replicated objects: A technique and its Eden implementation. In Proceedings of the 2nd International Conference on Data Engineering (Los Angeles, Calif., Feb. 4-6). IEEE, New York, pp. 175-187. Google ScholarGoogle Scholar
  87. RASHID, R. F., ANO ROBERTSON, G. G. 1981. Accent: A communication oriented network operating system kernel. In Proceedings of the 8th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 14-16). ACM, New York, pp. 64-75. Google ScholarGoogle Scholar
  88. REED, D. P. 1983. Implementing atomic actions on decentralized data. ACM Trans. Comput. Syst. 1, 1 (Feb.), 3-23. Google ScholarGoogle Scholar
  89. REED, D. P., AND SVOBODOVA, L. 1981. SWALLOW: A distributed data storage system for a local network. In Local Networks for Computer Communications, A. West and P. Janson, Eds. North-Holland Publ., Amsterdam, pp. 355- 373.Google ScholarGoogle Scholar
  90. REIF, J. H., AND SPIRAKIS, P. G. 1984. Real-time synchronization of interprocess communications. ACM Trans. Program. Lang. Syst. 6, 2 (Apr.), 215-238. Google ScholarGoogle Scholar
  91. RITCHIE, D. M., AND THOMPSOt~, K. 1974. The UNIX time-sharing system. Commun. A CM 19, 7 (July), 365-375. Google ScholarGoogle Scholar
  92. SALTZER, J. H., REED, D. P., AND CLARK, D. D. 1984. End-to-end arguments in system design. ACM Trans. Comput. Syst. 2, 4 (Nov.), 277-278. Google ScholarGoogle Scholar
  93. SATYANARAYANAN, M., HOWARD, J., NICHOLS, D., SIDEBOTHAM, R., SPECTOR, A., AND WEST, M. 1985. The ITC distributed file system: Principies and design. In Proceedings of the lOth Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 35-50. Google ScholarGoogle Scholar
  94. SCHROEOER, M., GIFFORO, D., ANO NEEDHAM, R. 1985. A caching file system for a programmer's workstation. In Proceedings of the l Oth Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 25-34. Google ScholarGoogle Scholar
  95. SMITH, R. 1979. The contract net protocol: Highlevel communication and control in a distributed problem solver. In Proceedings o/the 1st International Con/erence on Distributed Computing Systems. IEEE, New York, pp. 185-192.Google ScholarGoogle Scholar
  96. SOLOMON, M. H., ANO FINKEL, R. A. 1978. ROSCOE: A multimicrocomputer operating systern. In Proceedings o/the 2nd Rocky Mountain Symposium on Microcomputers (Aug.), pp. 201- 210.Google ScholarGoogle Scholar
  97. SOLOMON, M. H., AND FINKEL, R. A. 1979. The Roscoe distributed operating system. In Proceedings of the 7th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 10-12). ACM, New York, pp. 108-114. Google ScholarGoogle Scholar
  98. SPECTOR, A. Z. 1982. Performing remote operations efficiently on a local computer network. Commun. ACM 25, 4 (Apr.), 246-260. Google ScholarGoogle Scholar
  99. STANKOVIC, J. A., AND SIDHU, I. S. 1984. An adaptive bidding algorithm for processes, clusters, and distributed ups. In Proceedings o/the 4th International Conference on Distributed Computing Systems. IEEE, New York, pp. 49-59.Google ScholarGoogle Scholar
  100. STONE, H. S. 1977. Multiprocessor scheduling with the aid of network flow algorithms. IEEE Trans. So{tw. Eng. SE-3 (Jan.), 88-93.Google ScholarGoogle Scholar
  101. STONE, H. S. 1978. Critical load factors in distributed computer systems. IEEE Trans. Softw. Eng. SE-4 (May), 254-258.Google ScholarGoogle Scholar
  102. STONE, H. S., AND BOKHARI, S. H. 1978. Control of distributed processes. Computer 11 (July), 97-106.Google ScholarGoogle Scholar
  103. STONEBRAKER, M. 1981. Operating system support for database management. Commun. ACM 24, 7 (July), 412-418. Google ScholarGoogle Scholar
  104. STURGIS, H. E., MITCHELL, J. G., AND ISRAEL, J. 1980. Issues in the design and use of a distributed file system. Oper. Syst. Rev. 14 (July), 55-69. Google ScholarGoogle Scholar
  105. SVENTEK, J., GREIMAN, W., O'DELL, M., AND JANSEN, A. 1983. Token ring local networks-- A comparison of experimental and theoretical performance. Lawrence Berkeley Lab. Rep. 16254.Google ScholarGoogle Scholar
  106. SVOBOOOVA, L. 1981. A reliable object-oriented data repository for a distributed computer system. In Proceedings of the 8th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 14- 16). ACM, New York, pp. 47-58. Google ScholarGoogle Scholar
  107. SVOBOOOVA, L. 1984. File servers for network-based distributed systems. A CM Comput. Surv. 16, 4 (Dec.), 353-398. Google ScholarGoogle Scholar
  108. SWlNEHART, D., MCDANIEL, G., AND BOGGS, D. 1979. WFS: A simple shared file system for a distributed environment. In Proceedings of the 7th Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 10-12). ACM, New York, pp. 9-17. Google ScholarGoogle Scholar
  109. TANENBAUM, A. S., AND MULLENDER, S. J. 1982. Operating system requirements for distributed data base systems. In Distributed Data Bases, H.-J. Schneider, Ed. North-Holland Publ., Amsterdam, pp. 105-114.Google ScholarGoogle Scholar
  110. TANENBAUM, A. S., MULLENDER, S. J., AND VAN RENF. SSE, R. 1986. Using sparse capabilities in a distributed operating system. In Proceedings of the 6th International Conference on Distributed Computer Systems. IEEE, New York, 1986, pp. 558-563.Google ScholarGoogle Scholar
  111. VAN TILBORG, A. M., AND WITTIE, L. D. 1981. Wave scheduling: Distributed allocation of task forces in network computers. In Proceedings of the 2nd International Conference on Distributed Computing Systems. IEEE, New York, pp. 337-347.Google ScholarGoogle Scholar
  112. WALKER, B., POPEK, G., ENGLISH, R., KLINE, C., AND THIEL, G. 1983. The LOCUS distributed operating system. Oper. Syst. Rev. (ACM) 17, 5, 49-70. Google ScholarGoogle Scholar
  113. WAMBECQ, A. 1983. NETIX: A network-using operating system, based on UNIX software. In Proceedings of the NFWO-ENRS Contact Group (Leuven, Belgium, Mar.).Google ScholarGoogle Scholar
  114. WEINSTEIN, M. J., PAGE, T. W., JR., LIVESEY, B. K., ANO POPEK, G. J. 1985. Transactions and synchronization in a distributed operating system. In Proceedings of the l Oth Symposium on Operating Systems Principles (Orcas Island, Wash., Dec. 1-4). ACM, New York, pp. 115-125. Google ScholarGoogle Scholar
  115. WILKES, M. V., AND NEEDHAM, R. M. 1980. The Cambridge model distributed system. Oper. Syst. Rev. 14 (Jan.), 21-29. Google ScholarGoogle Scholar
  116. WITTIE, L., AND CURTIS, R. 1985. Time management for debugging distributed systems. In Proceedings of the 5th International Conference on Distributed Computing Systems (May). IEEE, New York, pp. 549-551.Google ScholarGoogle Scholar
  117. WITTIE, L. D., AND VAN TILBORG, A. M. 1980. MICROS, a distributed operating system for MI- CRONET, a reconfigurable network computer. IEEE Trans. Comput C-29 (Dec.), 1133-1144.Google ScholarGoogle Scholar
  118. WUPIT, A. 1983. Comparison of UNIX network systems. ACM, New York, pp. 99-108. Google ScholarGoogle Scholar
  119. ZIMMERMANN, H. 1980. OSI reference model--The iSO model of architecture for open systems interconnection. IEEE Trans. Commun. COM-28 (Apr.), 425-432.Google ScholarGoogle Scholar
  120. ZIMMERMANN, H., BAN~NO, J.-S., C^RISTAN, A., GUiLLEMONT, M., AND MORISSET, G. 1981. Basic concepts for the support of distributed systems: The chorus approach. In Proceedings of the 2nd International Conference on Distributed Computing Systems. IEEE, New York, pp. 6O-66.Google ScholarGoogle Scholar

Index Terms

  1. Distributed operating systems

              Reviews

              John George Fletcher

              This paper is a review of the current state of the art in distributed operating systems. It contrasts such a system, in which the “users . . . should not know (or care) on which machine . . .:9- Ttheir programs are running,” with the much less transparent notion of a network operating system. The authors then discuss various principles and techniques relating to the design of such systems, particularly in regard to communication primitives, naming and protection, resource management, fault tolerance, and services provided. It concludes with sketches of four actual distributed systems: the Cambridge distributed computing system, Amoeba, the V Kernel, and the Eden project. On the whole, the paper is accurate, complete, and clear. This reviewer recommends it highly, with the following reservations: (1)The various aspects of a distributed system are perhaps discussed a bit too independently of one another. It is not mentioned how certain concepts fit together and how some concepts solve (or cause) several problems at once. (2)Criticisms of several popular ideas are often too gentle, frequently only being implied. The inefficiency of the OSI design is noted, without mentioning how unnecessary its complexity is. Highly theoretical analyses, particularly in regard to scheduling, are discussed at length, with only a passing phrase or two about their impracticality. Much of the discussion is phrased so as to sound familiar and comforting to UNIX aficionados, until late in the paper a reference is made to “poor performance and a fair amount of effort spent trying to convince UNIX to do things against its will.”

              Access critical reviews of Computing literature here

              Become a reviewer for Computing Reviews.

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!