Workshop Program

All sessions and breaks will be held in Untere Aula unless otherwise noted.

The full papers published by USENIX for the workshop are available as a download or individually below to workshop registrants immediately and to everyone beginning May 18, 2015. Everyone can view the abstracts immediately. Copyright to the individual works is retained by the author[s]. 

Downloads for registered HotOS XV Attendees
Attendee Files 
HotOS XV Papers ZIP
HotOS XV Papers ZIP (Update 05-08-15)
HotOS XV Papers ZIP (Update 05-16-15)
HotOS XV Attendee List

 

Sunday, May 17, 2015

4:00 pm–6:00 pm Sunday

Badge pickup

Untere Aula

6:30 pm Sunday

Dinner

Pfisterei

Monday, May 18, 2015

7:00 am–8:30 am Monday

Breakfast

Pfisterei

8:00 am–9:00 am Monday

Badge pickup

Untere Aula

8:45 am–9:00 am Monday

Opening Remarks

Program Chair: George Candea, École Polytechnique Fédérale de Lausanne (EPFL)

9:00 am–10:30 am Monday

Big Memory

Trash Day: Coordinating Garbage Collection in Distributed Systems

9:00 am-9:30 am

Martin Maas, University of California, Berkeley, and Oracle Labs, Cambridge;Tim Harris, Oracle Labs, Cambridge; Krste Asanović and John Kubiatowicz, University of California, Berkeley

Cloud systems such as Hadoop, Spark and Zookeeper are frequently written in Java or other garbage-collected languages. However, GC-induced pauses can have a significant impact on these workloads. Specifically, GC pauses can reduce throughput for batch workloads, and cause high tail-latencies for interactive applications.

In this paper, we show that distributed applications suffer from each node’s language runtime system making GC-related decisions independently. We first demonstrate this problem on two widely-used systems (Apache Spark and Apache Cassandra). We then propose solving this problem using a Holistic Runtime System, a distributed language runtime that collectively manages runtime services across multiple nodes.

We present initial results to demonstrate that this Holistic GC approach is effective both in reducing the impact of GC pauses on a batch workload, and in improving GC-related tail-latencies in an interactive setting.

Available Media

Broom: Sweeping Out Garbage Collection from Big Data Systems

9:30 am-10:00 am

Ionel Gog, University of Cambridge; Jana Giceva, ETH Zürich; Malte Schwarzkopf, University of Cambridge; Kapil Vaswani, Dimitrios Vytiniotis, Ganesan Ramalingam, and Manuel Costa, Microsoft Research; Derek G. Murray; Steven Hand; Michael Isard

Many popular systems for processing “big data” are implemented in high-level programming languages with automatic memory management via garbage collection (GC). However, high object churn and large heap sizes put severe strain on the garbage collector. As a result, applications underperform significantly: GC increases the runtime of typical data processing tasks by up to 40%.

We propose to use region-based memory management instead of GC in distributed data processing systems. In these systems, many objects have clearly defined lifetimes. Hence, it is natural to allocate these objects in fate-sharing regions, obviating the need to scan a large heap. Regions can be memory-safe and could be inferred automatically. Our initial results show that region-based memory management reduces emulated Naiad vertex runtime by 34% for typical data analytics jobs.

Available Media

Elastic Memory: Bring Elasticity Back to In-Memory Big Data Analytics

10:00 am-10:30 am

Joo Seong Jeong, Woo-Yeon Lee, Yunseong Lee, Youngseok Yang, Brian Cho, Byung-Gon Chun, Seoul National University

Recent big data processing systems provide quick answers to users by keeping data in memory across a cluster. As a simple way to manage data in memory, the systems are deployed as long-running workers on a static allocation of the cluster resources. This simplicity comes at a cost: elasticity is lost. Using today’s resource managers such as YARN and Mesos, this severely reduces the utilization of the shared cluster and limits the performance of such systems. In this paper, we propose Elastic Memory, an abstraction that can dynamically change the allocated memory resource to improve resource utilization and performance. With Elastic Memory, we outline how we enable elastic interactive query processing and machine learning.

