Our Story OS Principles began emerging 1960, Grew across - - PowerPoint PPT Presentation

our story
SMART_READER_LITE
LIVE PREVIEW

Our Story OS Principles began emerging 1960, Grew across - - PowerPoint PPT Presentation

OS Foundations Peter J. Denning October 4, 2015 1 Our Story OS Principles began emerging 1960, Grew across many genera;ons of technologies, And leA a rich heritage


slide-1
SLIDE 1

OS Foundations

Peter J. Denning October 4, 2015

1 ¡

slide-2
SLIDE 2

2 ¡

Our ¡Story ¡

OS ¡Principles ¡began ¡emerging ¡1960, ¡ Grew ¡across ¡many ¡genera;ons ¡of ¡technologies, ¡ And ¡leA ¡a ¡rich ¡heritage ¡in ¡the ¡minds, ¡hearts, ¡and ¡ souls ¡of ¡all ¡who ¡use ¡computers. ¡

slide-3
SLIDE 3

3 ¡

Our ¡Story ¡

Timelines ¡ ¡ Personal ¡example ¡ ¡ Research ¡Lessons ¡ ¡ OS ¡a ¡force ¡on ¡all ¡of ¡compu;ng ¡

slide-4
SLIDE 4

4 ¡ Source: ¡public ¡domain ¡internet ¡

We will be surfing ...

slide-5
SLIDE 5

5 ¡

9 ¡ 40 ¡ 50 ¡ 96 ¡ 73 ¡ 245 ¡ 320 ¡ Number ¡of ¡new ¡OS’s ¡per ¡decade ¡(Wikipedia) ¡ 1960s ¡ 1970s ¡ 1980s ¡ 1990s ¡ ¡ 2000s ¡ 2010s ¡ 1950s ¡

slide-6
SLIDE 6

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

6 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

slide-7
SLIDE 7

Eras ¡of ¡Opera/ng ¡Systems ¡

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

7 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

slide-8
SLIDE 8

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡ “computer ¡u;lity” ¡

8 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-9
SLIDE 9

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

9 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-10
SLIDE 10

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

10 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡ Personal ¡Computers ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-11
SLIDE 11

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡ Personalized ¡ immersive ¡world ¡ managing ¡work ¡ (desktop) ¡ Personalized ¡ immersive ¡world ¡ managing ¡life ¡and ¡ social ¡rela;ons ¡ One ¡job ¡at ¡ a ¡;me ¡ Many ¡jobs ¡ sharing ¡

11 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-12
SLIDE 12

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

“OS interfaces with”: TELNET FTP SMTP RLOGIN RCOPY

Internet ¡

“OS integrates with”: Protocol software IPC, RPC Daemon processes Client-server, X-windows Hyperlink, URL Browser Search

12 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-13
SLIDE 13

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡ Protec;on-­‑security, ¡languages, ¡abstrac;on, ¡ memory ¡management, ¡files, ¡fault ¡tolerance, ¡virtualiza;on, ¡ parallel ¡compu;ng, ¡network, ¡cloud ¡

13 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-14
SLIDE 14

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

14 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡ OS ¡principles ¡in ¡educa;on ¡ Protec;on-­‑security, ¡languages, ¡abstrac;on, ¡ memory ¡management, ¡files, ¡fault ¡tolerance, ¡virtualiza;on, ¡ parallel ¡compu;ng, ¡network, ¡cloud ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-15
SLIDE 15

1950 ¡ 1960 ¡ 1980 ¡ 2010 ¡ 1970 ¡ 1990 ¡ 2000 ¡ Cloud-­‑Mobile ¡ Batch ¡ Interac;ve ¡

15 ¡

(L) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Distributed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(I) ¡ OS ¡principles ¡in ¡educa;on ¡ Capabili;es ¡ Protec;on-­‑security, ¡languages, ¡abstrac;on, ¡ memory ¡management, ¡files, ¡fault ¡tolerance, ¡virtualiza;on, ¡ parallel ¡compu;ng, ¡network, ¡cloud ¡

