What does an OS provide?

In a previous post, I thought a little bit about how we’ve gone about building Web Operating systems in the past.

Today, lots of the functionality provided by an OS is handled by the browser. Task scheduling, execution, process management, all these things are given to us in the browser - why are we working at replicating it once again? Does a user really want to think about switching between windows in a webapp in a tab in a window on their screen?

From the user’s perspective, an OS provides:

  • Common UI widgets
  • Global notifications/status
  • Filesystem and associated tools
  • Application switching
  • Identity and authentication

I think there’s solutions to be made for all of these - we’ll have to see if this is in the future for our browsers, or if we’re going to be looking for a third party to handle it.