Available Media
10:30 am–11:00 am Monday

Break with Refreshments

11:00 am–12:30 pm Monday

Our Friend, the CPU

Software Engagement with Sleeping CPUs

11:00 am-11:30 am

Qi Zhu, National University of Defense Technology, China; Meng Zhu, University of Rochester; Bo Wu, Colorado School of Mines; Xipeng Shen, North Carolina State University; Kai Shen, University of Rochester; Zhiying Wang, National University of Defense Technology, China

Idle CPUs may enter power-saving hardware sleeps by, for instance, lowering the operating voltage and flushing the caches. However, wakeup delays that reach one hundred Secs or more are disrupting the operations of fast devices like solid-state disks and tightly integrated accelerators. On the other hand, maximal power savings on modern multicores are only realized through continuous, simultaneous CPU sleeps. We argue that strong software engagement (at the OS and applications) is needed to maximize the power saving while maintaining the desired performance. Specifically, we present anticipatory CPU wakeups for latency-sensitive operations on fast devices. We also explore power-saving sleep shaping opportunities through non-work-conserving scheduling on smartphones and staged bursts on servers.

Available Media

Failure Sketches: A Better Way to Debug

11:30 am-12:00 pm

Baris Kasikci, École Polytechnique Fédérale de Lausanne (EPFL); Cristiano Pereira and Gilles Pokam, Intel Corporation; Benjamin Schubert, École Polytechnique Fédérale de Lausanne (EPFL); Madanlal Musuvathi, Microsoft Research; George Candea, École Polytechnique Fédérale de Lausanne (EPFL)

One of the main reasons debugging is hard and time consuming is that existing debugging tools do not provide an explanation for the root causes of failures. Additionally, existing techniques either rely on expensive runtime recording or assume existence of a given program input that reliably reproduces the failure, which makes them hard to apply in production scenarios. Consequently, developers spend precious time chasing elusive bugs, resulting in productivity loss.

We propose a new debugging technique, called failure sketching, that provides the developer with a high-level explanation for the root cause of a failure. A failure sketch achieves this goal because: 1) it only contains program statements that cause a failure; 2) it shows which program properties differ between failing and successful executions. We argue that failure sketches can be built by combining in-house static analysis and crowdsourced dynamic analysis. For building a failure sketch, we do not assume that developers can reproduce the failure. We show preliminary evidence that failure sketches can significantly improve programmer productivity.

Available Media

On Instruction Organization

12:00 pm-12:30 pm

Tyler Dwyer and Alexandra Fedorova, Simon Fraser University

To attain high program performance, a developer must be conscious to the many intricacies of hardware and organize their code accordingly. This however, is not an easy task. Often the hardware is unknown to developers, or, if it is known, it is difficult to control or account for. Developers struggle with this challenge by using hardware conscious algorithms, specialized programming languages, or doing manual low-level optimizations.

We investigate the concept of instruction organization at a more general level. In particular, we investigate if a program, running on existing hardware, can be automatically reorganized according to a chosen organization metric. Further, if the reorganization can be done automatically, a program can then be reorganized during execution to adapt to changes in system resources, and changing execution and data access patterns.

We use data locality as an organization metric with the goal of reducing data access latency and improving program performance.

Available Media
12:30 pm–2:00 pm Monday

Lunch

Pfisterei

2:00 pm–3:30 pm Monday

Our Friend, the Network

FlexNIC: Rethinking Network DMA

2:00 pm-2:30 pm

Antoine Kaufmann, Simon Peter, Thomas Anderson, and Arvind Krishnamurthy, University of Washington

We propose FlexNIC, a flexible network DMA interface that can be used by operating systems and applications alike to reduce packet processing overheads. The recent surge of network I/O performance has put enormous pressure on memory and software I/O processing subsystems. Yet even at high speeds, flexibility in packet handling is still important for security, performance isolation, and virtualization.

Thus, our proposal moves some of the packet processing traditionally done in software to the NIC DMA controller, where it can be done flexibly and at high speed. We show how FlexNIC can benefit widely used data center server applications, such as key-value stores.