Eras ¡of ¡Opera/ng ¡Systems ¡

slide-16
SLIDE 16

Development ¡of ¡Principles ¡

16 ¡

What ¡is ¡a ¡compu;ng ¡principle? ¡

slide-17
SLIDE 17

Development ¡of ¡Principles ¡

17 ¡

Law ¡ What ¡is ¡a ¡compu;ng ¡principle? ¡

slide-18
SLIDE 18

Development ¡of ¡Principles ¡

18 ¡

Law ¡ What ¡is ¡a ¡compu;ng ¡principle? ¡ c(t) ¡= ¡min( ¡a(t), ¡s(t)+I ¡) ¡ ¡ M ¡= ¡(space;me) ¡x ¡(throughput) ¡ ¡ Mean ¡Value ¡Equa;ons ¡ ¡ Locality ¡

slide-19
SLIDE 19

Development ¡of ¡Principles ¡

19 ¡

Law ¡ ¡ Statement ¡of ¡Design ¡Wisdom ¡ What ¡is ¡a ¡compu;ng ¡principle? ¡

slide-20
SLIDE 20

Development ¡of ¡Principles ¡

20 ¡

Law ¡ ¡ Statement ¡of ¡Design ¡Wisdom ¡ What ¡is ¡a ¡compu;ng ¡principle? ¡ Informa;on ¡hiding ¡ ¡ Levels ¡of ¡abstrac;on ¡

slide-21
SLIDE 21

Development ¡of ¡Principles ¡

21 ¡

Law ¡ ¡ Statement ¡of ¡Design ¡Wisdom ¡ ¡ Cosmic ¡= ¡;meless ¡+ ¡spaceless ¡(Jim ¡Gray) ¡ What ¡is ¡a ¡compu;ng ¡principle? ¡

slide-22
SLIDE 22

22 ¡

Eight ¡programming ¡support ¡objec;ves ¡added ¡by ¡ 1965 ¡seeded ¡the ¡research ¡

Hierarchical ¡file ¡ systems ¡ Interrupt ¡ systems ¡ Fault ¡ tolerant ¡ structures ¡ Modular ¡ programming ¡ Automated ¡

  • verlays ¡

(virtual ¡memory) ¡ Mul;programming ¡ Interac;ve ¡ programming ¡ Controlled ¡ informa;on ¡ sharing ¡

3G ¡

+HLLs ¡for ¡ programming ¡ the ¡OS ¡

slide-23
SLIDE 23

Principles ¡govern ¡only ¡the ¡recurrences ¡part ¡of ¡our ¡story. ¡ Accidents ¡and ¡unforeseen ¡con;ngencies ¡constantly ¡appear. ¡ We ¡respond ¡to ¡them: ¡ With ¡bug ¡fixes, ¡patches, ¡new ¡designs, ¡new ¡apps. ¡ With ¡research ¡seeking ¡greater ¡understanding ¡and ¡occasionally ¡

  • pening ¡new ¡insights ¡and ¡new ¡principles. ¡

¡

23 ¡

slide-24
SLIDE 24

OS ¡Principles ¡into ¡CS ¡

24 ¡

CONCURRENT ¡ PROCESSES ¡ INTERACTIVITY ¡ LOCALITY ¡ NAMING ¡-­‑ ¡ MAPPING ¡ PROTECTION ¡-­‑ ¡ SHARING ¡ SYSTEM ¡ LANGUAGES ¡ VIRTUALIZATION ¡

slide-25
SLIDE 25

In ¡all, ¡ ¡ 13 ¡of ¡41 ¡CS ¡Principles ¡(30%) ¡

Source: ¡greatprinciples.org ¡

25 ¡

OS ¡Principles ¡into ¡CS ¡

slide-26
SLIDE 26
  • First ¡non-­‑math ¡core ¡course ¡1971 ¡
  • Expanded ¡defini;on ¡
  • f ¡core ¡to ¡include ¡systems ¡
  • Unchallenged ¡for ¡44 ¡years ¡

26 ¡

