Demo Data from VLDB 2026 / reviewers in the wild / expert
Andrew Birrell
dblp:b/AndrewBirrell
· DBLP profile ↗
27ranked-venue papers
10as first author
0since 2021 · last 2014
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 15 · 7 first-authorSystems, architecture and hardware · 8 · 2 first-authorSecurity and privacy · 3 · 1 first-authorComputer networks · 2
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Network and information security
4 papers |
Cryptographic protocols and secure computation · 35% Web and mobile security · 35% Authentication and access control · 25% | |
| Software engineering, system software, and programming languages
6 papers |
Concurrent programming · 56% Programming languages and type systems · 29% Operating systems · 14% | |
| Computer architecture, parallel and distributed computing, and storage systems
12 papers |
Parallel and multicore computing · 48% Storage systems · 22% Distributed systems · 17% |
Topics — the 30 heaviest of 49, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Concurrent programming
transactional memory |
0.2 | 2 | 2011 | Semantics of transactional memory and automatic mutual exclusion · ACM Trans. Program. Lang. Syst. 2011 Semantics of transactional memory and automatic mutual exclusion · POPL 2008 |
Cryptographic protocols and secure computation › key management
public key infrastructure |
0.2 | 1 | 2014 | Web PKI: Closing the Gap between Guidelines and Practices · NDSS 2014 |
Web and mobile security
web PKI |
0.2 | 1 | 2014 | Web PKI: Closing the Gap between Guidelines and Practices · NDSS 2014 |
Programming languages and type systems
language semantics |
0.1 | 1 | 2011 | Semantics of transactional memory and automatic mutual exclusion · ACM Trans. Program. Lang. Syst. 2011 |
Concurrent programming › transactional memory
transactional memory semantics |
0.1 | 1 | 2008 | Semantics of transactional memory and automatic mutual exclusion · POPL 2008 |
Operating systems › system security › operating system security
access control |
0.1 | 2 | 2007 | Authorizing applications in singularity · EuroSys 2007 The Cap Filing System · SOSP 1977 |
Authentication and access control
authorization |
0.1 | 1 | 2007 | Authorizing applications in singularity · EuroSys 2007 |
Parallel and multicore computing › parallel programming models
dataflow programming |
0.1 | 1 | 2007 | Dryad: distributed data-parallel programs from sequential building blocks · EuroSys 2007 |
Parallel and multicore computing › data-parallel programming
distributed data-parallel execution |
0.1 | 1 | 2007 | Dryad: distributed data-parallel programs from sequential building blocks · EuroSys 2007 |
Parallel and multicore computing
parallel programming models |
0.1 | 1 | 2007 | Dryad: distributed data-parallel programs from sequential building blocks · EuroSys 2007 |
Authentication and access control
certificate management |
0.1 | 1 | 2014 | Web PKI: Closing the Gap between Guidelines and Practices · NDSS 2014 |
Storage systems › storage management › backup and recovery
data backup |
0.0 | 1 | 2003 | A Cooperative Internet Backup Scheme · USENIX ATC, General Track 2003 |
Distributed systems
fault tolerance |
0.0 | 1 | 2003 | A Cooperative Internet Backup Scheme · USENIX ATC, General Track 2003 |
Storage systems
storage reliability |
0.0 | 1 | 2003 | A Cooperative Internet Backup Scheme · USENIX ATC, General Track 2003 |
Programming languages and type systems › type systems
type systems for concurrency |
0.0 | 1 | 2008 | Semantics of transactional memory and automatic mutual exclusion · POPL 2008 |
Systems and software security
operating system security |
0.0 | 1 | 2007 | Authorizing applications in singularity · EuroSys 2007 |
Cloud and datacenter computing
cluster resource management and scheduling |
0.0 | 1 | 2007 | Dryad: distributed data-parallel programs from sequential building blocks · EuroSys 2007 |
Cloud and datacenter computing
job scheduling |
0.0 | 1 | 2007 | Dryad: distributed data-parallel programs from sequential building blocks · EuroSys 2007 |
Distributed systems
remote procedure call |
0.0 | 3 | 1993 | Network Objects · SOSP 1993 Implementing Remote Procedure Calls · ACM Trans. Comput. Syst. 1984 Implementing Remote Procedure Calls (Abstract) · SOSP 1983 |
Storage systems › file systems
distributed file system |
0.0 | 2 | 1994 | A Coherent Distributed File Cache with Directory Write-Behind · ACM Trans. Comput. Syst. 1994 A Universal File Server · IEEE Trans. Software Eng. 1980 |
Memory systems
cache coherence |
0.0 | 1 | 1994 | A Coherent Distributed File Cache with Directory Write-Behind · ACM Trans. Comput. Syst. 1994 |
Internet architecture and protocols
local area network |
0.0 | 1 | 1991 | Autonet: A High-Speed, Self-Configuring Local Area Network Using Point-to-Point Links · IEEE J. Sel. Areas Commun. 1991 |
Internet architecture and protocols › network adaptation
self-configuring network |
0.0 | 1 | 1991 | Autonet: A High-Speed, Self-Configuring Local Area Network Using Point-to-Point Links · IEEE J. Sel. Areas Commun. 1991 |
Distributed systems › replication
replicated system |
0.0 | 2 | 1984 | Experience with Grapevine: The Growth of a Distributed System · ACM Trans. Comput. Syst. 1984 Experience with Grapevine: The Growth of a Distributed System (Summary) · SOSP 1983 |
Requirements engineering and software design
formal specification |
0.0 | 1 | 1987 | Synchronization Primitives for a Multiprocessor: A Formal Specification · SOSP 1987 |
Concurrent programming › synchronization
synchronization primitives |
0.0 | 1 | 1987 | Synchronization Primitives for a Multiprocessor: A Formal Specification · SOSP 1987 |
Authentication and access control › authentication
authentication protocols |
0.0 | 1 | 1986 | A Global Authentication Service without Global Trust · S&P 1986 |
Authentication and access control
distributed authentication |
0.0 | 1 | 1986 | A Global Authentication Service without Global Trust · S&P 1986 |
Cryptographic protocols and secure computation › key exchange
authenticated key exchange |
0.0 | 1 | 1985 | Secure Communication Using Remote Procedure Calls · ACM Trans. Comput. Syst. 1985 |
Network security › secure communication
secure communication protocol |
0.0 | 1 | 1985 | Secure Communication Using Remote Procedure Calls · ACM Trans. Comput. Syst. 1985 |
Methods — techniques the papers use, named apart from their topics
measurement study · 0.2security model · 0.1access control lists · 0.1type system · 0.1operational semantics · 0.1rollback · 0.1optimistic concurrency · 0.1lazy conflict detection · 0.1in-place update · 0.1data flow graph · 0.1cache coherence protocol design · 0.0operational measurement · 0.0secure channel composition · 0.0formal specification · 0.0protocol design · 0.0performance measurement · 0.0optimization · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2014 | Web PKI: Closing the Gap between Guidelines and Practices
Antoine Delignat-Lavaud, Martín Abadi, Andrew Birrell, Ilya Mironov, Ted Wobber, Yinglian Xie |
NDSS | 3 |
| 2013 | Global Authentication in an Untrustworthy World
Martín Abadi, Andrew Birrell, Ilya Mironov, Ted Wobber, Yinglian Xie |
HotOS | 2 |
| 2011 | Semantics of transactional memory and automatic mutual exclusionabstractSoftware Transactional Memory (STM) is an attractive basis for the development of language features for concurrent programming. However, the semantics of these features can be delicate and problematic. In this article we explore the trade-offs semantic simplicity, the viability of efficient implementation strategies, and the flexibility of language constructs. Specifically, we develop semantics and type systems for the constructs of the Automatic Mutual Exclusion (AME) programming model; our results apply also to other constructs, such as atomic blocks. With this semantics as a point of reference, we study several implementation strategies. We model STM systems that use in-place update, optimistic concurrency, lazy conflict detection, and rollback. These strategies are correct only under nontrivial assumptions that we identify and analyze. One important source of errors is that some efficient implementations create dangerous “zombie” computations where a transaction keeps running after experiencing a conflict; the assumptions confine the effects of these computations. Martín Abadi, Andrew Birrell, Tim Harris 0001, Michael Isard |
ACM Trans. Program. Lang. Syst. | 2 |
| 2009 | Implementation and Use of Transactional Memory with Dynamic Separation
Martín Abadi, Andrew Birrell, Tim Harris 0001, Johnson Hsieh, Michael Isard |
CC | 2 |
| 2008 | Experiences with formal specification of fault-tolerant file systemsabstractFault-tolerant, replicated file systems are a crucial component of todaypsilas data centers. Despite their huge complexity, these systems are typically specified only in brief prose, which makes them difficult to reason about or verify. This paper describes the authorspsila experience using formal methods to improve our understanding of and confidence in the behavior of replicated file systems. We wrote formal specifications for three real-world fault-tolerant file systems and used them to: (1) expose design similarities and differences; (2) clarify and mechanically verify consistency properties; and (3) evaluate design alternatives. Our experience showed that formal specifications for these systems were easy to produce, useful for a deep understanding of system functions, and valuable for system comparison. Roxana Geambasu, Andrew Birrell, John MacCormick |
DSN | 2 |
| 2008 | Semantics of transactional memory and automatic mutual exclusionabstractSoftware Transactional Memory (STM) is an attractive basis for the development of language features for concurrent programming. However, the semantics of these features can be delicate and problematic. In this paper we explore the tradeoffs between semantic simplicity, the viability of efficient implementation strategies, and the flexibilityof language constructs. Specifically, we develop semantics and type systems for the constructs of the Automatic Mutual Exclusion (AME) programming model; our results apply also to other constructs, such as atomic blocks. With this semantics as a point of reference, we study several implementation strategies. We model STM systems that use in-place update, optimistic concurrency, lazy conflict detection, and roll-back. These strategies are correct only under non-trivial assumptions that we identify and analyze. One important source of errors is that some efficient implementations create dangerous 'zombie' computations where a transaction keeps running after experiencing a conflict; the assumptions confine the effects of these computations. Martín Abadi, Andrew Birrell, Tim Harris 0001, Michael Isard |
POPL | 2 |
| 2007 | Dryad: distributed data-parallel programs from sequential building blocksabstractDryad is a general-purpose distributed execution engine for coarse-grain data-parallel applications. A Dryad application combines computational "vertices" with communication "channels" to form a dataflow graph. Dryad runs the application by executing the vertices of this graph on a set of available computers, communicating as appropriate through flies, TCP pipes, and shared-memory FIFOs. Michael Isard, Mihai Budiu, Andrew Birrell, Dennis Fetterly |
EuroSys | 4 |
| 2007 | Authorizing applications in singularityabstractWe describe a new design for authorization in operating systems in which applications are first-class entities. In this design, principals reflect application identities. Access control lists are patterns that recognize principals. We present a security model that embodies this design in an experimental operating system, and we describe the implementation of our design and its performance in the context of this operating system. Ted Wobber, Aydan R. Yumerefendi, Martín Abadi, Andrew Birrell, Daniel R. Simon |
EuroSys | 4 |
| 2007 | Automatic Mutual Exclusion
Michael Isard, Andrew Birrell |
HotOS | 2 |
| 2005 | Access Control in a World of Software Diversity
Martín Abadi, Andrew Birrell, Ted Wobber |
HotOS | 2 |
| 2003 | A Cooperative Internet Backup Scheme
Mark Lillibridge, Sameh Elnikety, Andrew Birrell, Michael Burrows, Michael Isard |
USENIX ATC, General Track | 3 |
| 1998 | Secure Web Tunneling
Martín Abadi, Andrew Birrell, Raymie Stata, Edward Wobber |
Comput. Networks | 2 |
| 1995 | Network Objects
Andrew Birrell, Greg Nelson, Susan S. Owicki, Edward Wobber |
Softw. Pract. Exp. | 1 |
| 1994 | A Coherent Distributed File Cache with Directory Write-BehindabstractExtensive caching is a key feature of the Echo distributed file system. Echo client machines maintain coherent caches of file and directory data and properties, with write-behind (delayed write-back) ofallcached information. Echo specifies ordering constraints on this write-behind, enabling applications to store and maintain consistent data structures in the file system even when crashes or network faults prevent some writes from being completed. In this paper we describe the Echo cache's coherence and ordering semantics, show how they can improve the performance and consistency of applications, explain how they are implemented. We also discuss the general problem of reliably notifying applications and users when write-behind is lost; we addressed this problem as part of the Echo design, but did not find a fully satisfactory solution. Timothy P. Mann, Andrew Birrell, Andy Hisgen, Charles Jerian, Garret Swart |
ACM Trans. Comput. Syst. | 2 |
| 1993 | Network ObjectsabstractA network object is an object whose methods can be invoked over a network. This paper describes the design, implementation, and early experience with a network objects system for Modula-3. The system is novel for its overall simplicity. The paper includes a thorough description of realistic marshaling algorithms for network objects. Andrew Birrell, Greg Nelson, Susan S. Owicki, Edward Wobber |
SOSP | 1 |
| 1991 | Autonet: A High-Speed, Self-Configuring Local Area Network Using Point-to-Point LinksabstractAutonet is a self-configuring local area network composed of switches interconnected by 100 Mb/s, full-duplex, point-to-point links. The switches contain 12 ports that are internally connected by a full crossbar. Switches use cut-through to achieve a packet forwarding latency as low as 2 ms/switch. Any switch port can be cabled to any other switch port or to a host network controller. A processor in each switch monitors the network's physical configuration. A distributed algorithm running on the switch processor computes the routes packets are to follow and fills in the packet forwarding table in each switch. With Autonet, distinct paths through the set of network links can carry packets in parallel, allowing many pairs of hosts to communicate simultaneously at full link bandwidth. A 30-switch network with more than 100 hosts has been the service network for Digital's Systems Research Center since February 1990.> Michael D. Schroeder, Andrew Birrell, Michael Burrows, Hal Murray, Roger M. Needham, Thomas L. Rodeheffer, Edwin H. Satterthwaite, Charles P. Thacker |
IEEE J. Sel. Areas Commun. | 2 |
| 1987 | Synchronization Primitives for a Multiprocessor: A Formal SpecificationabstractFormal specifications of operating system interfaces can be a useful part of their documentation. We illustrate this by documenting the Threads synchronization primitives of the Taos operating system. We start with an informal description, present a way to formally specify interfaces in concurrent systems, give a formal specification of the synchronization primitives, briefly discuss the implementation, and conclude with a discussion of what we have learned from using the specification for more than a year. Andrew Birrell, John V. Guttag, James J. Horning, Roy Levin |
SOSP | 1 |
| 1987 | A Simple and Efficient Implementation for Small Databases
Andrew Birrell, Michael B. Jones, Edward Wobber |
SOSP | 1 |
| 1986 | A Global Authentication Service without Global TrustabstractThis paper describes a design for an authentication service for a very large scale, very long lifetime, distributed system. The paper introduces a methodology for describing authentication protocols that makes explicit the trust relationships amongst the participants. The authentication protocol is based on the primitive notion of composition of secure channels. The authentication model offered provides for the authentication of "roles", where a principal might exercise differing roles at differing times, whilst having only a single "identity". Roles are suitable for inclusion in access control lists. The naming of a role implies what entities are being trusted to authenticate the role. We provide a UID scheme that gives clients control over the time at which a name gets bound to a principal, thus controlling the effects of mutability of the name space. Andrew Birrell, Butler W. Lampson, Roger M. Needham, Michael D. Schroeder |
S&P | 1 |
| 1985 | Secure Communication Using Remote Procedure CallsabstractResearch on encryption-based secure communication protocols has reached a stage where it is feasible to construct end-to-end secure protocols. The design of such a protocol, built as part of a remote procedure call package, is described. The security abstraction presented to users of the package, the authentication mechanisms, and the protocol for encrypting and verifying remote calls are also described. Andrew Birrell |
ACM Trans. Comput. Syst. | 1 |
| 1984 | Implementing Remote Procedure CallsabstractRemote procedure calls (RPC) appear to be a useful paradig m for providing communication across a network between programs written in a high-level language.This paper describes a package providing a remote procedure call facility, the options that face the designer of such a package, and the decisions ~we made.We describe the overall structure of our RPC mechanism, our facilities for binding RPC clients, the transport level communication protocol, and some performance measurements.We include descriptioro~ of some optimizations used to achieve high performance and to minimize the load on server machines that have many clients. Andrew Birrell, Bruce Jay Nelson |
ACM Trans. Comput. Syst. | 1 |
| 1984 | Experience with Grapevine: The Growth of a Distributed SystemabstractGrapevine is a distributed, replicated system that provides message delivery, naming, authentication, resource location, and access control services in an internet of computers.The system, described in a previous paper [1], was designed and implemented several years ago.We now have had operational experience with the system under substantial load.In this paper we report on what we have learned from using Grapevine. Michael D. Schroeder, Andrew Birrell, Roger M. Needham |
ACM Trans. Comput. Syst. | 2 |
| 1983 | Implementing Remote Procedure Calls (Abstract)abstractRemote procedure calls (RPC) are a useful paradigm for providing communication across a network between programs written in a high level language. This paper describes a package, written as part of the Cedar project, providing a remote procedure call facility. The paper describes the options that face a designer of such a package, and the decisions we made. We describe the overall structure of our RPC mechanism, our facilities for binding RPC clients, the transport level communication protocol, and some performance measurements. We include descriptions of some optimisations we used to achieve high performance and to minimize the load on server machines that have many clients. Andrew Birrell, Bruce Jay Nelson |
SOSP | 1 |
| 1983 | Experience with Grapevine: The Growth of a Distributed System (Summary)abstractGrapevine is a distributed, replicated system that provides message delivery, naming, authentication, resource location, and access control services in an internet of computers. The system, described in a previous paper [1], was designed and implemented several years ago. We now have had operational experience with the system under substantial load. This experience has proved the original design sound in most aspects, but there also have been some surprises. In this paper we report what we have learned from using Grapevine. Our experience may offer some help to designers of new systems. Michael D. Schroeder, Andrew Birrell, Roger M. Needham |
SOSP | 2 |
| 1981 | Gravevine: An Exercise in Distributed Computing (summary)
Andrew Birrell, Roy Levin, Roger M. Needham, Michael D. Schroeder |
SOSP | 1 |
| 1980 | A Universal File ServerabstractA file server is a utility provided in a computer connected via a local communications network to a number of other computer. File servers exist to preserve material for the benefit of client machines or systems. It is desirable for a file server to be able to support multiple file directory and access management systems, so that the designer of a client system retains the freedom to design the system that best suits him. For example, he may wish to use the rile server to support a predefimed directory structure or as a swapping disk. The paper explores the dedgn issues associated with such a file server and proposes some solutions. Andrew Birrell, Roger M. Needham |
IEEE Trans. Software Eng. | 1 |
| 1977 | The Cap Filing SystemabstractThe filing system for the CAP is based on the idea of preservation of capabilities: if a program has been able to obtain some capability then it has an absolute right to preserve it for subsequent use. The pursuit of this principle, using capability-oriented mechanisms in preference to access control lists, has led to a filing system in which a preserved capability may be retrieved from different directories to achieve different access statuses, in which the significance of a text name depends on the directory to which it is presented, and in which filing system 'privilege' is expressed by possession of directory capabilities. Roger M. Needham, Andrew Birrell |
SOSP | 2 |