Available Media

Distributing the Data Plane for Remote Storage Access

2:30 pm-3:00 pm

Torsten Hoefler, ETH Zürich; Robert B. Ross, Argonne National Laboratory; Timothy Roscoe, ETH Zürich

Sub-microsecond network and memory latencies require fast user-level access to local and remote storage. While user-level access to local storage has been demonstrated recently, it does currently not extend to serverless parallel systems in datacenter environments. We propose direct user-level access to remote storage in a distributed setting, unifying fast data access and high-performance remote memory access programming. We discuss a minimal hardware extension of the IOMMU to enable direct remote storage access. In order to maintain optimal performance in the system, we use epoch-based accesses to allow fine-tuning of atomicity, consistency, isolation, and durability semantics. We also address the problem of user-managed coherent caching. Finally, we briefly discuss the design of DiDAFS, a Distributed Direct Access File System that enables ecient data analytics use-cases such as bu ered producer-consumer synchronization and key-value stores as well as deeper integration of storage into high performance computing applications.

Available Media

Route Bazaar: Automatic Interdomain Contract Negotiation

3:00 pm-3:30 pm

Ignacio Castro, IMDEA Networks Institute, International Computer Science Institute, and Open University of Catalonia; Aurojit Panda, University of California, Berkeley; Barath Raghavan, International Computer Science Institute; Scott Shenker, University of California, Berkeley, and International Computer Science Institute; Sergey Gorinsky, IMDEA Networks Institute

While it is widely acknowledged that the Border Gateway Protocol (BGP) has many flaws, most of the proposed fixes focus solely on improving the stability and security of its path computation. However, because interdomain routing involves contracts between Autonomous Systems (ASes), this paper argues that contractual and routing issues should be tackled jointly. We propose Route Bazaar, a backward-compatible system for flexible Internet connectivity. Inspired by the decentralized construction of trust in cryptocurrencies, Route Bazaar uses a decentralized public ledger and cryptography to provide ASes with automatic means to form, establish, and verify end-to-end connectivity agreements.

Available Media
3:30 pm–4:00 pm Monday

Break with Refreshments

4:00 pm–6:30 pm Monday

Free Time to Enjoy Kartause Ittingen

6:30 pm–8:00 pm Monday

Dinner

Pfisterei

8:00 pm–9:30 pm Monday

When Cyber Met Physical

A Case for Enforcing App-Specific Constraints to Mobile Devices by Using Trust Leases

4:00 pm-4:30 pm

Nuno Santos, Nuno O. Duarte, Miguel B. Costa, and Paulo Ferreira, INESC-ID and Instituto Superior Técnico, Universidade de Lisboa

In certain usage scenarios, mobile devices are required to operate in some constrained manner. For example, when movies are being screened in movie theaters, all devices in the room must be muted. However, typical mobile devices operate in unrestricted mode, allowing users to control their configurations. As a result, it is hard to guarantee that mobile devices operate under certain restrictions. In this paper, we present a security architecture that enables mobile applications to temporarily restrict the functionality of devices. To this end, we introduce a novel abstraction for mobile operating systems (MOS) called trust lease, which enables devices to safely switch between modes. We discuss the design implications that need to be addressed to implement this primitive on modern MOSes.

Available Media

Fault Tolerance and the Five-Second Rule

4:30 pm-5:00 pm

Ang Chen, Hanjun Xiao, Andreas Haeberlen, and Linh Thi Xuan Phan, University of Pennsylvania

We propose a new approach to fault tolerance that we call bounded-time recovery (BTR). BTR is intended for systems that need strong timeliness guarantees during normal operation but can tolerate short outages in an emergency, e.g., when they are under attack. We argue that BTR could be a good fit for many cyber-physical systems. We also sketch a technical approach to providing BTR, and we discuss some challenges that still remain.

Available Media

A Case for Ending Monolithic Apps for Connected Devices

5:00 pm-5:30 pm

