Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Harvey Tuch is active.

Publication


Featured researches published by Harvey Tuch.


symposium on operating systems principles | 2009

seL4: formal verification of an OS kernel

Gerwin Klein; Kevin Elphinstone; Gernot Heiser; June Andronick; David Cock; Philip Derrin; Dhammika Elkaduwe; Kai Engelhardt; Rafal Kolanski; Michael Norrish; Thomas Sewell; Harvey Tuch; Simon Winwood

Complete formal verification is the only known way to guarantee that a system is free of programming errors. We present our experience in performing the formal, machine-checked verification of the seL4 microkernel from an abstract specification down to its C implementation. We assume correctness of compiler, assembly code, and hardware, and we used a unique design approach that fuses formal and operating systems techniques. To our knowledge, this is the first formal proof of functional correctness of a complete, general-purpose operating-system kernel. Functional correctness means here that the implementation always strictly follows our high-level abstract specification of kernel behaviour. This encompasses traditional design and implementation safety properties such as the kernel will never crash, and it will never perform an unsafe operation. It also proves much more: we can predict precisely how the kernel will behave in every possible situation. seL4, a third-generation microkernel of L4 provenance, comprises 8,700 lines of C code and 600 lines of assembler. Its performance is comparable to other high-performance L4 kernels.


Communications of The ACM | 2010

seL4: formal verification of an operating-system kernel

Gerwin Klein; June Andronick; Kevin Elphinstone; Gernot Heiser; David Cock; Philip Derrin; Dhammika Elkaduwe; Kai Engelhardt; Rafal Kolanski; Michael Norrish; Thomas Sewell; Harvey Tuch; Simon Winwood

We report on the formal, machine-checked verification of the seL4 microkernel from an abstract specification down to its C implementation. We assume correctness of compiler, assembly code, hardware, and boot code. seL4 is a third-generation microkernel of L4 provenance, comprising 8700 lines of C and 600 lines of assembler. Its performance is comparable to other high-performance L4 kernels. We prove that the implementation always strictly follows our high-level abstract specification of kernel behavior. This encompasses traditional design and implementation safety properties such as that the kernel will never crash, and it will never perform an unsafe operation. It also implies much more: we can predict precisely how the kernel will behave in every possible situation.


symposium on principles of programming languages | 2007

Types, bytes, and separation logic

Harvey Tuch; Gerwin Klein; Michael Norrish

We present a formal model of memory that both captures the low-level features of Cs pointers and memory, and that forms the basis for an expressive implementation of separation logic. At the low level, we do not commit common oversimplifications, but correctly deal with Cs model of programming language values and the heap. At the level of separation logic, we are still able to reason abstractly and efficiently. We implement this framework in the theorem prover Isabelle/HOL and demonstrate it on two case studies. We show that the divide between detailed and abstract does not impose undue verification overhead, and that simple programs remain easy to verify. We also show that the framework is applicable to real, security- and safety-critical code by formally verifying the memory allocator of the L4 microkernel.


Operating Systems Review | 2010

The VMware mobile virtualization platform: is that a hypervisor in your pocket?

Kenneth C. Barr; Prashanth P. Bungale; Stephen Deasy; Viktor Gyuris; Perry Hung; Craig Newell; Harvey Tuch; Bruno Zoppis

The virtualization of mobile devices such as smartphones, tablets, netbooks, and MIDs offers significant potential in addressing the mobile manageability, security, cost, compliance, application development and deployment challenges that exist in the enterprise today. Advances in mobile processor performance, memory and storage capacities have led to the availability of many of the virtualization techniques that have previously been applied in the desktop and server domains. Leveraging these opportunities, VMwares Mobile Virtualization Platform (MVP) makes use of system virtualization to deliver an end-to-end solution for facilitating employee-owned mobile phones in the enterprise. In this paper we describe the use case behind MVP, and provide an overview of the hypervisors design and implementation. We present a novel system architecture for mobile virtualization and describe key aspects of both core and platform virtualization on mobile devices


annual computer security applications conference | 2003

Implementation of fast address-space switching and TLB sharing on the StrongARM processor

Adam Wiggins; Harvey Tuch; Volkmar Uhlig; Gernot Heiser

The StrongARM processor features virtually-addressedcaches and a TLB without address-space tags. A naive implementation therefore requires flushing of all CPU caches and the TLB on each context switch, which is very costly. We present an implementation of fast context switches on the architecture in both Linux and the L4 microkernel. It is based on using domain tags as address-space identifiers and delaying cache flushes until a clash of mappings is detected. We observe a reduction of the context-switching overheads by about an order of magnitude compared to the naive scheme presently implemented in Linux.


annual computer security applications conference | 2003

Legba: Fast hardware support for fine-grained protection

Adam Wiggins; Simon Winwood; Harvey Tuch; Gernot Heiser

Fine-grained hardware protection, if it can be done without slowing down the processor, could deliver significant benefits to software, enabling the implementation of strongly encapsulated light-weight objects. In this paper we introduce Legba, a new caching architecture that aims at supporting fine-grained memory protection and protected procedure calls without slowing down the processor’s clock speed.


international conference on logic programming | 2005

A unified memory model for pointers

Harvey Tuch; Gerwin Klein

One of the challenges in verifying systems level code is the low-level, untyped view of the machine state that operating systems have. We describe a way to faithfully formalise this view while at the same time providing an easy-to-use, abstract and typed view of memory where possible. We have used this formal memory model to verify parts of the virtual memory subsystem of the L4 high-performance microkernel. All formalisations and proofs have been carried out in the theorem prover Isabelle and the verified code has been integrated into the current implementation of L4.


virtual execution environments | 2012

Block storage virtualization with commodity secure digital cards

Harvey Tuch; Cyprien Laplace; Kenneth C. Barr; Bi Wu

Smartphones, tablets and other mobile platforms typically accommodate bulk data storage with low-cost, FAT-formatted Secure Digital cards. When one uses a mobile device to run a full-system virtual machine (VM), there can be a mismatch between 1) the VMs I/O mixture, security and reliability requirements and 2) the properties of the storage media available for VM block storage and checkpoint images. To resolve this mismatch, this paper presents a new VM disk image format called the Logging Block Store (LBS). After motivating the need for a new format, LBS is described in detail with experimental results demonstrating its efficacy. As a result of this work, recommendations are made for future optimizations throughout the stack that may simplify and improve the performance of storage virtualization systems on mobile platforms.


hot topics in operating systems | 2005

OS verification: now!

Harvey Tuch; Gerwin Klein; Gernot Heiser


Archive | 2011

Cooperative memory resource management for virtualized computing devices

Harvey Tuch; Craig Newell; Cyprien Laplace

Collaboration


Dive into the Harvey Tuch's collaboration.

Top Co-Authors

Avatar

Gerwin Klein

University of New South Wales

View shared research outputs
Top Co-Authors

Avatar

Gernot Heiser

University of New South Wales

View shared research outputs
Researchain Logo
Decentralizing Knowledge