DistOS 2015W Session 2
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, which is an old term for multiple processes running simultaneously. However, at the time it referred to multiple users sharing the CPU cycles on a single computer. Today, a single user's many processes using a single CPU is much more common.
Discussion: Easy on one computer, hard on multiple computers
Why is it easy? | Why is it hard? |
---|---|
Can't be out sync | Synchronization issues
|
Only one data store/source |
Why is it easy?
|
Why is it hard?
|
---|
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.