Rayman Preet Singh, University of Waterloo; Chenguang Shen, University of California, Los Angeles; Amar Phanishayee, Aman Kansal, and Ratul Mahajan, Microsoft Research

Applications using connected devices are difficult to develop today because they are constructed as monolithic silos, tightly coupled to sensing devices, and must implement all data sensing and inference logic, even as devices move or are temporarily disconnected. We present Beam, a framework and runtime for distributed inference-driven applications that (i) decouples applications, inference algorithms, and devices, (ii) handles environmental dynamics, and (iii) automatically splits sensing and inference logic across devices while optimizing resource usage. Using Beam, applications only specify "what should be sensed or inferred," without worrying about "how it is sensed or inferred." Beam simplifies application development and maximizes the utility of user-owned devices. It is time to end monolithic apps for connected devices.

Available Media

 

Tuesday, May 19, 2015

7:00 am–8:30 am Tuesday

Breakfast

Pfisterei

8:00 am–9:00 am Tuesday

Badge pickup

Untere Aula

9:00 am–10:30 am Tuesday

Can You Get Big Fast?

Challenges to Adopting Stronger Consistency at Scale

9:00 am-9:30 am

Phillipe Ajoux, Nathan Bronson, and Sanjeev Kumar, Facebook; Wyatt Lloyd, University of Southern California and Facebook; Kaushik Veeraraghavan, Facebook

There have been many recent advances in distributed systems that provide stronger semantics for geo-replicated data stores like those underlying Facebook. These research systems provide a range of consistency models and transactional abilities while demonstrating good performance and scalability on experimental workloads. At Facebook we are excited by these lines of research, but fundamental and operational challenges currently make it infeasible to incorporate these advances into deployed systems. This paper describes some of these challenges with the hope that future advances will address them.

Available Media

Scalability! But at what COST?

9:30 am-10:00 am

Frank McSherry; Michael Isard; Derek G. Murray

We offer a new metric for big data platforms, COST, or the Configuration that Outperforms a Single Thread. The COST of a given platform for a given problem is the hardware configuration required before the platform outperforms a competent single-threaded implementation. COST weighs a system’s scalability against the overheads introduced by the system, and indicates the actual performance gains of the system, without rewarding systems that bring substantial but parallelizable overheads.

We survey measurements of data-parallel systems recently reported in SOSP and OSDI, and find that many systems have either a surprisingly large COST, often hundreds of cores, or simply underperform one thread for all of their reported configurations.

Available Media

From Lone Dwarfs to Giant Superclusters: Rethinking Operating System Abstractions for the Cloud

10:00 am-10:30 am

Nikos Vasilakis, Ben Karel, and Jonathan M. Smith, University of Pennsylvania

Unix took a rich smorgasbord of operating system features from its predecessors and pared it down to a small but powerful set of abstractions: files, processes, pipes, and the shell to glue the system together. In the intervening forty years, the common-case computational substrate has evolved from a lone PDP-11 minicomputer to vast clouds of virtualized computational resources. Contemporary distributed systems are being built by adding layer upon layer atop the foundation established by Unix’s chosen abstractions. Unfortunately, the resulting mess has lost the “simplicity, elegance, and ease of use” that was a hallmark of the original Unix design. To cope with distribution at astronomic scale, we must take our operating systems back to the drawing board. We are living in a new world, and it is time to be brave.

Available Media
10:30 am–11:00 am Tuesday

Break with Refreshments

11:00 am–12:30 pm Tuesday

Rock the OS

Not Your Parents' Physical Address Space

11:00 am-11:30 am

Simon Gerber, Gerd Zellweger, Reto Achermann, Kornilios Kourtis, and Timothy Roscoe, ETH Zürich; Dejan Milojicic, HP Labs

A physical memory address is no longer the stable concept it was. We demonstrate how modern computer systems from rack-scale to SoCs have multiple physical address spaces, which overlap and intersect in complex, dynamic ways, and may be too small to even address available memory in the near future.