OS ¡Principles ¡into ¡CS ¡

slide-27
SLIDE 27

Two ¡Cosmic ¡Principles ¡Revealed ¡in ¡ Memory ¡Management ¡

Locality ¡ Loca;on ¡independent ¡addressing ¡

27 ¡

Emerged ¡from ¡virtual ¡memory ¡research ¡ Originally ¡seeking ¡to ¡automate ¡overlays ¡

slide-28
SLIDE 28

Locality ¡Principle ¡

28 ¡

Big ¡Adventure ¡ ¡ I ¡became ¡involved ¡at ¡Project ¡MAC ¡1965 ¡ ¡ Many ¡people ¡involved ¡(thousands!) ¡

slide-29
SLIDE 29

29 ¡

First ¡mo;va;ons ¡ca. ¡1965 ¡performance ¡related: ¡ Performance ¡of ¡virtual ¡memory ¡ Mul;programming ¡ Thrashing ¡

slide-30
SLIDE 30

30 ¡

Thrashing ¡

slide-31
SLIDE 31

31 ¡

Tune ¡one ¡parameter ¡to ¡ lock ¡in ¡op;mal ¡ performance ¡ Saltzer’s ¡Challenge ¡

slide-32
SLIDE 32

32 ¡ Source: ¡Adrian ¡McMenamin ¡

Reference ¡Map ¡– ¡Ini/al ¡Intui/ons ¡

slide-33
SLIDE 33

Key ¡insights: ¡

  • Temporal ¡and ¡spa;al ¡clustering ¡(Belady, ¡Denning ¡1966) ¡
  • Working ¡sets ¡(Denning ¡1966) ¡
  • Reference ¡maps ¡(IBM ¡ca ¡1969) ¡
  • Op;mality ¡principle ¡(Belady ¡1966, ¡Prieve ¡and ¡Fabry ¡1976, ¡

Gray ¡1995) ¡ ¡

33 ¡

slide-34
SLIDE 34

34 ¡

Working ¡set ¡ ¡ ¡ ¡

Pages ¡used ¡in ¡previous ¡ virtual ¡;me ¡window ¡

  • f ¡size ¡T ¡

¡ ¡ Ver;cal ¡slice ¡in ¡ page ¡reference ¡map ¡

slide-35
SLIDE 35

35 ¡

What ¡We ¡Have ¡Learned ¡

WS ¡= ¡locality ¡set ¡most ¡of ¡the ¡;me ¡ ¡ WS ¡policy ¡near ¡op;mal ¡(VMIN) ¡ ¡ Economical ¡implementa;ons ¡(WSCLOCK) ¡ ¡ Prevents ¡thrashing ¡ ¡ Answers ¡Saltzer’s ¡challenge ¡ ¡ ¡

slide-36
SLIDE 36

36 ¡

Locality ¡Principle ¡

Ini;al ¡intui;ons ¡confirmed ¡ ¡ All ¡computa;ons ¡display ¡locality ¡(empirical) ¡ ¡ All ¡computa;ons ¡must ¡display ¡locality ¡(theory) ¡ ¡ Harnessing ¡locality ¡always ¡pays ¡off ¡

caching ¡ parallelizing ¡ performance ¡ no-­‑thrashing ¡

slide-37
SLIDE 37

Loca/on ¡Independent ¡Addressing ¡

Key ¡insights: ¡

  • Paging ¡(U ¡Manchester ¡1949) ¡
  • Virtual ¡v. ¡real ¡address ¡(ca ¡1959 ¡Kilburn ¡and ¡Fotheringham) ¡
  • Segmenta;on ¡in ¡universal ¡hierarchical ¡address ¡space ¡

(Dennis ¡1965) ¡ From ¡which ¡flowed: ¡

  • Dynamic ¡mapping ¡virtual ¡to ¡real ¡via ¡page ¡table ¡
  • Demand ¡paging ¡
  • Replacement ¡algorithms ¡
  • MMU ¡and ¡TLB ¡mapping ¡architecture ¡
  • Hierarchical ¡naming ¡systems ¡

