Report on the Workshop on Fundamental Issues in Distributed Computing
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
The Power of Abstraction
The Power of Abstraction Barbara Liskov March 2013 MIT CSAIL Software is Complex Systems are big and they do complicated things and they may be distributed and/or concurrent Addressing Complexity Algorithms, data structures, protocols Addressing Complexity Algorithms, data structures, protocols Programming methodology Programming languages This Talk Programming methodology as it developed Programming languages Programming languages today The Situation in 1970 The software crisis! Programming Methodology How should programs be designed? How should programs be structured? The Landscape E. W. Dijkstra. Go To Statement Considered Harmful. Cacm, Mar. 1968 The Landscape N. Wirth. Program Development by Stepwise Refinement. Cacm, April 1971 The Landscape D. L. Parnas. Information Distribution Aspects of Design Methodology. IFIP Congress, 1971 “The connections between modules are the assumptions which the modules make about each other.” Modularity A program is a collection of modules Modularity A program is a collection of modules Each module has an interface, described by a specification Modularity A program is a collection of modules Each has an interface, described by a specification A module’s implementation is correct if it meets the specification A using module depends only on the specification Modularity A program is a collection of modules Each has an interface, described by a specification A module’s implementation is correct if it meets the specification A using module depends only on the specification E.g. a sort routine sort(a) Benefits of Modularity Local reasoning Modifiability Independent development The Situation in 1970 Procedures were the only type of module Not powerful enough, e.g., a file system Not used very much Complicated connections Partitions B. -
MIT Turing Laureates Propose Creation of School of Computing an Open Letter to President Rafael Reif
9/26/2017 The Tech OPINION LETTER TO THE EDITOR MIT Turing laureates propose creation of School of Computing An open letter to President Rafael Reif By MIT Turing Laureates | Sep. 20, 2017 Facebook Dear Rafael, Twitter There comes a time, in the course of scientic evolution, when a discipline is ready to emerge from the womb of its parent disciplines and take its own place in the world. For Reddit computer science, or more accurately, for the eld of computing, this moment is now. Print Born from a combination of mathematics and electrical engineering, with the original intent of speeding up calculations, computer science has grown to encompass all information processing and most communications and now to provide an alternative evolutionary path to intelligence. Computer science is rapidly becoming an essential part of most academic disciplines, and students are voting with their feet. One third of MIT undergraduates are majoring in computer science. This trend is unlikely to slow down anytime soon. We, the 7 active MIT Turing Award winners, therefore write this open letter to recommend that you consider the bold step of establishing a School of Computing at MIT. The new school, a brother to the Schools of Engineering and Science, will allow the eld of computing, with its many https://thetech.com/2017/09/20/turing-laureates-open-letter-to-reif 1/4 9/26/2017 The Tech facets and sub-elds, to grow and interact naturally with the Institute’s scientic and engineering environment. The Tech Submit Campus Life Stories Today the study of computation is housed primarily in the EECS department within the School of Engineering, but departments are limited in their ability to hire and grow. -
Packet-Voice Communication on an Ethernet Local Computer Network: an Experimental Study
Packet-Voice Communication on an Ethernet Local Computer Network: an Experimental Study Timothy A. Gonsalves Packet-Voice Communication on an Ethernet Local Computer Network: an Experimental Study Timothy A. Gonsalves CSL·82·5 March 1982 [P82·00034] © Copyright Timothy A. Gonsalves 1982. All rights reserved. Abstract: Local computer networks have been used successfully for data applications such as file transfers for several years. Recently, there have been several proposals for using these networks for voice applications. This paper describes a simple voice protocol for use on a packet-switching local network. This protocol is used in an experimental study of the feasibility of using a 3 Mbps experimental Ethernet network for packet-voice communications. The study shows that with appropriately chosen parameters the experimental Ethernet is capable of supporting about 40 simultaneous 64-Kbps voice conversations with acceptable quality. This corresponds to a utilization of 95% of the network capacity. A version of this paper has been submitted for presentation at the 3rd International Conference on Distributed Computing Systems, Miami, Florida, October 1982. CR Categories: C.2.5, C.4 Key words and Phrases: CSMA/CD, Ethernet, local computer network, measurement, packet-voice, voice communication. Author's Affiliation: Computer Systems Laboratory, Department of Electrical Engineering, Stanford University, Stanford, California 94305. Xerox Corporation XEROX Palo Alto Research Centers 3333 Coyote Hill Road Palo Alto, California 94304 I. Introduction In the past few years. local computer networks for the interconnection of computers and shared resources within a small area such as a building or a campus have rapidly increased in popularity. These networks support applications such as file transfers and electronic mail between autonomous computers. -
Reliable File Transfer Across a 10 Megabit Ethernet
Rochester Institute of Technology RIT Scholar Works Theses 1984 Reliable file transfer across a 10 megabit ethernet Mark Van Dellon Follow this and additional works at: https://scholarworks.rit.edu/theses Recommended Citation Van Dellon, Mark, "Reliable file transfer across a 10 megabit ethernet" (1984). Thesis. Rochester Institute of Technology. Accessed from This Thesis is brought to you for free and open access by RIT Scholar Works. It has been accepted for inclusion in Theses by an authorized administrator of RIT Scholar Works. For more information, please contact [email protected]. Rochester Institute of Technology School of Computer Science and Technology Reliable File Transfer Ac ross A 10 Megabit Ethernet by Mark Van Dellon July 24, 1984 A thesis, submitted to The Faculty of the Computer Science and Technology, in partial fulfillment of the requirements for the degree of Master of Science in Computer Science Approved by: Roy Czernikowski Dr. Roy - Committee Head John Ellis 'Or. John Ellis Tong-han Chang Dr. Tong-han Chang Date fr-was? Copyright 1984. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, for commercial use or profit without the prior written permission of the author. Abstract: The Ethernet communications network is a broadcast, multi-access system for local computing networks. Such a network was used to connect six 68000 based Charles River Data Systems for the purpose of file transfer. Each system required hardware installation and connection to the Ethernet cable. -
Arxiv:1909.05204V3 [Cs.DC] 6 Feb 2020
Cogsworth: Byzantine View Synchronization Oded Naor, Technion and Calibra Mathieu Baudet, Calibra Dahlia Malkhi, Calibra Alexander Spiegelman, VMware Research Most methods for Byzantine fault tolerance (BFT) in the partial synchrony setting divide the local state of the nodes into views, and the transition from one view to the next dictates a leader change. In order to provide liveness, all honest nodes need to stay in the same view for a sufficiently long time. This requires view synchronization, a requisite of BFT that we extract and formally define here. Existing approaches for Byzantine view synchronization incur quadratic communication (in n, the number of parties). A cascade of O(n) view changes may thus result in O(n3) communication complexity. This paper presents a new Byzantine view synchronization algorithm named Cogsworth, that has optimistically linear communication complexity and constant latency. Faced with benign failures, Cogsworth has expected linear communication and constant latency. The result here serves as an important step towards reaching solutions that have overall quadratic communication, the known lower bound on Byzantine fault tolerant consensus. Cogsworth is particularly useful for a family of BFT protocols that already exhibit linear communication under various circumstances, but suffer quadratic overhead due to view synchro- nization. 1. INTRODUCTION Logical synchronization is a requisite for progress to be made in asynchronous state machine repli- cation (SMR). Previous Byzantine fault tolerant (BFT) synchronization mechanisms incur quadratic message complexities, frequently dominating over the linear cost of the consensus cores of BFT so- lutions. In this work, we define the view synchronization problem and provide the first solution in the Byzantine setting, whose latency is bounded and communication cost is linear, under a broad set of scenarios. -
Safe and Efficient Sharing of Persistent Objects in Thor
This paper appears in Proceedings of the 1996 ACM SIGMOD Int. Conf. on Management of Data, Montreal, Canada, June 1996. Note: the pages are numbered 318±329, as in the proceedings. Safe and Ef®cient Sharing of Persistent Objects in Thor B.Liskov, A.Adya, M.Castro, M.Day , S.Ghemawat , R.Gruber , U.Maheshwari, A.C.Myers, L.Shrira Laboratory for Computer Science, Massachusetts Institute of Technology, 545 Technology Square, Cambridge, MA 02139 liskov,adya,castro, , , ,umesh,andru,liuba @lcs.mit.edu Abstract Thor is an object-oriented database system designed for use in a are likely to be accessible despite failures. Thor supports heterogeneous distributed environment. It provides highly-reliable heterogeneity at the levels of the machine, network, operating and highly-available persistent storage for objects, and supports system, and especially the programming language. Programs safe sharing of these objects by applications written in different written in different programming languages can easily share programming languages. objects between different applications, or components of Safe heterogeneous sharing of long-lived objects requires the same application. Furthermore, even when client code encapsulation: the system must guarantee that applications interact is written in unsafe languages (such as C or C++), Thor with objects only by invoking methods. Although safety concerns are important, most object-oriented databases forgo safety to avoid guarantees the integrity of the persistent store. paying the associated performance costs. This paper describes the interface and implementation of This paper gives an overview of Thor's design and implementa- Thor and focuses on a novel aspect of Thor in each area. -
Arxiv:2106.11534V1 [Cs.DL] 22 Jun 2021 2 Nanjing University of Science and Technology, Nanjing, China 3 University of Southampton, Southampton, U.K
Noname manuscript No. (will be inserted by the editor) Turing Award elites revisited: patterns of productivity, collaboration, authorship and impact Yinyu Jin1 · Sha Yuan1∗ · Zhou Shao2, 4 · Wendy Hall3 · Jie Tang4 Received: date / Accepted: date Abstract The Turing Award is recognized as the most influential and presti- gious award in the field of computer science(CS). With the rise of the science of science (SciSci), a large amount of bibliographic data has been analyzed in an attempt to understand the hidden mechanism of scientific evolution. These include the analysis of the Nobel Prize, including physics, chemistry, medicine, etc. In this article, we extract and analyze the data of 72 Turing Award lau- reates from the complete bibliographic data, fill the gap in the lack of Turing Award analysis, and discover the development characteristics of computer sci- ence as an independent discipline. First, we show most Turing Award laureates have long-term and high-quality educational backgrounds, and more than 61% of them have a degree in mathematics, which indicates that mathematics has played a significant role in the development of computer science. Secondly, the data shows that not all scholars have high productivity and high h-index; that is, the number of publications and h-index is not the leading indicator for evaluating the Turing Award. Third, the average age of awardees has increased from 40 to around 70 in recent years. This may be because new breakthroughs take longer, and some new technologies need time to prove their influence. Besides, we have also found that in the past ten years, international collabo- ration has experienced explosive growth, showing a new paradigm in the form of collaboration. -
Introduction to the Literature on Programming Language Design Gary T
Computer Science Technical Reports Computer Science 7-1999 Introduction to the Literature On Programming Language Design Gary T. Leavens Iowa State University Follow this and additional works at: http://lib.dr.iastate.edu/cs_techreports Part of the Programming Languages and Compilers Commons Recommended Citation Leavens, Gary T., "Introduction to the Literature On Programming Language Design" (1999). Computer Science Technical Reports. 59. http://lib.dr.iastate.edu/cs_techreports/59 This Article is brought to you for free and open access by the Computer Science at Iowa State University Digital Repository. It has been accepted for inclusion in Computer Science Technical Reports by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. Introduction to the Literature On Programming Language Design Abstract This is an introduction to the literature on programming language design and related topics. It is intended to cite the most important work, and to provide a place for students to start a literature search. Keywords programming languages, semantics, type systems, polymorphism, type theory, data abstraction, functional programming, object-oriented programming, logic programming, declarative programming, parallel and distributed programming languages Disciplines Programming Languages and Compilers This article is available at Iowa State University Digital Repository: http://lib.dr.iastate.edu/cs_techreports/59 Intro duction to the Literature On Programming Language Design Gary T. Leavens TR 93-01c Jan. 1993, revised Jan. 1994, Feb. 1996, and July 1999 Keywords: programming languages, semantics, typ e systems, p olymorphism, typ e theory, data abstrac- tion, functional programming, ob ject-oriented programming, logic programming, declarative programming, parallel and distributed programming languages. -
Distributed Computing Column 36 Distributed Computing: 2009 Edition
Distributed Computing Column 36 Distributed Computing: 2009 Edition Idit Keidar Dept. of Electrical Engineering, Technion Haifa, 32000, Israel [email protected] It’s now the season for colorful reviews of 2009. While you can read elsewhere about the year in sports, top-40 pop hit charts, people of the year, and so on, I throw my share into the mix with a (biased) review of this year’s major distributed computing events. Awards First, let’s look at awards. This year we learned that two women were recognized with ACM and IEEE prestigious awards for their achievements in, (among other things), distributed computing. Barbara Liskov won the 2008 ACM Turing Award for a range of contributions to practical and theoretical foundations of programming language and system design, some of which are in distributed computing. The award citation mentions her impact on distributed programming, decentralized information flow, replicated storage, and modular upgrading of distributed systems. I include below a short reflection, by Rodrigo Rodrigues, on Barbara Liskov’s Turing Award and legacy. Looking ahead to 2010, it was recently announced that Nancy Lynch is the recipient of the prestigious 2010 IEEE Emanuel R. Piore Award1 for her contributions to foundations of distributed and concurrent computing. The award is given for outstanding contributions in the field of information processing in relation to computer science. Leslie Lamport has won the same award in 2004 for his seminal contributions to the theory and practice of concurrent programming and fault-tolerant computing. The 2009 Edsger W. Dijkstra Prize in Distributed Computing was awarded to Joseph Halpern and Yoram Moses for “Knowledge and Common Knowledge in a Distributed Environment”. -
Interview with Barbara Liskov ACM Turing Award Recipient 2008 Done at MIT April 20, 2016 Interviewer Was Tom Van Vleck
B. Liskov Interview 1 Interview with Barbara Liskov ACM Turing Award Recipient 2008 Done at MIT April 20, 2016 Interviewer was Tom Van Vleck Interviewer is noted as “TVV” Dr. Liskov is noted as “BL” ?? = inaudible (with timestamp) or [ ] for phonetic [some slight changes have been made in this transcript to improve the readability, but no material changes were made to the content] TVV: Hello, I’m Tom Van Vleck, and I have the honor today to interview Professor Barbara Liskov, the 2008 ACM Turing Award winner. Today is April 20th, 2016. TVV: To start with, why don’t you tell us a little bit about your upbringing, where you lived, and how you got into the business? BL: I grew up in San Francisco. I was actually born in Los Angeles, so I’m a native Californian. When I was growing up, it was definitely not considered the thing to do for a young girl to be interested in math and science. In fact, in those days, the message that you got was that you were supposed to get married and have children and not have a job. Nevertheless, I was always encouraged by my parents to take academics seriously. My mother was a college grad as well as my father, so it was expected that I would go to college, which in those times was not that common. Maybe 20% of the high school class would go on to college and the rest would not. I was always very interested in math and science, so I took all the courses that were offered at my high school, which wasn’t a tremendous number compared to what is available today. -
00-Frontmatter.Pdf
Proceedings of the Eighth Symposium on Operating Systems Principles 14-16 December 1981 Asilomar Conference Grounds Pacific Grove, California Special Interest Group on Operating Systems (SIGOPS) Association for Computing Machinery (ACM) Vol. 15 No. 5 December 1981 ACM ORDER NO. 534810 The Association for Computing Machinery, Inc. 1133 Avenue of the Americas New York, New York 10036 Copyright © 1981 by the Association for Computing Machinery, Inc. Copying without fee is permitted provided that the copies are not made or distributed for direct commercial advantage and credit to the source is given. Abstracting with credit is permitted. For other copying of articles that carry a code at the bottom of the first page, copying is permitted provided that the per-copy fee indicated in the code is paid through the Copyright Clearance Center, P.O. Box 765, Schenectady, N.Y. 12301. For permission to republish write to: Director of Publications, Association for Computing Machinery. To copy otherwise, or republish, requires a fee and/or specific permission. ISBN 0-89791-062-1 Additional copies may be ordered prepaid from: ACM Order Department Price: P.O. Box 64145 Members $13.00 Baltimore, MD 21264 Non-Members $17.00 ACM Order No. 534810 'ii Eighth Symposium on Operating Systems Principles General Chairperson John Howard - IBM Research, San Jose Program Chairperson David P. Reed - MIT Program Committee David Cheriton - University of British Columbia Dorothy Denning - Purdue University Jim Gray- Tandem Computers John Howard - IBM Research, San Jose Anita Jones - Carnegie-Mellon University Butler Lampson - Xerox PARC Edward Lazowska- University of Washington Alan Smith - University of California, Berkeley Local A rrangements Sara Dake - Registration Jim Gray - Catering Gene McDaniel - Wine iii 8SOSP Referees Sten Andler Thomas H. -
Hints and Principles for Computer System Design Butler Lampson May 14, 2021
Hints and Principles for Computer System Design Butler Lampson May 14, 2021 Abstract This new long version of my 1983 paper suggests the goals you might have for your system— Simple, Timely, Efficient, Adaptable, Dependable, Yummy (STEADY)—and techniques for achieving them—Approximate, Incremental, Divide & Conquer (AID). It also gives some princi- ples for system design that are more than just hints, and many examples of how to apply the ideas. Table of Contents 1. Introduction 3 1.1 Oppositions and slogans 4 2. Principles 6 2.1 Abstraction 6 2.1.1 Safety and liveness 8 2.1.2 Operations 9 2.2 Writing a spec 9 2.2.1 Leaky specs and bad specs 12 2.2.2 Executable specs 13 2.3 Writing the code: Correctness 13 2.3.1 Types 16 2.3.2 Languages 16 2.4 Modules and interfaces 17 2.4.1 Classes and objects 18 2.4.2 Layers and platforms 20 2.4.3 Components 21 2.4.4 Open systems 21 2.4.5 Robustness 22 2.4.6 Standards 23 2.5 Points of view 23 2.5.1 Notation 24 3. Goals and Techniques 25 3.1 Overview 25 3.1.1 Goals 25 3.1.2 Techniques 26 3.2 Simple 27 3.2.1 Do one thing well 27 3.2.2 Brute force 29 3.2.3 Reduction 30 3.3 Timely 30 3.4 Efficient 31 3.4.1 Before the ABCs 31 3.4.2 Algorithms 36 3.4.3 Approximate 37 3.4.4 Batch 42 1 3.4.5 Cache 43 3.4.6 Concurrency 44 3.5 Adaptable 50 3.5.1 Scaling 51 3.5.2 Inflection points 52 3.6 Dependable 53 3.6.1 Correctness 55 3.6.2 Retry 56 3.6.3 Replication 57 3.6.4 Detecting failures: real time 59 3.6.5 Recovery and repair 60 3.6.6 Transactions 60 3.6.7 Security 61 3.7 Yummy 64 3.7.1 User interfaces 64 3.8 Incremental 66 3.8.1 Being and becoming 66 3.8.2 Indirection 70 4.