We present a new model of representing and interpreting physical addresses in a machine for the purposes of memory management, and outline an implementation of the model in a memory system based on capabilities which can handle arbitrary translations between physical address spaces and still globally manage system memory.

Finally, we point out future challenges in managing physical memory, of which our model and design are merely a foundation.

Available Media

Beyond Processor-centric Operating Systems

11:30 am-12:00 pm

Paolo Faraboschi, Kimberly Keeton, Tim Marsland, Dejan Milojicic, HP Labs

By the end of the decade, computing designs will shift from a processor-centric architecture to a memory-centric architecture. At rack scale, we can expect a large pool of non-volatile memory (NVM) that will be accessed by heterogeneous and decentralized compute resources. Such memory-centric architectures will present challenges that today’s processor-centric OSes may not be able to address. In this paper, we describe the characteristics and consequences of memory-centric architectures and propose a memory-centric OS design that moves traditional OS functionality outside of the compute node and closer to memory.

Available Media

My OS Ought to Know Me Better: In-app Behavioural Analytics as an OS Service

12:00 pm-12:30 pm

Earlence Fernandes, University of Michigan; Oriana Riva and Suman Nath, Microsoft Research

What a user does in an app (e.g., viewing the menu of a restaurant or listening to the same song several times) is key to understanding user interests and preferences, and ultimately to enabling personalised experiences. This kind of behavioural analytics information, as we call it, is rarely used today (and if it is used, it remains siloed in one app). This paper makes a case for the OS to provide an in-app behavioural analytics service which monitors user activities within an app to extract such analytics and to share them with other apps in a secure, private and uniform way. All this must be achieved with zero-developer effort and with low resource overhead.

Available Media
12:30 pm–2:00 pm Tuesday

Lunch

Pfisterei

2:00 pm–3:30 pm Tuesday

A Better Way to Stash

Amber: Decoupling User Data from Web Applications

2:00 pm-2:30 pm

Tej Chajed, Jon Gjengset, Jelle van den Hooff, M. Frans Kaashoek, Massachusetts Institute of Technology; James Mickens, Microsoft Research; Robert Morris and Nickolai Zeldovich, Massachusetts Institute of Technology

User-generated content is becoming increasingly common on the Web, but current web applications isolate their users’ data, enabling only restricted sharing and cross-service integration. We believe users should be able to share their data seamlessly between their applications and with other users. To that end, we propose Amber, an architecture that decouples users’ data from applications, while providing applications with powerful global queries to find user data. We demonstrate how multi-user applications, such as e-mail, can use these global queries to efficiently collect and monitor relevant data created by other users. Amber puts users in control of which applications they use with their data and with whom it is shared, and enables a new class of applications by removing the artificial partitioning of users’ data by application.

Available Media

Beyond Storage APIs: Provable Semantics for Storage Stacks

2:30 pm-3:00 pm

Ramnatthan Alagappan, Vijay Chidambaram, Thanumalayan Sankaranarayana Pillai, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau, University of Wisconsin—Madison

Applications are deployed upon deep, diverse storage stacks that are constructed on-demand. Although many storage stacks share a common API to allow portability, application behavior differs in subtle ways depending upon unspecified properties of the underlying storage stack. Currently, there is no way to test whether an application will behave correctly on a given storage stack: corruption or data loss could occur at any point in the application lifetime.

We argue that we require an expressive language for specifying the complex storage guarantees required by different applications. The same language can be used to write a high-level specification capturing the design of different storage-stack layers. Given the required guarantees, and the storage-stack specifications, we can prove that stacks constructed dynamically (by composing different storage-stack layers) provide the guarantees required by the application.

Available Media

Specifying Crash Safety for Storage Systems

3:00 pm-3:30 pm

Haogang Chen, Daniel Ziegler, Adam Chlipala, and M. Frans Kaashoek, MIT CSAIL; Eddie Kohler, Harvard University; Nickolai Zeldovich, MIT CSAIL

