DistOS 2014W Lecture 1: Difference between revisions

From Soma-notes
Cdelahou (talk | contribs)
mNo edit summary
Sjoy (talk | contribs)
add/edit information supplementing notes from Lecture 1
Line 4: Line 4:
* manages I/O
* manages I/O
* Resource management/Multiplexing
* Resource management/Multiplexing
* Communication infrastructure (example Inter Process Communication mechanisms) between the users (process, applications) of the Operating System.


An OS can be defined as the role it plays in the programming of systems. It takes care of resource management and creates abstraction. An OS turns hardware into the computer/api/interface you WANT to program.
An OS can be defined by the role it plays in the programming of systems. It takes care of resource management and creates abstraction. An OS turns hardware into the computer/api/interface you WANT to program.


This is similar to how the browser is becoming the OS of the web. The browser is
This is similar to how the browser is becoming the OS of the web. The browser is
Line 16: Line 17:
Anil prefers to think of this 'logically' than functionally/physically.  This is
Anil prefers to think of this 'logically' than functionally/physically.  This is
because the old distributed operating system (DOS) model applies to today's systems
because the old distributed operating system (DOS) model applies to today's systems
(ie. managing multiple cores, etc). The tradition definition is systems that
(ie. managing multiple cores, etc). The traditional definition is systems that
manage their resources over TCP/IP.
manage their resources over a Network.


A lot of these definitions are hard to peg down because simplicity always gets in
A lot of these definitions are hard to peg down because simplicity always gets in
Line 26: Line 27:


It is good to think about about DOS's within the context of who/what is in
It is good to think about about DOS's within the context of who/what is in
control. The traditional kernel-process model is a dictatorship. Authoritarian
control, in terms of who makes and enforces decisions in DOS. The traditional kernel-process model is a dictatorship. Authoritarian
model of control. The kernel controls what lives or dies.  The internet, by
model of control. The kernel controls what lives or dies.  The internet, by
contrast, is decentralised (eg. DNS). Distributed systems may have distributed
contrast, is decentralised (eg. DNS). Distributed systems may have distributed
policies where there is not one source of power.
policies where there is not one source of power.Even in DOS paradigm we can see instances of authoritarian/centralized approaches one example being the walled garden model employed by Apple iOS. Anil's observation is that centralized systems has an inherent fragility built into and these kind of systems comes to existence and disappear after a while. Examples being AOL, Myspace. Even the Facebook also looks to be a possible candidate for a similar fate.





Revision as of 04:45, 13 January 2014

What is an OS? Here are some ideas of what it could mean:

  • a hardware abstraction
  • Consistent execution environment. (ie. code written to interface -- think portable code)
  • manages I/O
  • Resource management/Multiplexing
  • Communication infrastructure (example Inter Process Communication mechanisms) between the users (process, applications) of the Operating System.

An OS can be defined by the role it plays in the programming of systems. It takes care of resource management and creates abstraction. An OS turns hardware into the computer/api/interface you WANT to program.

This is similar to how the browser is becoming the OS of the web. The browser is the key abstraction needed to run web apps. It is the interface web developers target. It doesn't matter what you consume a given website on (eg. a phone, tablet, etc.), the browser abstracts the device's hardware and OS away.

So, what's a distributed OS?

Anil prefers to think of this 'logically' than functionally/physically. This is because the old distributed operating system (DOS) model applies to today's systems (ie. managing multiple cores, etc). The traditional definition is systems that manage their resources over a Network.

A lot of these definitions are hard to peg down because simplicity always gets in the way of truth. These concepts to do not fit into well defined classes.

Anil's definition: "taking the distributed pieces of a system you have and turning it into the system you WANT."

It is good to think about about DOS's within the context of who/what is in control, in terms of who makes and enforces decisions in DOS. The traditional kernel-process model is a dictatorship. Authoritarian model of control. The kernel controls what lives or dies. The internet, by contrast, is decentralised (eg. DNS). Distributed systems may have distributed policies where there is not one source of power.Even in DOS paradigm we can see instances of authoritarian/centralized approaches one example being the walled garden model employed by Apple iOS. Anil's observation is that centralized systems has an inherent fragility built into and these kind of systems comes to existence and disappear after a while. Examples being AOL, Myspace. Even the Facebook also looks to be a possible candidate for a similar fate.




Yuan Liu's Notes

(Normal) Operating Systems

OS allows you to run on (slightly) different hardware. Functionalities and responsibilities of OSes include:

  • abstracts hardware such that hardware resources can be accessed by software
  • provides consistent execution environment (which hardware doesn't provide)
  • manages I/O (such as user I/O, machine I/O i.e. network I/O, sensors, videos, etc.)
  • manages resources via mulitplexing
  • multiplexing (sharing): one resource wanted by multiple users
  • O/S turns a computer you want to a computer you want to program
  • manages synchronization and concurrency issues
  • resource management and abstraction
  • uses policies to manage resources

Distributed O/S

  • turns a distributed system (with their hardware) into a distributed system you want to program
  • resource management: who is in charge?
  • in local O/S, the kernel is the boss
  • in distributed O/S, the control is decentralized
  • different humans control their machine
  • has distributed policies for managing resources
  • who decides control? different than local O/S

Other thoughts

  • a more centralized system will become fragile later
  • concentration of policy tend to fall apart in the future, according to Anil