Steven Levi

dblp:96/793 · DBLP profile ↗
← Back
4ranked-venue papers
0as first author
0since 2021 · last 2010
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 3Human-computer interaction and ubiquitous computing · 1

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.

Software engineering, system software, and programming languages
3 papers
Operating systems · 89% Runtime systems and virtual machines · 6% Program verification · 5%
Network and information security
2 papers
Systems and software security · 100%

Topics — the 7 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Operating systems › system security › operating system security › protection mechanism › isolation
process isolation
0.122007
Sealing OS processes to improve dependability and safety · EuroSys 2007
Language support for fast and reliable message-based communication in singularity OS · EuroSys 2006
Systems and software security
operating system security
0.112007
Sealing OS processes to improve dependability and safety · EuroSys 2007
Operating systems › i/o › i/o subsystem
device drivers
0.112006
Solving the starting problem: device drivers as self-describing artifacts · EuroSys 2006
Operating systems › resource management
resource contention detection
0.112006
Solving the starting problem: device drivers as self-describing artifacts · EuroSys 2006
Operating systems
resource management
0.112006
Solving the starting problem: device drivers as self-describing artifacts · EuroSys 2006
Systems and software security › isolation
software isolation
0.012006
Solving the starting problem: device drivers as self-describing artifacts · EuroSys 2006
Program verification
verification
0.012006
Language support for fast and reliable message-based communication in singularity OS · EuroSys 2006

Methods — techniques the papers use, named apart from their topics

sealing · 0.1offline reasoning · 0.1declarative hardware requirements · 0.1application abstraction · 0.1verification techniques · 0.1language support · 0.1
YearPublicationVenuePosition
2010 User experiences with activity-based navigation on mobile devices
abstract
We introduce activity-based navigation, which uses human activities derived from sensor data to help people navigate, in particular to retrace a "trail" previously taken by that person or another person. Such trails may include step counts, walking up/down stairs or taking elevators, compass directions, and photos taken along a user's path, in addition to absolute positioning (GPS and maps) when available. To explore the user experience of activity-based navigation, we built Greenfield, a mobile device interface for finding a car. We conducted a ten participant user study comparing users' ability to find cars across three different presentations of activity-based information as well as verbal instructions. Our results show that activity-based navigation can be used for car finding and suggest its promise more generally for supporting navigation tasks. We present lessons for future activity-based navigation interfaces, and motivate further work in this space, particularly in the area of robust activity inference.
A. J. Bernheim Brush, Amy K. Karlson, James Scott, Raman Sarin, Andy Jacobs, Barry Bond, Oscar Murillo, Galen C. Hunt, Mike Sinclair, Kerry Hammil, Steven Levi
Mobile HCI11
2007 Sealing OS processes to improve dependability and safety
abstract
In most modern operating systems, a process is a hardware-protected abstraction for isolating code and data. This protection, however, is selective. Many common mechanisms---dynamic code loading, run-time code generation, shared memory, and intrusive system APIs---make the barrier between processes very permeable. This paper argues that this traditional open process architecture exacerbates the dependability and security weaknesses of modern systems.
Galen C. Hunt, Mark Aiken, Manuel Fähndrich, Chris Hawblitzel, Orion Hodson, James R. Larus, Steven Levi, Bjarne Steensgaard, David Tarditi, Ted Wobber
EuroSys7
2006 Language support for fast and reliable message-based communication in singularity OS
abstract
Message-based communication offers the potential benefits of providing stronger specification and cleaner separation between components. Compared with shared-memory interactions, message passing has the potential disadvantages of more expensive data exchange (no direct sharing) and more complicated programming.In this paper we report on the language, verification, and run-time system features that make messages practical as the sole means of communication between processes in the Singularity operating system. We show that using advanced programming language and verification techniques, it is possible to provide and enforce strong system-wide invariants that enable efficient communication and low-overhead software-based process isolation. Furthermore, specifications on communication channels help in detecting programmer mistakes early---namely at compile-time---thereby reducing the difficulty of the message-based programming model.The paper describes our communication invariants, the language and verification features that support them, as well as implementation details of the infrastructure. A number of benchmarks show the competitiveness of this approach.
Manuel Fähndrich, Mark Aiken, Chris Hawblitzel, Orion Hodson, Galen C. Hunt, James R. Larus, Steven Levi
EuroSys7
2006 Solving the starting problem: device drivers as self-describing artifacts
abstract
Run-time conflicts can affect even the most rigorously tested software systems. A reliance on execution-based testing makes it prohibitively costly to test every possible interaction among potentially thousands of programs with complex configurations. In order to reduce configuration problems, detect developer errors, and reduce developer effort, we have created a new first class operating system abstraction, the application abstraction, which enables both online and offline reasoning about programs and their configuration requirements.We have implemented a subset of the application abstraction for device drivers in the Singularity operating system. Programmers use the application abstraction by placing declarative statements about hardware and communication requirements within their code. Our design enables Singularity to learn the input/output and interprocess communication requirements of drivers without executing driver code. By reasoning about this information within the domain of Singularity's strong software isolation architecture, the installer can execute a subset the system's resource management algorithm at install time to verify that a new driver will not conflict with existing software. This abstract representation also allows the system to run the full algorithm at driver start time to ensure that there are never resource conflicts between executing drivers, and that drivers never use undeclared resources.
Michael F. Spear, Tom Roeder, Orion Hodson, Galen C. Hunt, Steven Levi
EuroSys5