Software that is provably correct has been a long-time goal of computer science. Until recently this goal was realized for only small programs, but over the last decade several large systems have been built that have provable correctness properties. Examples include CompCert, seL4, IronClad, CertiKOS, Bedrock, Termite, Click’s dataplane, and Jitk. One aspect not covered by these systems is reasoning about failures—power failures, hardware faults, or software bugs—which is well-known to be tricky in systems code.

Available Media
3:30 pm–4:00 pm Tuesday

Break with Refreshments

4:00 pm–5:30 pm Tuesday

Dear User, ...

The Activity Platform

4:00 pm-4:30 pm

Helen J. Wang, Alexander Moshchuk, Michael Gamon, Mona Haraty, Shamsi Iqbal, Eli T. Brown, Ashish Kapoor, Chris Meek, Eric Chen, Yuan Tian, Jaime Teevan, Mary Czerwinski, and Susan Dumais, Microsoft Research

In this paper, we advocate “activity” to be a central abstraction between people and computing instead of applications. We outline the vision of the activity platform as the next-generation social platform.

Available Media

The Most Dangerous Code in the Browser

3:30 pm-4:00 pm

Stefan Heule and Devon Rifkin, Stanford University; Alejandro Russo,Chalmers University of Technology; Deian Stefan, Stanford University

Browser extensions are ubiquitous. Yet, in today’s browsers, extensions are the most dangerous code to user privacy. Extensions are third-party code, like web applications, but run with elevated privileges. Even worse, existing browser extension systems give users a false sense of security by considering extensions to be more trustworthy than web applications. This is because the user typically has to explicitly grant the extension a series of permissions it requests, e.g., to access the current tab or a particular website. Unfortunately, extensions developers do not request minimum privileges and users have become desensitized to install-time warnings. Furthermore, permissions offered by popular browsers are very broad and vague. For example, over 71% of the top-500 Chrome extensions can trivially leak the user’s data from any site. In this paper,we argue for new extension system design, based on mandatory access control, that protects the user’s privacy from malicious extensions. A system employing this design can enable a range of common extensions to be considered safe, i.e., they do not require user permissions and can be ensured to not leak information, while allowing the user to share information when desired. Importantly, such a design can make permission requests a rarity and thus more meaningful.

Available Media

Inferring the Network Latency Requirements of Cloud Tenants

5:00 pm-5:30 pm

Jeffrey C. Mogul and Ramana Rao Kompella, Google

Cloud IaaS and PaaS tenants rely on cloud providers to provide network infrastructures that make the appropriate tradeoff between cost and performance. This can include mechanisms to help customers understand the performance requirements of their applications. Previous research (e.g., Proteus and Cicada) has shown how to do this for network-bandwidth demands, but cloud tenants may also need to meet latency objectives, which in turn may depend on reliable limits on network latency, and its variance, within the cloud providers infrastructure. On the other hand, if network latency is sufficient for an application, further decreases in latency might add cost without any benefit. Therefore, both tenant and provider have an interest in knowing what network latency is good enough for a given application.

This paper explores several options for a cloud provider to infer a tenants network-latency demands, with varying tradeoffs between requirements for tenant participation, accuracy of inference, and instrumentation overhead. In particular, we explore the feasibility of a hypervisor-only mechanism, which would work without any modifications to tenant code, even in IaaS clouds.

Available Media
6:30 pm–8:00 pm Tuesday

Dinner

Pfisterei

 

Wednesday, May 20, 2015

7:00 am–8:30 am Wednesday

Breakfast

Pfisterei

8:00 am–9:00 am Wednesday

Badge pickup

Untere Aula

9:00 am–10:30 am Wednesday

Random Is Fun

Recommendations for Randomness in the Operating System, or How to Keep Evil Children out of Your Pool and Other Random Facts

9:00 am-9:30 am

Henry Corrigan-Gibbs and Suman Jana, Stanford University

Common misconceptions about randomness underlie the design and implementation of randomness sources in popular operating systems. We debunk these fallacies with a survey of the “realities of randomness” and derive a number of new architectural principles for OS randomness subsystems.

Available Media

The Case for Less Predictable Operating System Behavior

9:30 am-10:00 pm

