YouTube placeholder

Atlantis: Robust, Extensible Execution Environments for Web Applications

Atlantis: Robust, Extensible Execution Environments for Web Applications

The Modern Operating System

  • Today millions of people create apps by writing code that runs in a protected sandbox and manipulates a rich windowing environment…​

  • …​except that code is JavaScript and the environment is the web browser.

At some level, the web browser is the modern operating system and has many of the features and responsibilities that we associate with traditional operating systems:

  • Multiplexing resources

    • The CPU, sockets, memory, etc.

  • Protecting applications from each other

    • Preventing information leakage between different tabs, enforcing the same origin policy

  • Providing useful abstractions

    • Events, the document object model, etc.

Browsers v. Operating Systems

So what’s a core difference between the OS and web browsers?

  • Operating systems were designed and implemented to be operating systems…​

  • …​but web browsers were designed as applications and have kind of had the OS responsibility added to them over time.

  • So browsers may not make very good operating systems!

To the Tape!

Or, To the Paper


Created 2/17/2017
Updated 9/18/2020
Commit 4eceaab // History // View
Built 4/21/2016 @ 20:00 EDT