THINC: A Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices

Ricardo Baratto

Ph.D. Thesis, Department of Computer Science, Columbia University, April 2011

Abstract

THINC is a new virtual and remote display architecture for desktop computing. It has been designed to address the limitations and performance shortcomings of existing remote display technology, and to provide a building block around which novel desktop architectures can be built. THINC is architected around the notion of a virtual display device driver, a software-only component that behaves like a traditional device driver, but instead of managing specific hardware, enables desktop input and output to be intercepted, manipulated, and redirected at will. On top of this architecture, THINC introduces a simple, low-level, device-independent representation of display changes, and a number of novel optimizations and techniques to perform efficient interception and redirection of display output. This dissertation presents the design and implementation of THINC. It also intro- duces a number of novel systems which build upon THINC’s architecture to provide new and improved desktop computing services. The contributions of this dissertation are as follows:

  • A high performance remote display system for LAN and WAN environments. This system differs from existing remote display technologies in that it focuses on the architecture of the system as a mechanism to improve performance, and not just on the remote display protocol and compression techniques.
  • A novel mechanism to natively support multimedia content in a remote display system in a way that is both transparent to applications and format indepen- dent.
  • pTHINC, a system to deliver improved remote display support for mobile de- vices, both in terms of performance and usability, and provide a competitive, and in some cases superior, alternative to native mobile applications.
  • MobiDesk, a desktop utility computing infrastructure that enables service provi- ders to host desktop sessions in fully virtualized environments. Hosted sessions can be remotely accessed using THINC, they can be migrated across computers to provide high-availability, and can be effectively and efficiently protected from denial of service attacks.
  • Moving beyond remote display, we show how THINC’s architecture can be used to provide continuous, low overhead recording of a desktop. Alongside, we introduce a novel way to leverage desktop accessibility services to allow users to search their recording based on captured text content.

Moving beyond remote display, we show how THINC’s architecture can be used to provide continuous, low overhead recording of a desktop. Alongside, we introduce a novel way to leverage desktop accessibility services to allow users to search their recording based on captured text content.

PDF

barattothesis

Columbia University Department of Computer Science