Hoofdstuk 3. Besturingssystemen



Vergelijkbare documenten
Waarmaken van Leibniz s droom

HET BESTURINGSSYSTEEM

Software hoofdstuk Wat is de functie van een besturingssysteem? 2. Welke hoofdtaken heeft het besturingssysteem?

1 Besturingssysteem. 1.1 Wat is een besturingssysteem? 1.2 Verschillende besturingssystemen. 1.3 Windows, verschillende versies

Erik Poll Martijn Warnier.

Windows Training voor 50-plussers. PC50plus trainingen Eikbosserweg AK Hilversum tel:

Het besturingssysteem of operating system, vaak afgekort tot OS is verantwoordelijk voor de communicatie van de software met de hardware.

Besturingssystemen Opdracht 1

Belangrijkste ideeën/concepten uit OS, incl. proces

Hoofdstuk 2. - is verantwoordelijk voor de communicatie van de software met de hardware.

ICT Infrastructuren: Processen en Threads. 18 november 2013 David N. Jansen

Hoofdstuk 3: Processen: Beschrijving en Besturing. Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces?

WINDOWS 8. Windows Training voor 50-plussers

SBO Nilda Pinto BASISKENNIS BESTURINGSSYTEMEN (MBI 1) PERIODE MATERIAAL BOEK SOFTWARE VOOR ICT SUPPORT 2 EN 3 (HANS VAN RHEENEN)

Windows Basics. yvan vander sanden. 22 februari 2015

Tim Mallezie Architectuur van besturingssystemen: Vraag A2.

6 Besturingssystemen. Applicatie Applicatie Applicatie. Operating System. Hardware 1 WAT IS EEN OPERATING SYSTEM?

Windows Basis - Herman Van den Borre 1

6,7. Werkstuk door een scholier 2286 woorden 24 januari keer beoordeeld. Informatica. Algemeen

Een desktopcomputer kan uit de volgende onderdelen zijn opgebouwd:

Verslag: Computer. Naam: Tyrone Ste Luce. Klas: M4B

7,3. Samenvatting door een scholier 1961 woorden 16 januari keer beoordeeld. Informatica Informatica actief

Albert-Jan de Croes & Stefan Willemink V4C Docent: Mevrouw van Uden

Samenvatting Hoofdstuk1

Wat zien we in deze cursus

Hardware. Robert Groen. Jim van Dijk. 13 september 2013 M44 ITTL

Waarin het duidelijk wordt dat al die knappe hardware niet veel waard is zonder de juiste software om ze aan te sturen.

Analyse probleem remote execution

Informatica. 2 e semester: les 9. OS & Sorteren. Jan Lemeire Informatica 2 e semester februari mei Informatica II: les 9

Installatie handleiding

in Operating System Concepten

in Operating System Concepten Doel van een Operating System Interrupts 3-Lagen model spooling (Simultaneous Peripheral Operation On Line)

IN1805 I - Operating System Concepten

Desktop, Laptop, Netbook, Ultrabook or Tablet? Which is best for what? Keuzes maken

1.2 Belangrijke besturingssystemen

1. Uw computer leren kennen

Zelftest Informatica-terminologie

Een desktopcomputer kan uit de volgende onderdelen zijn opgebouwd:

Berekening van de hash-code van een bestand of CD

Hardware en beheer van computersystemen Windows 8.1 HANDLEIDING

Inleiding.

Linux Wat is Linux? UNIX Mainframes UNIX

Nieuwe UEFI Bios en GPT

TAB XENTA 13c 13,3 TABLET FIRMWARE UPGRADE INSTRUCTIES

Hardware en beheer van computersystemen Windows 10

Windows XP Migratie opties. Bart van Dijk

Verder zijn er een aantal producten die je hierop kan aansluiten, hier zijn een aantal producten:

Hoofdstuk 2. De Von Neumann-architectuur

Naam: Oumaima Bekour Klas: M4b ICT De Lange. Hardware

CPU scheduling : introductie

Tim Mallezie Architectuur van besturingssystemen: Vraag A4.

De computer, software

PRINTERS EN GEGEVENS DELEN TUSSEN COMPUTERS

Windows 8 Consumers preview

Beschrijvings SW gebruikers handleiding (V1.1) Voor Apple Macintosh computers Voor Macintosh Computer

PC-Club Okra Regio Gent

DuboCalc 4.0. Installatie instructie