¡

37 ¡

slide-38
SLIDE 38

Huge ¡benefits: ¡

  • Loca;on ¡independence ¡
  • Logical ¡par;;oning ¡(address ¡space ¡isola;on) ¡
  • Ar;ficial ¡con;guity ¡
  • Reloca;on ¡
  • Distributed ¡naming ¡authori;es ¡

Evolved ¡into ¡global, ¡all-­‑;me ¡unique ¡addresses ¡for ¡digital ¡

  • bjects ¡anywhere ¡in ¡a ¡system. ¡

Hierarchical ¡Internet ¡URLs ¡and ¡domain ¡names. ¡ Now ¡Internet ¡is ¡a ¡huge ¡virtual ¡address ¡space ¡of ¡capabili;es, ¡ URLs, ¡and ¡DOIs ¡with ¡mapping ¡via ¡DNS ¡and ¡handle-­‑servers. ¡ ¡ ¡

38 ¡

slide-39
SLIDE 39

PaIerns ¡I ¡learned ¡from ¡OS ¡Research ¡

39 ¡

  • 1. There ¡is ¡never ¡certainty ¡
  • 2. Occasionally ¡an ¡insight ¡charts ¡a ¡new ¡direc;on ¡
  • 3. Technology ¡inflec;on ¡points ¡may ¡trigger ¡avalanches ¡
  • 4. Searching ¡for ¡what ¡works: ¡building, ¡experimen;ng, ¡;nkering ¡
  • 5. Always ¡in ¡a ¡social ¡network ¡
  • 6. Theory ¡follows ¡prac;ce ¡
slide-40
SLIDE 40

Summary ¡

  • Rich ¡heritage ¡from ¡OS ¡evolu;on ¡

40 ¡

slide-41
SLIDE 41

Summary ¡

  • Rich ¡heritage ¡from ¡OS ¡evolu;on ¡

41 ¡

Batch ¡… ¡ ¡Interac;ve ¡… ¡ ¡Immersive ¡

slide-42
SLIDE 42

Summary ¡

  • Rich ¡heritage ¡from ¡OS ¡evolu;on ¡
  • Fundamental ¡CS ¡principles ¡emerged ¡from ¡our ¡research ¡

42 ¡

Batch ¡… ¡ ¡Interac;ve ¡… ¡ ¡Immersive ¡

slide-43
SLIDE 43

Summary ¡

  • Rich ¡heritage ¡from ¡OS ¡evolu;on ¡
  • Fundamental ¡CS ¡principles ¡emerged ¡from ¡our ¡research ¡
  • OS ¡drove ¡major ¡change ¡to ¡CS ¡curriculum ¡

43 ¡

Batch ¡… ¡ ¡Interac;ve ¡… ¡ ¡Immersive ¡

slide-44
SLIDE 44

Summary ¡

  • Rich ¡heritage ¡from ¡OS ¡evolu;on ¡
  • Fundamental ¡CS ¡principles ¡emerged ¡from ¡our ¡research ¡
  • OS ¡drove ¡major ¡change ¡to ¡CS ¡curriculum ¡
  • OS ¡research ¡a ¡unique ¡blend ¡of ¡engineering, ¡

experimen;ng, ¡and ¡modeling ¡

44 ¡

Batch ¡… ¡ ¡Interac;ve ¡… ¡ ¡Immersive ¡

slide-45
SLIDE 45

Challenges ¡Ahead ¡

45 ¡

Automa;on ¡of ¡knowledge ¡work ¡– ¡end ¡of ¡“knowledge ¡age” ¡ Network: ¡space ¡of ¡social ¡power, ¡ac;on, ¡iden;;es ¡ Security ¡and ¡privacy ¡in ¡the ¡Internet ¡of ¡Things ¡ Size, ¡complexity, ¡scale ¡of ¡systems ¡ Integra;ng ¡with ¡bio ¡and ¡nano ¡tech ¡

slide-46
SLIDE 46

End ¡of ¡this ¡story ¡

46 ¡