Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

25
Edsger Wybe Dijkstra Seminar „Geschichte der Informatik“, WS 2001/02

Transcript of Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

Page 1: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

Edsger Wybe Dijkstra

Seminar „Geschichte der Informatik“, WS 2001/02

Page 2: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

Biographie

Page 3: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

3

Biographie: 1930-1950 11.05.1930: geboren in Rotterdam

(NL) 1942: Gymnasium Erasminium 1944: Trennung von Familie 1945: Heimkehr; Wunsch, Jura zu

studieren 1948: Physik-Studium an der Uni

Leiden (NL)

Page 4: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

4

Biographie: 1951-1956 1951: Candidaats Examen 1951: Programmier-Kurs in

Cambridge (GB) auf EDSAC 1952: Teilzeit-Job am Mathematical

Centre in Amsterdam (NL) 1956: Doctoraal Examen,

Theoretische Physik

Page 5: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

5

Biographie: 1956-1960 1956: Vollzeitstelle am MCA 1956: Shortest Path –

Implementierung auf der ARMAC 1957: Hochzeit mit M.C. Debets 1959: PhD für Real-Time Interrupt

Handler (Uni Amsterdam) 1960: ALGOL60 – Implementierung

auf der ARMAC

Page 6: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

6

Biographie: 1961-1965 1961: Semaphoren 1962: Mathematik-Professor an der

techn. Uni Eindhoven (NL) 1965: Dining Philosophers

Problem, Bankers Algorithm

Page 7: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

7

Biographie: 1966-1980 1968: „The Structure of the THE-

Multiprogramming System“ 1968: „GoTo Statement Considered

Harmful“ 1972: „Notes on Structured

Programming“ 1972: ACM Turing Award 1973: Research Fellow für Burroughs

Corporation

Page 8: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

8

Biographie: 1981-heute 1984: Informatik-

und Mathematik-Professor an der Uni Texas (USA)

Inzwischen emeritiert

Page 9: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

Fachliche Leistungen

Page 10: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

10

Shortest Path: Problem

Page 11: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

11

Shortest Path: AlgorithmusV = Menge aller Knoten; E = Menge aller Kanten;S = {s}; // Menge von Knoten // Invariante: kürzeste Weglänge zu jedem // Knoten in S bekannt

while ( t S ) { füge zu S den Knoten aus (V \ S) hinzu, der mit

kleinstem Aufwand zu erreichen ist}

Page 12: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

12

Shortest Path: BeispielS d(1

)d(2)

d(3)

d(t)

{s} 10 30 100

{s,1} 10 60 30 100

{s,1,3} 10 50 30 90

{s,1,3,2} 10 50 30 60

{s,1,3,2,t}

10 50 30 60

Page 13: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

13

Shortest Path: Dijkstra Greedy

Greedy:s 1 2 tKosten: 70

Dijkstra:s 3 2 tKosten: 60

Page 14: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

14

Semaphoren Problem: mehrere Prozesse greifen

synchron auf gleiche Daten zu Semaphor = Signalmast (bei

Zügen) P und V Operationen

P = passerenV = vrijgeven

mutual exclusion

Page 15: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

15

Dining Philosophers Problem

Deadlock

Starvation

Lack of Fairness

Page 16: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

16

Banker‘s Algorithm (1) Zur Vermeidung von Deadlocks

Jeder Kunde hat Kreditlimit, Kredite werden nach endlicher Zeit zurückgezahlt

Kein Kreditlimit darf Bankvermögen übersteigen

Page 17: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

17

Banker‘s Algorithm (2) Darlehen wird gewährt, wenn

anschließend noch genug Geld, um theoretisch größtes Darlehen zu gewähren; sonst: warten

Bei Rückzahlung werden Wartende zufrieden gestellt

Page 18: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

18

Banker‘s Algorithm: Nachteile Kunde muss wissen, wieviel Geld

er höchstens braucht ( Kreditlimit)

Zu hohe Kreditlimits machen System unflexibel

Lange Wartezeiten möglich

Page 19: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

19

THE Multiprogramming System

Betriebssystem auf X8 Aufteilung aller Aufgaben in

sequentielle Prozesse auf verschiedenen Hierarchie-Stufen

Korrektheit der Implementierung bewiesen

Virtueller Speicher

Page 20: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

Zitate

Page 21: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

21

Zitate

People get attached to their sources of misery –

that‘s what stabilizes many marriages.

Page 22: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

22

Zitate

Simplicity, Completeness, Correctness

The freedom of meaning one thing and saying something different

is not permitted.

Page 23: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

23

Zitate

If you need more than five lines to prove something,

then you‘re on the wrong track.

Page 24: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

24

ZitateI mean, if 10 years from now,

when you are doing something quick and dirty,

you suddenly visualize that I am looking over your shoulders

and say to yourself, „Dijkstra would not have liked this“,

well that would be enough immortality for me.

Page 25: Edsger Wybe Dijkstra Seminar Geschichte der Informatik, WS 2001/02.

25

Zitate1. Never complete with colleagues.

2. Try the most difficult thing you can do.

3. Choose what is scientifically healthy and relevant. Don‘t

compromise on scientific integrity.