TAB XENTA 10ic 10 TABLET FIRMWARE UPGRADE INSTRUCTIES

Module 3: Scratch programmeren: is het logisch of is het niet logisch?

13 tips tegen een trage PC. Een trage PC, wat zijn de mogelijkheden om dit te voorkomen of te verhelpen: 1.Taakbeheer.

Informatica 2e semester

Labo 4 : Installatie Windows XP Professional Edition

Linux Mint 10 installeren op een pc of laptop.

Theorie Informatica. Inhoud: 1. Systeem 2. Programmeren 3. Informatiesystemen 4. Internet 5. Besturingssystemen 6. Theorie bij praktijk

SOFTLOK 12.5x. Update met behoudt van gegevens en het instellen van het EMS geheugen bereik

De computer als processor

Windows Xp professional op de werkstations en Windows 2000 op de Server

Installatie Windows XP Professional Edition

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

ZES TIPS OM JE WINDOWS PC TE VERSNELLEN

Jen Kegels, Eveline De Wilde, Inge Platteaux, Tamara Van Marcke. Hardware. De computer in een oogopslag. 1 / 11 Cursusontwikkeling

Een schone installatie van Windows 10 uitvoeren met een hulpprogramma

Kurzweil 3000 op Mac OS X

1 INTRODUCTIE SYSTEEMVEREISTEN Minimum Vereisten Aanbevolen Vereisten...7

A2: Bedrijfssystemen. A2 en PC. Boek. Voorkennis

WAVIX Installatie Handleiding

LINUX ZORIN. een alternatief voor MS Windows

Er zijn verschillende OS bv: Microsoft Windows Apple Macintosh Linux-versies/distributies zoals Ubuntu en Knoppix

Handleiding CD-Rom Engelse Spelling Bijlage bij het eindwerk van Veerle Tielemans

TAB NOBLE 10c FIRMWARE UPGRADE INSTRUCTIES

Inloginstructie epraktijk

Spreekbeurt Informatica Computers

-Een stukje geschiedenis van de PC (personal computer)

Handleiding Icespy MR software

WINDOWS 10 Waarom Windows 10? Grootste veranderingen Wanneer upgraden? Installatie Instellingen Ervaringen

Voorkennis: C, basiskennis microprocessoren (bij voorkeur ARM7 processor)

Installatie Today s Pro

Contents. GfK Internet Monitor v3 1

Unix Console Gebruik

Installatie van Linux Mint 13

LESBRIEF HARDWARE. OPDRACHTEN Hierin vind je alle opdrachten die bij de module Hardware horen. Klas 2

Gebruiksaanwijzing installeren software en drivers voor Xstream flex alarmontvanger

Aan de slag met de Easi-Speak

SMP50-200/201 INGENIA HORIZON 5 SMARTPHONE PARTITIE FIX INSTRUCTIES

Taakbeheer gebruiken - Het nieuwe Taakbeheer van Windows 8 en Windows 10

Les 11: systeemarchitectuur virtuele machines

Head Pilot v Gebruikershandleiding

Transcriptie:

