@conference {300611,
	title = {Atlantis: Robust, Extensible Execution Environments for Web Applications},
	booktitle = {SOSP},
	year = {2011},
	address = {Cascais, Portugal},
	abstract = {Today{\textquoteright}s web applications run inside a complex browser environment\&nbsp;that is buggy, ill-specified, and implemented in\&nbsp;different ways by different browsers. Thus, web applications\&nbsp;that desire robustness must use a variety of conditional code\&nbsp;paths and ugly hacks to deal with the vagaries of their runtime.\&nbsp;Our new exokernel browser, called Atlantis, solves\&nbsp;this problem by providing pages with an extensible execution\&nbsp;environment. Atlantis defines a narrow API for basic\&nbsp;services like collecting user input, exchanging network data,\&nbsp;and rendering images. By composing these primitives, web\&nbsp;pages can define custom, high-level execution environments.\&nbsp;Thus, an application which does not want a dependence on\&nbsp;Atlantis{\textquoteright} predefined web stack can selectively redefine components\&nbsp;of that stack, or define markup formats and scripting\&nbsp;languages that look nothing like the current browser runtime.\&nbsp;Unlike prior microkernel browsers like OP, and unlike\&nbsp;compile-to-JavaScript frameworks like GWT, Atlantis is the\&nbsp;first browsing system to truly minimize a web page{\textquoteright}s dependence\&nbsp;on black box browser code. This makes it much easier\&nbsp;to develop robust, secure web applications.},
	url = {http://scholar.harvard.edu/files/mickens/files/atlantis.pdf},
	author = {James Mickens and Mohan Dhawan}
}
