Informatica - §6 besturingssystemen

advertisement
Informatica - §6 besturingssystemen
Informatica - §6.2
besturingssystemen
Taak: Organisatie van processen
programma
hardware
gebruiker
besturingssysteem
Opbouw computersysteem
Software overzicht
Software
Systeem
Applicatie
Beheersprogr.
Utilities
Ontwikkelprogr.
Algemeen
Specifiek
Besturingssyst.
Disktools
Programmeertl.
Tekstverw.
Management
Informatie
Database
management
Beveiliging
compiler
Spreadsht.
Productiebesturing
Prestatie
Presentatie
Communicatie
Database
Soorten besturingssystemen
MS DOS
Windows 9x
OS\2
Mac OS
Linux
UNIX
Windows NT
Novell Netware
Solaris
Banyan Vines
MVS
OS/390
Zijn standalone OS’en
Zijn netwerk of
mainframe OS’en
Stuurprogramma’s
(drivers)
Alle handelingen op
computer monden uit in
opdracht voor videokaart
hardwarespecifieke
programma’s
OS  driver  hardware
Zet de computer aan...
starten
controle
config.
B.I.O.S.-chip (ROM)
‘boot’en
RAM
(rand)apparatuur
setup
setup
O.S.
startappl.
applicaties
gebruiker
Functies van OS
Job
management
(taakbeheer)
Process
management
(procesbeheer)
Resource
management
(beheer van
hulpbronnen)
Taakbeheer
Taak 1
Stap 1
Stap 2
Stap 3
Taken
beëindigen
Taak 2
Stap 1
Stap 2
Taak 3
Stap 1
Stap 2
(deel)taken in
volgorde zetten
takenstroom
Taakbeheer
Stap 3
1
2
Taken
accepteren
(of afwijzen)
Stap 2
1
Stap 1
2
Stap 1
2
Stap 2
1
Stap 1
Procesbeheer
lijst met
wachtende
processen
bijhouden
Taak 1
Taak 2
takenstroom
Taakbeheer
Stap 3
Stap 2
Stap 1
Stap 1
Stap 2
Stap 1
Taak 3
Stap 2
Taak 4
proces
kiezen
Stap 1
Stap 2
Stap 3
proces
starten
Procesbeheer
Welk proces eerst?
Prioritering
hoge prioriteit
takenstroom
Taakbeheer
Stap 3
Stap 2
lage prioriteit
Stap 1
Stap 1
Stap 2
Stap 1
‘laag’ proces
nauwelijks aan bod
bij druk verkeer
elk proces moet
wachten op beurt
‘wachtend’ proces
blokkeert de anderen
Welk proces eerst?
Timeslicing
tijd
in
sec.
bij 5 processen (bv.)
0,000
Gebruiker 1
0,100
Gebruiker 2
0,200
Gebruiker 3
0,300
Gebruiker 4
0,400
Gebruiker 5
0,500
Gebruiker 1
0,600
Gebruiker 2
0,700
Gebruiker 3
0,800
Gebruiker 4
0,900
Gebruiker 5
 ieder proces krijgt 20%
toegewezen
 80% van de tijd niet aan de
beurt
 ‘wachtend’ proces blokkeert
anderen niet
 ieder proces komt aan bod
 niet bij randapparatuur,
bijvoorbeeld printer
Resource management
(beheer van hulpbronnen)
Hulpbronnen zijn:
Randapparatuur:
printer, plotter,
toetsenbord, muis,
scanner, webcam,
microfoon
Input-Output (I/O) beheer
Geheugen:
intern geheugen
extern geheugen
Geheugenbeheer
I/O beheer
snel maar
klein
Buffering
Spooling
niet elk
proces
wordt
aangeno
men
I/O proc
I/O proc
Buffer
Buffer
CPU
Buffer
Buffer
langzaam
maar
groot
HD
elk proces
wordt
aangeno
men
Geheugenbeheer
Partitionering
geheugenruimte
P1
P2
P3
P4
P6
P5
elk programma aaneengesloten
uitvoering van sommige programma’s stokt
geheugen niet optimaal gebruikt
Geheugenbeheer
Paginering
geheugenruimte
P1 P2 P1 P3 P2 P2 P4 P4 P4 P3 P3 P5 P5 P6
1 1 2
1 2 3
1 2 3 2 3
1 2 1
elk programma opgedeeld in gelijke delen
pagina’s niet noodzakelijk aaneengesloten
geheugen optimaal gebruikt
alleen noodzakelijke delen in RAM, rest op HD
CPU doet veel administratie
Netwerk Besturingssystemen
Multi user
 Meerdere gebruikers
tegelijk
 Gelijktijdig gebruik van
programma’s en bestanden
m.b.v. record locking:
alleenrecht op dat deel van
programma
 Toegang d.m.v. autorisatie
naam,
wachtwoord,
gebruikersrechten
UNIX
Overdraagbaar, flexibel, krachtig en stabiel
Commando georiënteerd:
geen graphical user interface (GUI; vgl. Macintosh,
Windows).
nu grafische schil verkrijgbaar (Motif )
Vele varianten:
FreeBSD
Linux (Linus Thorvaldson maakte Unix geschikt voor
standalone computers)
De UNIX structuur
Applicatie
Machine
Unix-shell
Unix-kernel
 Shell:
Accepteert en
interpreteert
opdrachten
Roept de UNIX-kernel
aan om ze uit te
voeren
 Kernel:
In RAM-geheugen
Toewijzen van
geheugen
Reacties op gebruikers
Enkele UNIX commando’s
Opdracht
Wat doet UNIX?
Cp
Bestanden kopiëren
Grep
Bestand doorzoeken op bepaalde tekenreeks
Help
Hulp bestand wordt aangeroepen
Kill
Uitvoering van een proces stoppen
Ls
Een lijst van bestanden geven in huidige directory (map)
Mail
Berichten uitwisselen tussen gebruikers
Pr
Bestand afdrukken
Ps
Rapporteren over de processtatus
Rm
Bestand(en) verwijderen
Master / slave architectuur
 De server is master, het werkstation is slave
‘master’ bepaalt proces-, taak- en bronnenbeheer
geen problemen in één enkel LAN
 Echter, bij moderne netwerken
meerdere LAN’s met elkaar verbonden
ieder LAN heeft meerdere servers
ingewikkeld!
 Oplossing: client / server architectuur
Client / server architectuur
Proces gesplitst in
subtaken een verdeeld
over een aantal computers
Database
(gegevensbeheer)
Applicatie
(proces)
Presentatie
(interface)
servers
client
Three tier
Verdelen, is dat nou nodig?
 Bij
 Bij
 Bij
 Bij
200 clients?
klantgegevens?
printer-server?
proxy-server?
Verzoek
Momentje
Verzoek
Splelin?
Splelin?
Splelin?
Spelling!
Spelling!
Spelling!
Splelin?
Splelin?
Splelin?
Spelling!
Spelling!
Spelling!
Respons
Respons
Client/server basis eigenschappen
Transparante toegang
gebruiker merkt ‘niets’ van server
alle functies lijken op client aanwezig
GUI
standaard GUI
elk programma kent standaard werkwijze
Dynamische toewijzing
subtaak toegewezen aan geschikte server
netwerkbesturingssysteem zorgt automatisch voor
die taakverdeling
Download