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