A Pliable Hybrid Architecture for Code Isolation

The unprecedented growth of computing power and communication bandwidth in the last few decades has driven an explosion in the size and complexity of application software. Specifically, it has spurred an almost universal adoption of modular and extensible software designs, from ordinary PC applicati...

Full description

Bibliographic Details
Main Author: Ganev, Ivan Borissov
Published: Georgia Institute of Technology 2007
Subjects:
Online Access:http://hdl.handle.net/1853/16304
id ndltd-GATECH-oai-smartech.gatech.edu-1853-16304
record_format oai_dc
spelling ndltd-GATECH-oai-smartech.gatech.edu-1853-163042013-01-07T20:20:47ZA Pliable Hybrid Architecture for Code IsolationGanev, Ivan BorissovHybridsCode isolationExtensibilityThe unprecedented growth of computing power and communication bandwidth in the last few decades has driven an explosion in the size and complexity of application software. Specifically, it has spurred an almost universal adoption of modular and extensible software designs, from ordinary PC applications, to operating systems kernels, and even to embedded systems. In many cases, however, the ability to extend software systems has come hand in hand with the need to isolate them from untrusted or potentially faulty extensions. This dissertation will focus on the important problem of code isolation, where existing techniques vary in many and often interrelated dimensions such as granularity, code complexity, invocation latency, dynamism, isolation strategy, permissible extension functionality, and degree of integration with the operating system kernel. Specifically, the implementation of a particular technique imposes restrictions on the properties of extensions. Examples include proof-based techniques that are only applicable to simple extensions of small granularity, hardware-based isolation techniques that typically incur a measurable invocation latency due to hardware re-configuration overhead, and programming language techniques that impose implementation and compiler restrictions. The goal of this dissertation is to explore the design space of code isolation techniques, identify characteristics of individual approaches, and then argue for and design a hybrid approach that combines their advantages while avoiding their drawbacks. The contributions of this thesis will be threefold: (1) a taxonomy of metrics and properties relevant to software code isolation techniques, (2) the design and implementation of a novel hybrid architecture for safe kernel extension with pliable characteristics, and (3) an evaluation of the hybrid approach and comparison with homogeneous alternatives.Georgia Institute of Technology2007-08-16T17:58:52Z2007-08-16T17:58:52Z2007-05-03Dissertationhttp://hdl.handle.net/1853/16304
collection NDLTD
sources NDLTD
topic Hybrids
Code isolation
Extensibility
spellingShingle Hybrids
Code isolation
Extensibility
Ganev, Ivan Borissov
A Pliable Hybrid Architecture for Code Isolation
description The unprecedented growth of computing power and communication bandwidth in the last few decades has driven an explosion in the size and complexity of application software. Specifically, it has spurred an almost universal adoption of modular and extensible software designs, from ordinary PC applications, to operating systems kernels, and even to embedded systems. In many cases, however, the ability to extend software systems has come hand in hand with the need to isolate them from untrusted or potentially faulty extensions. This dissertation will focus on the important problem of code isolation, where existing techniques vary in many and often interrelated dimensions such as granularity, code complexity, invocation latency, dynamism, isolation strategy, permissible extension functionality, and degree of integration with the operating system kernel. Specifically, the implementation of a particular technique imposes restrictions on the properties of extensions. Examples include proof-based techniques that are only applicable to simple extensions of small granularity, hardware-based isolation techniques that typically incur a measurable invocation latency due to hardware re-configuration overhead, and programming language techniques that impose implementation and compiler restrictions. The goal of this dissertation is to explore the design space of code isolation techniques, identify characteristics of individual approaches, and then argue for and design a hybrid approach that combines their advantages while avoiding their drawbacks. The contributions of this thesis will be threefold: (1) a taxonomy of metrics and properties relevant to software code isolation techniques, (2) the design and implementation of a novel hybrid architecture for safe kernel extension with pliable characteristics, and (3) an evaluation of the hybrid approach and comparison with homogeneous alternatives.
author Ganev, Ivan Borissov
author_facet Ganev, Ivan Borissov
author_sort Ganev, Ivan Borissov
title A Pliable Hybrid Architecture for Code Isolation
title_short A Pliable Hybrid Architecture for Code Isolation
title_full A Pliable Hybrid Architecture for Code Isolation
title_fullStr A Pliable Hybrid Architecture for Code Isolation
title_full_unstemmed A Pliable Hybrid Architecture for Code Isolation
title_sort pliable hybrid architecture for code isolation
publisher Georgia Institute of Technology
publishDate 2007
url http://hdl.handle.net/1853/16304
work_keys_str_mv AT ganevivanborissov apliablehybridarchitectureforcodeisolation
AT ganevivanborissov pliablehybridarchitectureforcodeisolation
_version_ 1716474725271601152