Informatica Deel III Hoofdstuk 3 Besturingssystemen Een besturingssysteem (in het Engels operating system of afgekort OS) is een programma (meestal een geheel van samenwerkende programma's) dat na het opstarten van een computer in het geheugen geladen wordt en alle mogelijkheden van de computer aan de gebruiker aanbiedt. Het OS biedt ook de functionaliteiten aan om andere programma's - applicaties genoemd - uit te voeren. Zo'n applicatie maakt gebruik van het besturingssysteem door middel van een application programming interface (API). Deze API abstraheert de toegang tot de verschillende randapparatuur, zoals harde schijf, printer en beeldscherm. Het OS biedt zo een generieke interface aan voor allerhande software die op het systeem kan draaien, zodat deze software zich niet hoeft te bekommeren hoe de videokaart, harde schijf en andere hardware moet worden aangestuurd. Zonder OS moet elk programma hier zelf voor instaan. Dit verbergen van de hardware voor de gebruiker en applicaties wordt getoond in Figuur 3.1. Application Operating Hardware User System Fig.3.1. Operating system model Er bestaan een heel aantal besturingssystemen. Het bekendste besturingssysteem is ontworpen door Microsoft: Windows. Apple computers hebben hun eigen besturingssysteem: MAC-OS. Dan is er nog een besturingssysteem dat gratis is: Linux. Linux is afgeleid van Unix, een veel gebruikt systeem in bedrijven. Google heeft onlangs zijn eigen besturingssysteem op de markt gebracht: Android. Maar Deel III-3, Besturingssystemen, pag.1

beide, Android en MAC-OS, zijn gebaseerd op Unix/Linux. Dit zijn de belangrijkste voor alledaagse computers. 3.1 Taken van een OS 3.1.1 Het opstarten van het systeem In de BIOS van de computer staat beschreven welk programma gelaad moet worden bij het opstarten. Dit is meestal het besturingssysteem, omdat het OS voor het beheer van de computer zal zorgen. Het besturingssysteem wordt meestal van de harde schijf gelezen, maar het kan ook wel vanuit ROM-geheugen of vanaf een verwisselbaar medium zoals een cd-rom, dvd, of een flashgeheugen (USB-stick). Het opstarten van het systeem wordt booten genoemd. 3.1.2 Geheugenbeheer De computer onthoudt waar elk bestand van de perifere of secundaire geheugens (zoals harde schijf) is opgeslagen. Dit noemen we het beheren van bestanden en het filesysteem. Files zijn georganiseerd in een boomstructuur en worden, indien nodig, geladen in het werkgeheugen. De computer kan verschillende dingen met bestanden doen: afdrukken maken op een printer; laten zien op het beeldscherm; beveiligen (zodat de inhoud van een bestand niet per ongeluk veranderd of gewist kan worden); een andere naam geven; kopiëren; verplaatsen; verwijderen Zoals we verder zullen zien beheert het OS ook het werkgeheugen (RAM) die enkel aktief als de computer aan staat (dus samen met het aktief zijn van het OS). 3.1.3 Communicatie met randapparatuur: printers, USB, De OS regelt alle handelingen met randapparaten. Randapparaten zijn bijvoorbeeld de printer, het beeldscherm, toetsenbord en muis. Bij bijna alle randapparaten kun je eigenschappen instellen. Zo kun je via het besturingssysteem de scherpte van het beeldscherm instellen. Ook allerlei eigenschappen van de printer kun je met behulp van het besturingssysteem instellen. Dat maakt het voor een beginner vaak lastig. Gelukkig hoef je dat ook niet allemaal te doen. Als je niets doet, kiest de computer automatisch bepaalde instellingen. Zo n instelling noemen we de default instelling. Deel III-3, Besturingssystemen, pag.2

Het communiceren van het OS met het randapparaat gebeurt via een driver. Deze driver wordt meestal automatisch geïnstalleerd als je het apparaat voor de eerste maal aansluit (windows geeft dit aan). Soms moet je het manueel doen of op het internet de laatste versie van de driver zoeken. 3.1.4 Communicatie met buitenwereld: netwerk & internet Het OS regelt ook de communicatie met de buitenwereld. Dit gebeurt meestal automatisch door services of achtergrondprocessen. 3.1.5 Aanbieden gegevens (files) en applicaties van de computer aan gebruiker Het OS biedt meestal een Graphical User Interface (GUI) waarmee je door de inhoud en mogelijkheden van je computer kan browsen. Daarnaast biedt het ook de mogelijkheid aan applicaties om een gebruikersinterface weer te geven. In java kan dit via de Swing klasses. Daarmee maak je zelf een applicatie met een GUI. Merk op dat je op elk OS de applicaties ook kan uitvoeren via commando s. In windows start je een commandowindow door cmd in de Search program and files te tikken. Je krijgt dan een zwart scherm waarin je DOS-commando s kan tikken. DOS was het OS van Microsoft in het pre-windowstijdperk. In Unix/linuxgebaseerde systemen kan dit ook, daar wordt het een shell genoemd. 3.1.6 Beheer van aktieve applicaties en achtergrondprocessen Het OS zorgt voor het uitvoeren van programma's. Het uit te voeren programma wordt naar het werkgeheugen gekopieerd. De processor voert vervolgens de instructies van het programma één voor één uit. Dit bespreken we in detail in 3.2. Het OS werkt zelf met een groot aantal programma s. De meeste programma s zijn verborgen, we noemen dat achtergrondprocessen. Daar merk je dus niets van. Andere programma s zijn niet verborgen. Zo is er een programma waarmee je je files en folders kunt beheren (de explorer in windows). Deze utilitaire programma s breiden in feite de hardware uit met allerlei praktisch-bruikbare functies. 3.1.7 Varia Verder zijn er nog een aantal kleine taken: Toegangscontrole: Het besturingssysteem bevat meestal een login procedure waarbij gebruikers zich kenbaar moeten maken aan het computersysteem Energiebeheer bij laptops en computers die op batterijen werken. Uitwisseling van gegevens tussen programma s via het Clipboard (commando s cut - copy - paste). Deel III-3, Besturingssystemen, pag.3

3.2 Procesbeheer Op een modern OS kan je meerdere programma s tegelijk draaien. Een achtergrondproces is in feite ook een gewoon programma, maar ze is niet zichtbaar voor de gebruiker. De achtergrondprocessen zorgen voor het beheer van het systeem of bieden services aan (zoals het sharen van je (muziek-)files en het checken van je mailbox). Het uitvoeren van een programma resulteert in een proces. Als je het programma opnieuw start krijg je een nieuw proces. Een proces is dus een programma dat uitgevoerd wordt. Al die processen samen moeten beheerd worden door het OS. Daarenboven kan één programma bestaan uit meerdere threads. Elke thread voert een sequentie van instructies uit. Een sequentie kan je zien als een draad, vandaar de benaming. Vele moderne toepassingen zijn zelf opgebouwd uit een groot aantal onafhankelijke threads die simultaan uitgevoerd worden. Het tekstverwerkingssysteem Word bv. gebruikt verschillende threads om teksten en figuren op het scherm te tonen, zodanig dat wanneer men snel door een tekst wenst te lopen men niet hoeft te wachten op het tekenen van alle figuren. Een andere thread zal je taalfouten opsporen (de spelling checker). In de task manager (te starten in Windows met ctrl+alt+delete) zie je alle aktieve applicaties, alle processen en het processor- en geheugengebruik. Je ziet er wel niet de verschillende threads van een proces. 3.2.1 Process scheduling Het simultaan uitvoeren van processen en threads stelt uiteraard verschillende technische problemen: hoe kiest men het programma waaraan de centrale verwerkingseenheid (Central Processing Unit of CPU) werkt? hoe bepaalt men welke programma's samen in werkgeheugen geplaatst worden? welk deel van het werkgeheugen mag gebruikt worden door elk programma? Elk programma krijgt slechts een deel van het werkgeheugen ter beschikking. hoe kan men informatie transfereren van een programma naar een ander? hoe kan men de in- en uitvoer van verschillende programma's waaraan beurtelings gewerkt wordt gescheiden houden? Deel III-3, Besturingssystemen, pag.4

De process-scheduler is een deel van het besturingssysteem dat op elk ogenblik bepaalt aan welk van alle programma's die zich in werkgeheugen bevinden de centrale verwerkingseenheid zal werken. Het hart van de computer, de processor of CPU, kan immers maar 1 programma tegelijk uitvoeren. De processor is immers opgebouwd volgens de Von Neumann-architectuur. Karakteristiek voor deze architectuur is dat hij één programma stap-voor-stap uitvoert. Moderne computers hebben echter meerdere processorcores (dual core, quadcore). Dat zijn dan in feite 2, respectievelijk 4 onafhankelijke processoren die elk één programma kunnen uitvoeren. De process-scheduler zal de processortijd verdelen over de lopende processen: elk proces krijgt een periode ( time slice ) toegekend. De lopende processen, kunnen zich, op elk ogenblik in drie toestanden bevinden (fig.3.2): active task completed preemption start I/O activation load swap out waiting for cpu I/O completion (interrupt) blocked Fig.3.2. Procestoestanden 1) actief: de centrale verwerkingseenheid (processor) is aan het proces aan het werken; dwz. dat instructies van dat programma opgehaald worden door de stuureenheid, 2) geblokkeerd: een in- of uitvoeroperatie (Input/Output of I/O) is aan de gang en het proces moet wachten tot het einde ervan; Deel III-3, Besturingssystemen, pag.5

3) wachtend: het proces zou kunnen uitgevoerd worden, maar de centrale verwerkingseenheid is niet beschikbaar, ze is instructies van een ander proces aan het uitvoeren. Het proces moet wachten tot de proces-scheduler processorcycles ter beschikking stelt. Een proces wordt uit de aktieve toestand gehaald in 3mogelijke gevallen: (a) als het einde van het programma bereikt is, (b) hij moet wachten op I/O of (c) hij de hem toegewezen periode heeft opgebruikt (zie schema). Het wisselen van aktief proces wordt een context switch genoemd. De processor switcht van 1 programma naar een ander. 3.2.2 Interrupts Met een Interrupt wordt een lopend programma onderbroken. Deze is voorzien in de hardware van de processor! Je kan immers niet verwachten dat een lopend programma zelf zal checken of hij verder kan gaan. Ook kan het OS er niet van uitgaan dat elk programma in een redelijke tijd stopt. Het OS moet op elk moment een programma kunnen onderbreken. Anders zou een oneindige lus volledig beslag leggen op je processor zonder dat je er iets aan kan doen, behalve dan de computer herstarten. Let op: het OS is ook niets meer dan een programma. Er is geen big brother in je computer die toekijkt wat de processor doet. Controle over het aktieve proces wordt verkregen door interrupts ( onderbreking ). Om toe te laten op gelijk welk ogenblik sprongen tussen toepassingsprogramma en besturingssysteem te maken bevatten processoren een hardwareschakeling waardoor een programma kan onderbroken worden door middel van een interrupt. Vervolgens bepaalt de interrupt handler welk programma uitgevoerd moet worden. Aan de hand van de oorsprong van de interrupt veroorzaakt deze een sprong naar het gewenste programma. De interrupt handler speelt dus een centrale rol en vormt dan ook het hoofdbestanddeel van de kern van moderne besturingssystemen. De volgende interrupts kunnen gebeuren: a) de toegewezen periode is opgebruikt. Dit gebeurt door een hardware-timer ( wekker ) in de processor die afloopt. De scheduler wordt geaktiveerd en kiest welk wachtend proces geaktiveerd wordt. b) het proces crasht door een onuitvoerbare instructie (deling door 0 bvb). Het OS wordt geaktiveerd met de mededeling van de crash. c) het proces moet wachten op I/O. Het heeft dan geen zin om deze aktief te houden. De scheduler wordt geaktiveerd en houdt het proces geblokkeerd tot de I/O klaar is (input aangekomen is of output verzonden is). d) Er is input toegekomen. Wanneer de muis bewogen wordt of wanneer een bepaalde toets of toetsen-combinatie ingedrukt wordt, willen we (soms) dat de computer onmiddellijk reageert. Met een interrupt kan het aktieve proces onderbroken worden en de input afgehandeld worden. Deel III-3, Besturingssystemen, pag.6

