Stanford University
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
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. -
Analysis of Obfuscation Transformations on Binary Code Matthieu Tofighi Shirazi
Analysis of obfuscation transformations on binary code Matthieu Tofighi Shirazi To cite this version: Matthieu Tofighi Shirazi. Analysis of obfuscation transformations on binary code. Cryptography and Security [cs.CR]. Université Grenoble Alpes, 2019. English. NNT : 2019GREAM069. tel-02907117 HAL Id: tel-02907117 https://tel.archives-ouvertes.fr/tel-02907117 Submitted on 6 Jan 2021 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THÈSE Pour obtenir le grade de DOCTEUR DE LA COMMUNAUTÉ UNIVERSITÉ GRENOBLE ALPES Spécialité : Mathématiques et Informatique Arrêté ministérial : 25 mai 2016 Présentée par Ramtine TOFIGHI SHIRAZI Thèse dirigée par Philippe ELBAZ-VINCENT préparée au sein du Laboratoire Institut Fourier dans l’École Doctorale MSTII Evaluation des méthodes d’obscurcissement de binaire Thèse soutenue publiquement le 16 décembre 2019, devant le jury composé de : M, Louis GOUBIN Professeur à l’Université Versailles-Saint-Quentin-en-Yvelines, Versailles, Rapporteur M, Aurélien FRANCILLON Professeur associé à EURECOM, Biot, Rapporteur M, Sébastien -
Contents U U U
Contents u u u ACM Awards Reception and Banquet, June 2018 .................................................. 2 Introduction ......................................................................................................................... 3 A.M. Turing Award .............................................................................................................. 4 ACM Prize in Computing ................................................................................................. 5 ACM Charles P. “Chuck” Thacker Breakthrough in Computing Award ............. 6 ACM – AAAI Allen Newell Award .................................................................................. 7 Software System Award ................................................................................................... 8 Grace Murray Hopper Award ......................................................................................... 9 Paris Kanellakis Theory and Practice Award ...........................................................10 Karl V. Karlstrom Outstanding Educator Award .....................................................11 Eugene L. Lawler Award for Humanitarian Contributions within Computer Science and Informatics ..........................................................12 Distinguished Service Award .......................................................................................13 ACM Athena Lecturer Award ........................................................................................14 Outstanding Contribution -
Hints and Principles for Computer System Design 1 Introduction
Hints and Principles for Computer System Design Butler Lampson September 12, 2019 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 effective techniques for achieving them—Approximate, Incremental, Divide & Conquer (AID). It gives a few princi- ples for system design that are more than just hints, and many examples of how to apply the hints and principles. 1 Introduction There are three rules for writing a novel. Unfortunately, no one knows what they are. —Somerset MaughamQ48 You got to be careful if you don’t know where you’re going, because you might not get there. — Yogi BerraQ8 If I have seen farther, it is by standing on the shoulders of giants. —Bernard of ChartresQ7 The quest for precision, in words or concepts or meanings, is a wild goose chase. —Karl PopperQ61 Shakespeare wrote better poetry for not knowing too much; Milton … knew too much finally for the good of his poetry. —WhiteheadQ87 In 1983 I wrote a paper on “Hints for Computer System Design” for the Symposium on Operating System Principles.R45 I reread that paper every two or three years, and for more than 15 years I saw no reason to rewrite or extend it; I had written what I knew about personal distributed com- puting, operating systems, languages, networking, databases, and fault tolerance, and computer systems were continuing the work of the 1970s on these things. But since the mid-1990s the Inter- net, mobile phones, the World Wide Web, search engines, social media, electronic commerce, malware, phishing, robots and the Internet of Things have become part of the fabric of everyday life, and concurrency and scaling are now dominant themes in systems. -
SOSP'03 Proceedings of the 19Th ACM Symposium on Operating Systems Principles
SOSP'03 Proceedings of the 19th ACM Symposium on Operating Systems Principles The Sagamore Bolton Landing (Lake George), New York, USA October 19-22, 2003 Sponsored by: ACM SIGOPS (Association for Computing Machinery Special Interest Group on Operating Systems) and supported by Goo~gle ~,earch invent IBM Research intel. ,¢'/~:.~/~ OUALCO'WW"~ w nware The Association for Computing Machinery 1515 Broadway New York, New York 10036 Copyright © 2003 by the Association for Computing Machinery, Inc. (ACM). Permission to make digital or hard copies of portions of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyright for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permission to republish from: Publications Dept., ACM, Inc. Fax +1 (212) 869-0481 or <[email protected]>. For other copying of articles that carry a code at the bottom of the first or last page, copying is permitted provided that the per-copy fee indicated in the code is paid through the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923. Notice to Past Authors of ACM-Published Articles ACM intends to create a complete electronic archive of all articles and/or other material previously published by ACM. If you have written a work that has been previously published by ACM in any journal or conference proceedings prior to 1978, or any SIG Newsletter at any time, and you do NOT want this work to appear in the ACM Digital Library, please inform [email protected], stating the title of the work, the author(s), and where and when published. -
Hints and Principles for Computer System Design 1 Introduction
Hints and Principles for Computer System Design Butler Lampson September 12, 2019 Abstract This new short version of my 1983 paper suggests the goals you might have for your system— Simple, Timely, Efficient, Adaptable, Dependable, Yummy (STEADY)—and effective techniques for achieving them—Approximate, Incremental, Divide & Conquer (AID). It gives a few princi- ples for system design that are more than just hints, and many examples of how to apply the hints and principles. 1 Introduction There are three rules for writing a novel. Unfortunately, no one knows what they are. —Somerset MaughamQ31 You got to be careful if you don’t know where you’re going, because you might not get there. — Yogi BerraQ4 In 1983 I wrote a paper on “Hints for Computer System Design” for the Symposium on Operating System Principles.R29 I reread that paper every two or three years, and for more than 15 years I saw no reason to rewrite or extend it; I had written what I knew about personal distributed com- puting, operating systems, languages, networking, databases, and fault tolerance, and computer systems were continuing the work of the 1970s on these things. But since the mid-1990s the Inter- net, mobile phones, the World Wide Web, search engines, social media, electronic commerce, malware, phishing, robots and the Internet of Things have become part of the fabric of everyday life, and concurrency and scaling are now dominant themes in systems. So for the last few years I’ve been trying to write a new version. Then I could fit nearly everything I knew into a reasonable number of pages, but today com- puting is much more diverse and I know a lot more; this paper is unreasonably long. -
19991201-938.Pdf
TABLE OF CONTENTS DIRECTOR’S VISION ________________________________________________ 4 Doing More By Doing Less: Oxygen______________________________________ 5 HARDWARE & SOFTWARE TOOLS ___________________________________ 7 A Framework for Automation Using Networked Information Appliances___________ 8 Automated Architecture Exploration for Application-Specific Processors _________ 10 Curl: An Integrated Authoring Environment for the Web ______________________ 12 The Flex Project: Program Analysis and Compilation Technology for Active Distributed Systems __________________________________________________________ 14 The RAW Project ___________________________________________________ 17 Active Trust Management for Autonomous Adaptive Survivable Systems ________ 19 Automated Negotiation_______________________________________________ 21 Digitizing Cities: MIT City Scanning Project _______________________________ 22 Weathering and Surface Appearance____________________________________ 24 A Simple Distributed Security Infrastructure (SDSI) _________________________ 26 Anonymity in Cryptographic Protocols ___________________________________ 27 Basic Cryptographic Primitives _________________________________________ 28 Incremental Cryptography ____________________________________________ 29 Lattice-Based Cryptography___________________________________________ 30 Micropayment Research _____________________________________________ 31 Pseudo-Randomness in Cryptographic Applications ________________________ 32 The Random Oracle Model ___________________________________________ -
Computer Scientists in Support of Petitioner
No. 18-956 IN THE Supreme Court of the United States GOOGLE LLC, Petitioner, v. ORACLE AMERICA, INC., Respondent. On Writ of Certiorari to the United States Court of Appeals for the Federal Circuit BRIEF AMICI CURIAE OF 83 COMPUTER SCIENTISTS IN SUPPORT OF PETITIONER Phillip R. Malone Counsel of Record JUELSGAARD INTELLECTUAL PROPERTY AND INNOVATION CLINIC MILLS LEGAL CLINIC AT STANFORD LAW SCHOOL 559 Nathan Abbott Way Stanford, CA 94305 (650) 725-6369 [email protected] Counsel for Amici Curiae TABLE OF CONTENTS INTEREST OF AMICI CURIAE ................................ 1 SUMMARY OF ARGUMENT ..................................... 2 ARGUMENT ................................................................ 4 I.! The Decisions Below Reflect the Federal Circuit’s Fundamental Misunderstanding of How Interfaces Differ from Programs .............. 4 A. Software Interfaces Specify What a Program Does, Not How It Does So ............... 5 B. Google Wrote Its Own Implementation of the Java API to Promote Interoperability and Transform Java to Run on Smartphones ................................................. 12 II.! The Decisions Below Upend Decades of Settled Expectations and Threaten Future Innovation in Software ................... 17 A. The Computer Industry Has Long Relied on Freely Reimplementing Software Interfaces to Foster Innovation and Competition ................... 17 B. Allowing Copyright to Restrict the Reimplementation of Software Interfaces Will Stifle Competition ................................ 22 CONCLUSION .......................................................... -
Association for Computing Machinery 2 Penn Plaza, Suite 701, New York
ACM A N W N A N R N D N S Association for Computing Machinery 2 Penn Plaza, Suite 701, New York, NY 10121-0701 USA +1-212-869-7440 www.acm.org Contents N N N ACM Awards Reception and Banquet, June 2017 . .2 Introduction . .3 A.M. Turing Award . .4 ACM Prize in Computing . .5 ACM – AAAI Allen Newell Award . .6 Software System Award . .7 Grace Murray Hopper Award . .8 Paris Kanellakis Theory and Practice Award . .9 Karl V. Karlstrom Outstanding Educator Award . .10 ACM Policy Award . .11 Distinguished Service Award . .12 ACM Athena Lecturer Award . .13 Outstanding Contribution to ACM Award . .14 ACM Presidential Award . .15-17 Doctoral Dissertation Award . .18 ACM Student Research Competition . .19 ACM Fellows . .20 Eugene L. Lawler Award for Humanitarian Contributions within Computer Science and Informatics . .21 ACM Gordon Bell Prize . .21 ACM – IEEE CS Eckert-Mauchly Award . .22 ACM – IEEE CS Ken Kennedy Award . .22 ACM – IEEE CS George Michael HPC Memorial Fellowships . .23 SIAM – ACM Prize in Computational Science and Engineering . .23 ACM – CSTA Cutler-Bell Prize . .24 ACM India Doctoral Dissertation Award . .24 ACM China Doctoral Dissertation Award . .25 ACM China Rising Star Award . .25 IPSJ/ACM Award for Early Career Contributions to Global Research . .25 ACM Special Interest Group Awards . .26-27 2017 ACM Award Subcommittee Chairs . .28 ACM Award Nomination Submission Procedures . .29 2018 ACM Award Subcommittee Chairs and Members . .30-31 Past Recipients . .32-36 ACM Fellows . .37-43 In Memoriam, ACM Fellows . .44 1 ACM Awards Reception & Banquet ACM AWARDS N N N N N N The Westin St. -
United States Court of Appeals for the Federal Circuit
Case: 17-1118 CASE PARTICIPANTS ONLY Document: 165 Page: 1 Filed: 05/30/2017 Nos. 2017-1118, 2017-1202 IN THE United States Court of Appeals for the Federal Circuit ORACLE AMERICA, INC., Plaintiff-Appellant, v. GOOGLE, INC., Defendant-Appellee, Appeals from the United States District Court for the Northern District of California in No. 10-CV-3561, Judge William H. Alsup BRIEF OF COMPUTER SCIENTISTS AS AMICI CURIAE IN SUPPORT OF DEFENDANT-APPELLEE Phillip R. Malone Jef Pearlman Juelsgaard Intellectual Property and Innovation Clinic Mills Legal Clinic at Stanford Law School 559 Nathan Abbott Way Stanford, CA 94305-8610 Telephone: 650-725-6369 Fax: 650-723-4426 Attorneys for Amici Curiae FORMCase: 9. Certificate 17-1118 of Interest CASE PARTICIPANTS ONLY Document: 165 Page: 2 Filed: 05/30/2017Form 9 Rev. 03/16 UNITED STATES COURT OF APPEALS FOR THE FEDERAL CIRCUIT Oracle America, Inc. v. Google, Inc. f Case No. 2017-1118, 2017-1202 CERTIFICATE OF INTEREST Counsel for the: (petitioner) (appellant) (respondent) (appellee) (amicus) (name of party) Public Knowledge and Law Professors certifies the following (use "None" if applicable; use extra sheets if necessary): 2. Name of Real Party in interest 3. Parent corporations and 1. Full Name of Party (Please only include any real party publicly held companies Represented by me in interest NOT identified in that own 10 % or more of Question 3) represented by me is: stock in the party Computer Scientists (See None None Attachment on next page) 4. The names of all law firms and the partners or associates that appeared for the party or amicus now represented by me in the trial court or agency or are expected to appear in this court (and who have not or will not enter an appearance in this case) are: Juelsgaard Intellectual Property & Innovation Clinic, Mills Legal Clinic, Stanford Law School: Phillip R. -
Computer Science
at the highest academic level, or advance into leadership positions in industry. The program creates an atmosphere that promotes COMPUTER innovative thinking, values mutual respect and diversity, supports scholarship and research, instills ethical behavior, and cultivates lifelong learning. SCIENCE The department offers both a major and a minor in Computer Science. The requirements for these programs are outlined in the Emeriti: (Professors) Tom Binford, Edward Feigenbaum, Richard “School of Engineering” section of this bulletin and described in Fikes, Donald E. Knuth,* John McCarthy, Edward J. more detail in the Handbook for Undergraduate Engineering McCluskey, William F. Miller, Nils J. Nilsson, Vaughan Pratt,* Programs published by the School of Engineering. The Computer Jeffrey D. Ullman, Gio Weiderhold* Science major offers a number of tracks (programs of study) from Chair: William J. Dally which students can choose, allowing them to focus their program on Associate Chair for Education: Mehran Sahami the areas of most interest. These tracks also reflect the broad Professors: Alex Aiken, Dan Boneh, David Cheriton, William J. diversity of areas in computing disciplines. The department has an Dally, David Dill, Hector Garcia-Molina, Leonidas J. Guibas, honors program, which is described in the following section. Patrick Hanrahan, John Hennessy, Mark A. Horowitz, Oussama In addition to Computer Science itself, Stanford offers several Khatib, Daphne Koller, Monica Lam, Jean-Claude Latombe, interdisciplinary degrees with a substantial computer science Marc Levoy, Zohar Manna, John Mitchell, Rajeev Motwani, component. The Computer Systems Engineering major (also in Kunle Olukotun, Yoav Shoham, Sebastian Thrun, Jennifer Engineering) allows the study of areas requiring a knowledge of both Widom, Terry Winograd computer hardware and software, bridging the gap between Associate Professors: Serafim Batzoglou, Dawson Engler, Ronald P. -
United States Court of Appeals for the Federal Circuit
Nos. 17-1118, 17-1202 IN THE United States Court of Appeals for the Federal Circuit ORACLE AMERICA, INC., Plaintiff-Appellant, v. GOOGLE LLC, Defendant-Cross-Appellant, Appeals from the United States District Court for the Northern District of California in No. 10-CV-3561, Judge William H. Alsup BRIEF OF COMPUTER SCIENTISTS AS AMICI CURIAE IN SUPPORT OF PETITION FOR REHEARING EN BANC Phillip R. Malone Jef Pearlman Juelsgaard Intellectual Property and Innovation Clinic Mills Legal Clinic at Stanford Law School 559 Nathan Abbott Way Stanford, CA 94305-8610 Telephone: 650-725-6369 Fax: 650-723-4426 Attorneys for Amici Curiae FORM 9. Certificate of Interest Form 9 Rev. 10/17 UNITED STATES COURT OF APPEALS FOR THE FEDERAL CIRCUIT ORACLE AMERICA, INC. v. GOOGLE LLC 17-1118, 17-1202 Case No. CERTIFICATE OF INTEREST Counsel for the: (petitioner) (appellant) (respondent) (appellee) (amicus) (name of party) Computer Scientists certifies the following (use “None” if applicable; use extra sheets if necessary): 2. Name of Real Party in interest 3. Parent corporations and 1. Full Name of Party (Please only include any real party publicly held companies Represented by me in interest NOT identified in that own 10% or more of Question 3) represented by me is: stock in the party Computer Scientists (See Attachment A) None None 4. The names of all law firms and the partners or associates that appeared for the party or amicus now represented by me in the trial court or agency or are expected to appear in this court (and who have not or will not enter an appearance in this case) are: Phillip R.