Show simple item record

dc.contributor.authorDeka, Amarjyotien_US
dc.date.accessioned2014-03-14T20:43:23Z
dc.date.available2014-03-14T20:43:23Z
dc.date.issued2010-07-22en_US
dc.identifier.otheretd-08132010-175539en_US
dc.identifier.urihttp://hdl.handle.net/10919/34514
dc.description.abstractCurrent web browsers are ill-prepared to manage execution of scripts embedded in web pages, because they treat all JavaScript code executing in a page as one unit. All code shares the same namespace, same security domain, and shares uncontrolled access to the same heap; some browsers even use the same thread for multiple tabs or windows. This lack of isolation frequently causes problems that range from loss of functionality to security compromises.

ScriptSpace is an abstraction that provides separate, isolated execution environments for parts or all of a web page. Within each ScriptSpace, we maintain the traditional, single-threaded JavaScript environment to provide compatibility with existing code written under this assumption. Multiple ScriptSpaces within a page are isolated with respect to namespace, CPU, and memory consumption. The user has the ability to safely terminate failing scripts without affecting the functionality of still-functional components of the page, or of other pages.

We implemented a prototype of ScriptSpace based on the Firefox 3.0 browser. Rather than mapping ScriptSpaces to OS-level threads, we exploit a migrating-thread model in which threads enter and leave the ScriptSpaces associated with the respective sections of the document tree during the event dispatching process. A proportional share scheduler ensures that the number of bytecode instructions executed within each ScriptSpace is controlled. Our prototype can isolate resource-hogging gadgets within an iGoogle Mashup page as well as across multiple pages loaded in the browser and still retain interactive response.

en_US
dc.publisherVirginia Techen_US
dc.relation.haspartDeka_Amarjyoti_T_2010.pdfen_US
dc.rightsI hereby certify that, if appropriate, I have obtained and attached hereto a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dissertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to Virginia Tech or its agents the non-exclusive license to archive and make accessible, under the conditions specified below, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report.en_US
dc.subjectResource Controlen_US
dc.subjectJavaScripten_US
dc.subjectWeb Browsersen_US
dc.subjectIsolationen_US
dc.titleScriptSpaces: An Isolation Abstraction for Web Browsersen_US
dc.typeThesisen_US
dc.contributor.departmentComputer Scienceen_US
dc.description.degreeMaster of Scienceen_US
thesis.degree.nameMaster of Scienceen_US
thesis.degree.levelmastersen_US
thesis.degree.grantorVirginia Polytechnic Institute and State Universityen_US
thesis.degree.disciplineComputer Scienceen_US
dc.contributor.committeechairBack, Godmar Volkeren_US
dc.contributor.committeememberTilevich, Elien_US
dc.contributor.committeememberRyder, Barbara G.en_US
dc.identifier.sourceurlhttp://scholar.lib.vt.edu/theses/available/etd-08132010-175539/en_US
dc.date.sdate2010-08-13en_US
dc.date.rdate2010-09-02
dc.date.adate2010-09-02en_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record