Ruimin Sun, University of Florida; Donald E. Porter, Stony Brook University; Daniela Oliveira, University of Florida; Matt Bishop, University of California, Davis

“No one is so brave that he is not disturbed by something unexpected.” Julius Caesar

The operating system is increasingly regarded as untrustworthy. Applications, hardware, and hypervisors are erecting defenses to insulate themselves from the operating system. This paper explores the potential benefits if operating systems simply embraced these lowered expectations and deliberately varied API behavior. We argue that, even for trusted or benign applications, diversity roughly within the specification can improve resilience to attack and improve robustness. Malicious software tends to be brittle; a preliminary case study indicates that, for software of questionable origin, a somewhat hostile operating system may do more good than harm for system security. This paper describes the architecture of Chameleon, an ongoing project to implement spectrum behavior as an operating system feature.

Available Media

Lax: Driver Interfaces for Approximate Sensor Device Access

10:00 am-10:30 am

Phillip Stanley-Marbell and Martin Rinard, Massachusetts Institute of Technology

Embedded sensor platforms can dissipate most of their energy in accessing sensor integrated circuits such as gyroscopes. But the algorithms which process the sensor data and the humans who consume the overall output of the system may often be able to tolerate some amount of error in the retrieved sensor values. Because devices are accessed through interfaces provided by system software, exploiting the tolerable error for improvements in energy efficiency requires appropriate system software and hardware support. However, no such support currently exists.

We present Lax, a device driver abstraction for interacting with sensors that enables power savings in exchange for occasionally returning erroneous sensor data. Our implementation on a hardware prototype delivers savings in sensor dynamic power dissipation of up to 48% (as compared to precise device access) while providing sensor access error rates lower than 5 data acquisition errors per 100 data accesses. Given the significant proportion of system energy budgets in wearable platforms that are devoted to sensors, approximate sensor data acquisition using Lax can deliver significant system-level energy savings.

Available Media
10:30 am–11:00 am Wednesday

Break with Refreshments

11:00 am–12:00 pm Wednesday

Comfort for the Paranoid

ASPIRE: Iterative Specification Synthesis for Security

11:00 am-11:30 am

Kevin Zijie Chen, Warren He, and Devdatta Akhawe, University of California, Berkeley; Vijay D'Silva; Prateek Mittal, Princeton University; Dawn Song, University of California, Berkeley

How to perform a systematic security analysis of complex applications is a challenging and open question. Approaches based on formal verification are impeded due to the lack of application specifications. To address this challenge, we propose a framework, called ASPIRE, that enables analysts to automatically synthesize specifications from examples such as application input-output examples and system demonstrations. Our approach starts by synthesizing the initial candidate specifications in a domain specific language that conform to the examples, and iteratively prunes the candidate set by incorporating more user feedback. We implement a prototype of ASPIRE for synthesizing and checking specifications of web applications, although our approach is not limited to web security, and use it in three case studies to demonstrate the discovery of complex vulnerabilities in implementations of real world web applications. Our work is the first to design a general framework that leverages program synthesis techniques for security applications.

Available Media

Practical Always-on Taint Tracking on Mobile Devices

11:30 am-12:00 pm

Justin Paupore, Earlence Fernandes, and Atul Prakash, University of Michigan; Sankardas Roy and Xinming Ou, Kansas State University

Taint tracking is a crucial yet expensive security primitive. In the context of mobile devices, given the volume of sensitive data being generated and manipulated, taint tracking is an important aspect of defense in depth, yet is not widely adopted due to performance and energy constraints. Existing work has proposed several forms of optimization for desktop based systems – software only mechanisms, static analysis, hybrid analysis, and hardware-assisted techniques. This paper makes the case for an always-on taint tracking system for mobile devices that embraces the unique properties of mobile operating systems – interpreted runtimes, well-defined APIs, and an overlooked ARM processor feature. Our proposed system combines precise static analysis on Java code and real-time instruction trace support widely available on ARM processors to enable efficient taint tracking.

Available Media
12:00 am–1:30 pm Wednesday

Lunch

Pfisterei