3.2.2 Scheduling Het besturingssysteem beslist welk programma op elk ogenblik toegang krijgt tot de CPU('s) en voor hoelang wanneer verschillende programma's gelijktijdig in uitvoering zijn multitasking. Een veel voorkomende geval is dat de tijd van de CPU in kleine stukjes (fracties van een seconde) wordt verdeeld, en dat deze time slices om beurten aan de verschillende programma's worden toegewezen. Dit systeem wordt timesharing genoemd. Wanneer veel programma's interactief zijn (de gebruiker interageert met de computer van achter een terminal), zullen de verschillende programma's hierdoor nauwelijks zichtbaar vertragen. De reden hiervoor is dat de reactiesnelheid van de gebruiker naar computernormen erg traag is. De keuze van het programma dat actief moet worden uit al die die wachten is een delikaat probleem dat de process scheduler moet oplossen. Die keuze wordt best gemaakt telkens een programma onderbroken werd. De process scheduler is dan ook logischerwijze een deel van het besturingssysteem dat nauw aansluit bij de interrupt handler. Verschillende algoritmen worden in process schedulers gebruikt. De criteria waaraan ze algemeen moeten voldoen zijn: - eenvoudig zijn zodat de processor niet te veel tijd zou verliezen met de keuze van zijn volgende taak. - programma's die veel in- en uitvoer operaties verrichten een hogere prioriteit toekennen dan diegene die alleen maar rekenen, om niet alleen de processor maar ook de randapparatuur optimaal te gebruiken. Volgend algoritme is een goed voorbeeld van wat men in grote computers ontmoet: De verschillende wachtende programma's hebben elk een prioriteit. De process scheduler, telkens hij een programma kan activeren, kiest het meest prioritaire. Bij het begin van de uitvoering kan deze prioriteit voor alle programma's dezelfde zijn, of kan deze afhangen van externe factoren, eigen aan de toepassing. Zo zal bv. in Word het programma dat tekeningen toont een lagere prioriteit hebben dan het programma dat teksten toont. Wachtende programma s zien hun prioriteit regelmatig verhogen, zodanig dat oudere programma s prioriteit zouden krijgen op gelijkaardige jongere. Tijdens de uitvoering zal de prioriteit bij elke in- of uitvoeroperatie verhoogd worden, terwijl, wanneer een overgang van de actieve naar de wachtende toestand opgelegd wordt door de scheduler, de prioriteit verlaagd wordt. Deze vorm van prioriteitsbeheer zorgt voor een optimaal gebruik van gans de computer door programma s die in- en uitvoer doen te bevoordelen ten opzichte van deze die alleen maar rekenwerk verrichten. 3.3 Interactiviteit Men kan twee verschillende soorten programma's onderscheiden qua interactie tussen het programma en de omgeving: batch en interactieve programma's. Deze laatste delen we in commandogebaseerde interactiviteit en GUIs. Deel III-3, Besturingssystemen, pag.7

3.3.1 Batch Batch programma's hebben helemaal geen interactie met hun omgeving tijdens de uitvoering: alle gegevens worden op voorhand klaargemaakt en samen met het programma aan de computer aangeboden, terwijl de resultaten als een geheel, na het beëindigen van de uitvoering aan de gebruiker overgemaakt worden. Het precieze ogenblik waarop dergelijke programma's uitgevoerd worden, noch de uitvoeringssnelheid belangen de gebruiker echt aan. Een programma dat elke maand, aan de hand van gegevens die door een ander programma verzameld werden, de overschrijvingen voor de wedden van bedienden maakt, zou als een typisch voorbeeld kunnen geciteerd worden. De situatie is gans anders bij interactieve programma's: zij zijn gekenmerkt door een permanente dialoog tussen het programma en zijn omgeving. Gegevens die ingevoerd worden zijn dikwijls zelf functie van resultaten die enkele ogenblikken eerder door het programma zelf bepaald werden. Tengevolge deze dialoog hebben ogenblik en snelheid van uitvoering wel veel belang. 3.3.2 Command line Ter illustratie toont fig.3.3 een opeenvolging van commando's voor een interactieve command interpreter (cmd.exe, de command interpreter van MS/DOS, de voorloper van Windows). Het voorbeeld bestaat uit het overschrijven van 5 hoofdstukken van een cursus, die elk op een afzonderlijk bestand staan, op een nieuw bestand dat daarna afgedrukt wordt. 12:21:19.26 C> copy chap1.txt list.txt 12:22:45.77 C>copy list.txt +chap2.txt LIST.TXT CHAP2.TXT 12:23:05.76 C> copy list.txt +chap3.txt LIST.TXT CHAP3.TXT 12:23:20.81 C> copy list.txt +chap4.txt LIST.TXT CHAP4.TXT 12:23:27.68 C> copy list.txt +chap5.txt LIST.TXT CHAP5.TXT 12:23:34.05 C> print list.txt C:\LIST.TXT is currently being printed 12:24:20.13 C> Fig. 3.3 Example of an interactive MS/DOS session. Deel III-3, Besturingssystemen, pag.8

In het voorbeeld meldt de command interpreter aan de gebruiker dat hij een commando verwacht door het uur gevolgd door C> op het scherm te doen verschijnen. De gebruiker geeft het bevel (bevelen zijn hier voor duidelijkheid in schuinschrift weergegeven) het bestand chap1.txt over te schrijven op het bestand list.txt door middel van het programma copy. Dit programma meldt aan de gebruiker dat de opdracht uitgevoerd is en stopt. De command interpreter meldt dan dat hij een nieuwe opdracht kan aanvaarden. De gebruiker beveelt dat hetzelfde programma copy het bestand chap2.txt zou toevoegen aan het reeds bestaande bestand list.txt (het + teken in het bevel betekent dat de inhoud van chap2.txt moet toegevoegd worden aan de bestaande inhoud van list.txt). Deze opeenvolging van bevelen en uitvoeringen wordt verder gezet tot de 5 bestanden achter elkander overgeschreven zijn en het programma print begonnen is met het afdrukken van het resulterende bestand (het programma print kan als het ware in de achtergrond verder werken terwijl de gebruiker iets anders doet). Een batchprogramma is niets anders dan een lijst van zulke commando s. 3.3.3 GUI De GUI is alombekend bij de moderne computergebruiker. Anderzijds geven smart phones en tablets nieuwe mogelijkheden qua interactiviteit die niet mogelijk zijn met een PC of laptop. Deel III-3, Besturingssystemen, pag.9