DistOS 2015W Session 2: Difference between revisions

From Soma-notes
Aimbot (talk | contribs)
→‎Alto: Clarifications, minor updates
Aimbot (talk | contribs)
→‎Mother of All Demos:: Minor updates, clarifications
Line 3: Line 3:
== Mother of All Demos: ==
== Mother of All Demos: ==


Team: Jason, Kirill, Sravan, Agustin, Hassan Ambalica, Apoorv, Khaled
'''Team:''' Jason, Kirill, Sravan, Agustin, Hassan Ambalica, Apoorv, Khaled


* 1968, Doug Inglebard
* 1968, lead by Doug Inglebard
* One computer with multiple terminals controlling
* Initial public display of many modern technologies
* One computer with multiple remote terminals
* Video conferencing
* Video conferencing
* Computer mouse
* Computer mouse (and coined the term)
* Word processing, rudimentary copy and paste
* Word processing, rudimentary copy and paste
* Dynamic file linking
* Dynamic file linking (hypertext)
* Revision control/version control/source control
* Revision control/version control/source control
* Collaborative real-time editor
* Collaborative real-time editor
** User privilege control in that user can provide read-only access, read-write privilege to file
** User privilege control in that user can provide read-only access, read-write privilege to file
* Cord keyboard
* Corded keyboard
** Marco keyboard that allows messages quickly, while using mouse at same time
** Marco keyboard that allows messages quickly, while using mouse at same time
* Not really a distributed operating system, but great start because multiple users at different terminals could share same resources
* Not really a distributed operating system, but great start because multiple users at different terminals could share same resources

Revision as of 03:09, 14 January 2015

Reading Response Discussion

Mother of All Demos:

Team: Jason, Kirill, Sravan, Agustin, Hassan Ambalica, Apoorv, Khaled

  • 1968, lead by Doug Inglebard
  • Initial public display of many modern technologies
  • One computer with multiple remote terminals
  • Video conferencing
  • Computer mouse (and coined the term)
  • Word processing, rudimentary copy and paste
  • Dynamic file linking (hypertext)
  • Revision control/version control/source control
  • Collaborative real-time editor
    • User privilege control in that user can provide read-only access, read-write privilege to file
  • Corded keyboard
    • Marco keyboard that allows messages quickly, while using mouse at same time
  • Not really a distributed operating system, but great start because multiple users at different terminals could share same resources

Early Internet

Alto

Team: Tory, Veena, Sameer, Mert, Deep, Nameet, Moe

  • Initially developed around 1973 by Xerox, upgraded over next few years
  • High speed network connectivity (3 Mbps @ 1km distance)
  • Connected up to 256 machines
  • Protocol similar to cross between UDP/TCP, before TCP invented
  • Allowed sharing of printers
  • Also allowed distribution of files across computers (redundancy/reliability)
  • Sort of early cloud
  • Allowed for remote debugging, store error logs
  • Allowed machines to use processing power of others
  • Much of the time it would be idling, which is amazing at a time when computers cost a fortune

Professor lead discussion 1

A true distributed operating system does not actually exist, its more of a dream.

You'll find in the history of trying to achieve this dream of a distributed operating system there has always been a road block as a result of a technical issue. People would come up with a solution to this technical issue but then they would find that some other technical issue would crop up. For example 'The Mother of All Demos' tried to build a distributed operating system but they had no networking. They had to point a television camera at the computer monitor to be able to demo their concept. The early internet came along and dealt with the issue of no networking. However the early internet itself had other technical issues.

A common buzz word during the early days of development was Time Sharing. Time sharing is about the sharing of resources between users. Today the concept of time sharing is similar to sharing a processor between multiple processes.

Discussion: Easy on one computer, hard on multiple computers

Instant Messaging
Why is it easy? Why is it hard?
Can't be out sync Synchronization issues
  • Server-client modal
    • If two or more servers they get requests same time, they have to figure out how to synchronize the data
  • Peer-to-Peer
    • Each peer has to figure out how to sync each message
Only one data store/source
Mortal Kombat/Twitch Gaming
Why is it easy? Why is it hard?
Photo Album
Why is it easy? Why is it hard?

Commonalities

  • Synchronization
  • Bandwidth
  • Reliability/Fault Tolerance
  • Interoperability
  • Discovery
  • Routing
    • In modern system this issue has been mostly abstracted away
    • Classic example would be Wireless Ad-hoc networking

The above list is not hard on a single system because all the cores have equal access to all the resources. Also as a result of excellent engineering modern single systems can very effective deal with any errors that may result.