Leveraging Legacy Code to Deploy Desktop Applications on the Web. Douceur, J. R., Elson, J., Howell, J., & Lorch, J. R. In pages 339-354. abstract bibtex Xax is a browser plugin model that enables developers to leverage existing tools, libraries, and entire programs to deliver feature-rich applications on the web. Xax employs a novel combination of mechanisms that collectively provide security, OS-independence, performance, and support for legacy code. These mechanisms include memory-isolated native code execution behind a narrow syscall interface, an abstraction layer that provides a consistent binary interface across operating systems, system services via hooks to existing browser mechanisms, and lightweight modifications to existing tool chains and code bases. We demonstrate a variety of applications and libraries from existing code bases, in several languages, produced with various tool chains, running in multiple browsers on multiple operating systems. With roughly two person-weeks of effort, we ported 3.3 million lines of code to Xax, including a PDF viewer, a Python interpreter, a speech synthesizer, and an OpenGL pipeline.
@inproceedings{ dou08,
crossref = {osdi2008},
author = {John R. Douceur and Jeremy Elson and Jon Howell and Jacob R. Lorch},
title = {Leveraging Legacy Code to Deploy Desktop Applications on the Web},
pages = {339-354},
topic = {xax[1]},
uri = {http://research.microsoft.com/pubs/72878/xax-osdi08.pdf},
uri = {http://www.usenix.org/event/osdi08/tech/full_papers/douceur/douceur_html/index.html},
uri = {http://www.usenix.org/events/osdi08/tech/full_papers/douceur/douceur.pdf},
abstract = {Xax is a browser plugin model that enables developers to leverage existing tools, libraries, and entire programs to deliver feature-rich applications on the web. Xax employs a novel combination of mechanisms that collectively provide security, OS-independence, performance, and support for legacy code. These mechanisms include memory-isolated native code execution behind a narrow syscall interface, an abstraction layer that provides a consistent binary interface across operating systems, system services via hooks to existing browser mechanisms, and lightweight modifications to existing tool chains and code bases. We demonstrate a variety of applications and libraries from existing code bases, in several languages, produced with various tool chains, running in multiple browsers on multiple operating systems. With roughly two person-weeks of effort, we ported 3.3 million lines of code to Xax, including a PDF viewer, a Python interpreter, a speech synthesizer, and an OpenGL pipeline.}
}
Downloads: 0
{"_id":{"_str":"53ff72c27c90ec6e13001225"},"__v":0,"authorIDs":[],"author_short":["Douceur, J.<nbsp>R.","Elson, J.","Howell, J.","Lorch, J.<nbsp>R."],"bibbaseid":"douceur-elson-howell-lorch-leveraginglegacycodetodeploydesktopapplicationsontheweb","bibdata":{"downloads":0,"role":"author","bibbaseid":"douceur-elson-howell-lorch-leveraginglegacycodetodeploydesktopapplicationsontheweb","uri":"http://www.usenix.org/events/osdi08/tech/full_papers/douceur/douceur.pdf","type":"inproceedings","topic":"xax[1]","title":"Leveraging Legacy Code to Deploy Desktop Applications on the Web","pages":"339-354","key":"dou08","id":"dou08","crossref":"osdi2008","bibtype":"inproceedings","bibtex":"@inproceedings{ dou08,\n crossref = {osdi2008},\n author = {John R. Douceur and Jeremy Elson and Jon Howell and Jacob R. Lorch},\n title = {Leveraging Legacy Code to Deploy Desktop Applications on the Web},\n pages = {339-354},\n topic = {xax[1]},\n uri = {http://research.microsoft.com/pubs/72878/xax-osdi08.pdf},\n uri = {http://www.usenix.org/event/osdi08/tech/full_papers/douceur/douceur_html/index.html},\n uri = {http://www.usenix.org/events/osdi08/tech/full_papers/douceur/douceur.pdf},\n abstract = {Xax is a browser plugin model that enables developers to leverage existing tools, libraries, and entire programs to deliver feature-rich applications on the web. Xax employs a novel combination of mechanisms that collectively provide security, OS-independence, performance, and support for legacy code. These mechanisms include memory-isolated native code execution behind a narrow syscall interface, an abstraction layer that provides a consistent binary interface across operating systems, system services via hooks to existing browser mechanisms, and lightweight modifications to existing tool chains and code bases. We demonstrate a variety of applications and libraries from existing code bases, in several languages, produced with various tool chains, running in multiple browsers on multiple operating systems. With roughly two person-weeks of effort, we ported 3.3 million lines of code to Xax, including a PDF viewer, a Python interpreter, a speech synthesizer, and an OpenGL pipeline.}\n}","author_short":["Douceur, J.<nbsp>R.","Elson, J.","Howell, J.","Lorch, J.<nbsp>R."],"author":["Douceur, John R.","Elson, Jeremy","Howell, Jon","Lorch, Jacob R."],"abstract":"Xax is a browser plugin model that enables developers to leverage existing tools, libraries, and entire programs to deliver feature-rich applications on the web. Xax employs a novel combination of mechanisms that collectively provide security, OS-independence, performance, and support for legacy code. These mechanisms include memory-isolated native code execution behind a narrow syscall interface, an abstraction layer that provides a consistent binary interface across operating systems, system services via hooks to existing browser mechanisms, and lightweight modifications to existing tool chains and code bases. We demonstrate a variety of applications and libraries from existing code bases, in several languages, produced with various tool chains, running in multiple browsers on multiple operating systems. With roughly two person-weeks of effort, we ported 3.3 million lines of code to Xax, including a PDF viewer, a Python interpreter, a speech synthesizer, and an OpenGL pipeline."},"bibtype":"inproceedings","biburl":"http://dret.net/biblio/dret.bib","creationDate":"2014-08-28T18:19:46.245Z","downloads":0,"keywords":[],"search_terms":["leveraging","legacy","code","deploy","desktop","applications","web","douceur","elson","howell","lorch"],"title":"Leveraging Legacy Code to Deploy Desktop Applications on the Web","year":null,"dataSources":["mL7NKvaepNEWFcMvG"]}