1 / 26

COT 5611 Operating Systems Design Principles Spring 2014

COT 5611 Operating Systems Design Principles Spring 2014. Dan C. Marinescu Office: HEC 304 Office hours: M- Wd 3:30-5:30 PM. Lecture 3. Reading assignment: class slides of Lectures 2 and 3 and the class notes “distributed systems-basic concepts” available online. Last time

vesta
Download Presentation

COT 5611 Operating Systems Design Principles Spring 2014

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COT 5611 Operating Systems Design Principles Spring 2014 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 3:30-5:30 PM

  2. Lecture 3 • Reading assignment: class slides of Lectures 2 and 3 and the class notes “distributed systems-basic concepts” available online. • Last time • Man-made systems and the environment • Complex systems • Factors affecting complexity • Sources of complexity • Coping with complexity • Modularity • Abstractions • Hierarchy • Characteristics of complex systems • Propagation of effects • Incommensurate scaling • Tradeoffs Lecture 3

  3. Today • Computers as a distinct species of complex systems • Milestones in the evolution of computing and communication technology. • Factors affecting the complexity of computing and communication systems • The software • The exponential growth • Coping with complexity • Resource sharing and complexity • Scale-free systems or how nature deals with complexity. • Lessons learned. • Names and fundamental abstractions Lecture 3

  4. Innovations are now full-circle Lecture 3

  5. Factors affecting complexity of computing and communication systems Lecture 3

  6. Analog, digital, and hybrid systems • Analog systems: • the noise from individual components accumulate and • the number of components is limited • Digital systems: • are noise-free • the number of components is not limited • regeneration  restoration of digital signal levels • static discipline the range of the analog values a device accepts for each input digital value should be wider than the range of analog output values • digital components could fail but big mistakes are easier to detect than small ones!! • Hybrid systems • e.g., quantum computers and quantum communication systems Lecture 3

  7. Factors affecting complexity of computing and communication systems Lecture 3

  8. Computers a distinct species of complex systems • The complexity of computer systems not limited by the laws of physics  distant bounds on composition • Digital systems are noise-free. • The hardware is controlled by software • The rate of change unprecedented • The cost of digital hardware has dropped in average 30% per year for the past 35 years Lecture 3

  9. Computers are controlled by software • Composition of hardware limited by laws of physics. • Composition of software is not physically constrained; • software packages of 107 lines of code exist • Abstractions hide the implementation beneath module interfaces and allow the • creation of complex software • modification of the modules • Abstractions can be leaky. Example, representation of integers, floating point numbers. Lecture 3

  10. Exponential growth of computers • Unprecedented: • when a system is ready to be released it may already be obsolete. • when one of the parameters of a system changes by a factor of • 2 other components must be drastically altered due to the incommensurate scaling. • 10  the systems must be redesigned; E.g.; balance CPU, memory, and I/O bandwidth; • does not give pause to developers • to learn lessons from existing systems • find and correct all errors • negatively affects “human engineering”  ability to build reliable and user-friendly systems • the legal and social frameworks are not ready Lecture 3

  11. Coping with complexity of computer systems • Modularity, abstraction, layering, and hierarchy are necessary but not sufficient. • An additional technique  iteration • Iteration • Design increasingly more complex functionality in the system • Test the system at each stage of the iteration to convince yourself that the design is sound • Easier to make changes during the design process Lecture 3

  12. Iteration – design principles • Make it easy to change • the simplest version must accommodate all changes required by successive versions • do not deviate from the original design rationale • think carefully about modularity  it is very hard to change it. • Take small steps; rebuild the system every day, to discover design flaws and errors. Ask others to test it. • Don’t rush to implementation. Think hard before starting to program. • Use feedback judiciously • use alpha and beta versions • do not be overconfident from an early success • Study failures  understand that complex systems fail for complex reasons. Lecture 3

  13. Curbing complexity • In absence of physical laws curb the complexity use good judgment. • Easier said than done because: • temptation to add new features than in the previous generation • competitors have already incorporated the new features • the features seem easy to implement • the technology has improved • human behavior: arrogance, pride, overconfidence… Lecture 3

  14. Resource sharing and complexity • A main function of the OS is resource sharing. • Sharing computer resources went through several stages with increased levels of complexity: • A. Many-to-one • B. One-to-one • C. Many-to-many • D. Peer-to-peer • E. Cloud Computing Lecture 3

  15. Lecture 3

  16. Lecture 3

  17. Software follows hardware – the operating systems become increasingly more complex Millions of lines of source code Lecture 3

  18. Cheap  Pervasive Lecture 3

  19. Pervasive  qualitative change Word processing Communication Embedded Sense/control Number crunching log (people per computer) year Lecture 3 Slide from David Culler, UC Berkeley

  20. Latency improves slowly Speed of light(0% per year) Moore’s law (~70% per year) Improvement wrt year #1 DRAM access latency (~7% per year) Lecture 3 Year #

  21. Heat is a problem Lecture 3

  22. Recent Intel CPU Clock Rate Pentium 4 HT Pentium 4 Pentium III mHz PentiumPro Pentium 486 Lecture 3

  23. What went right? Unbounded composibility General-purpose computers Only need to make one thing fast Separate architecture from implementation S/W can exploit new H/W Cumulative R&D investment over years Lecture 3

  24. How the nature deals with complexity • For biological systems: symmetry, construction of complex biological structures from building blocks. • Self-organization though difficult to define, its intuitive meaning is reflected in the observation made by Alan Turing that ``global order can arise from local interactions'' • Scale-free systems. Each component interacts directly only with a small number of other components. • Man-made systems to imitate nature!! Lecture 3

  25. Scale-free systems • The scale-free organization can be best explained in terms of the network model of the system, a random graph with vertices representing the entities and the links representing the relationships among them. • In a scale-free organization, the probability P(m) that a vertex interacts with m other vertices decays as a power law: with d a positive real number, regardless of the type and function of the system, the identity of its constituents, and the relationships between them. Lecture 3

  26. Examples of scale-free systems • The collaborative graph of movie actors where links are present if two actors were ever cast in the same movie; in this case d=2. • The power grid of the Western US has some 5,000 vertices representing power generating stations; in this case d=4. • The World Wide Web, d=2.1. This means that the probability that m pages point to one page is P(m) = m-2.1 • The citation of scientific papers d=3. Lecture 3

More Related