Computerarchitectuur en netwerken. InterProcess Communication (IPC)
|
|
- Benjamin Adriaan Adam
- 7 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Computerarchitectuur en netwerken 5 InterProcess Communication (IPC) Lennart Herlaar 21 september 2016
2 Inhoud Manieren van communicatie tussen processen binnen één computer: Via files erven I/O redirection file locking pipes Message passing Via het geheugen (shared memory) Synchronisatie Signals Lennart Herlaar Computerarchitectuur en netwerken 5 1
3 Inter Process Communicatie Hoe kunnen processen met elkaar communiceren? Lennart Herlaar Computerarchitectuur en netwerken 5 2
4 Inter Process Communicatie Hoe kunnen processen met elkaar communiceren? Files: één proces schrijft data in een file, ander proces leest het eruit. Probleem: synchronisatie: hoe weet het ontvangende proces dat er iets nieuws in de file staat? Lennart Herlaar Computerarchitectuur en netwerken 5 2
5 Inter Process Communicatie Hoe kunnen processen met elkaar communiceren? Files: één proces schrijft data in een file, ander proces leest het eruit. Probleem: synchronisatie: hoe weet het ontvangende proces dat er iets nieuws in de file staat? Pipe: een file-achtig object dat echter niet op de schijf staat (pijpleiding). Een pipe heeft een schrijf-einde en een lees-einde Het producerende proces schrijft data in het schrijf-einde Het consumerende proces leest de data uit het lees-einde Lennart Herlaar Computerarchitectuur en netwerken 5 2
6 Inter Process Communicatie Hoe kunnen processen met elkaar communiceren? Files: één proces schrijft data in een file, ander proces leest het eruit. Probleem: synchronisatie: hoe weet het ontvangende proces dat er iets nieuws in de file staat? Pipe: een file-achtig object dat echter niet op de schijf staat (pijpleiding). Een pipe heeft een schrijf-einde en een lees-einde Het producerende proces schrijft data in het schrijf-einde Het consumerende proces leest de data uit het lees-einde Message passing: boodschapjes sturen Shared memory: gemeenschappelijk geheugen gebruiken Lennart Herlaar Computerarchitectuur en netwerken 5 2
7 File Sharing Filehandles (filedescriptors) kunnen geërfd worden door een kind-proces. ouder-proces opent een file ouder-proces creërt kind-proces kind-proces erft de filedescriptor beide processen kunnen nu de file lezen/schrijven fd = open("filenaam",...); pid = fork(); switch (pid) { case 0: /* kind proces */ write (fd,...); case -1: /* fout */ default: /* ouder */ write (fd,...); } Wat kun je zeggen over de inhoud van de file? Lennart Herlaar Computerarchitectuur en netwerken 5 3
8 O.S. Datastructuren 0 1 proces A 0 1 proces B open files file positie file positie open files file 1 file 2 file1: gemeenschappelijke file-pointer Lezen en schrijven van proces A en B achter elkaar in de file Contrast: wanneer A en B ieder afzonderlijk dezelfde file openen hebben ze elk een eigen file pointer. Lennart Herlaar Computerarchitectuur en netwerken 5 4
9 Inhoud Manieren van communicatie tussen processen binnen één computer: Via files erven I/O redirection = file locking pipes Message passing Via het geheugen (shared memory) Synchronisatie Signals Lennart Herlaar Computerarchitectuur en netwerken 5 5
10 I/O redirection 1 Scenario: Een ouderproces wil dat het kindproces van een bepaalde file leest Of wil dat het kindproces naar een bepaalde file schrijft Vraag: wie opent die file: ouder of kind? Als ouder het doet: kind moet de open file erven. Als kind het doet: ouder moet de filenaam meegeven aan het kind Zie 5.2 in het dictaat Lennart Herlaar Computerarchitectuur en netwerken 5 6
11 I/O redirection 2 In Unix en Windows console programma s hebben processen drie bijzondere file descriptors: standaard invoer (0): hiervan leest het proces = normaal het toetsenbord Lennart Herlaar Computerarchitectuur en netwerken 5 7
12 I/O redirection 2 In Unix en Windows console programma s hebben processen drie bijzondere file descriptors: standaard invoer (0): hiervan leest het proces = normaal het toetsenbord standaard uitvoer (1); hiernaar schrijft het proces = normaal het beeldscherm Lennart Herlaar Computerarchitectuur en netwerken 5 7
13 I/O redirection 2 In Unix en Windows console programma s hebben processen drie bijzondere file descriptors: standaard invoer (0): hiervan leest het proces = normaal het toetsenbord standaard uitvoer (1); hiernaar schrijft het proces = normaal het beeldscherm Er is nog een derde: standaard error (2) voor foutmeldingen Deze worden normaliter geërfd door kindprocessen Lennart Herlaar Computerarchitectuur en netwerken 5 7
14 I/O redirection 2 In Unix en Windows console programma s hebben processen drie bijzondere file descriptors: standaard invoer (0): hiervan leest het proces = normaal het toetsenbord standaard uitvoer (1); hiernaar schrijft het proces = normaal het beeldscherm Er is nog een derde: standaard error (2) voor foutmeldingen Deze worden normaliter geërfd door kindprocessen standaard invoer proces standaard error standaard uitvoer Lennart Herlaar Computerarchitectuur en netwerken 5 7
15 I/O redirection 3 We doen het volgende in een textuele shell: (ls op Unix of DIR in Windows geven een lijst van je files) ls > file of DIR > file Schrijft naar file in plaats van beeldscherm Lennart Herlaar Computerarchitectuur en netwerken 5 8
16 I/O redirection 3 We doen het volgende in een textuele shell: (ls op Unix of DIR in Windows geven een lijst van je files) ls > file of DIR > file Schrijft naar file in plaats van beeldscherm proces file Lennart Herlaar Computerarchitectuur en netwerken 5 8
17 I/O redirection 3 We doen het volgende in een textuele shell: (ls op Unix of DIR in Windows geven een lijst van je files) ls > file of DIR > file Schrijft naar file in plaats van beeldscherm proces file mail lennart < file Leest van file in plaats van toetsenbord Lennart Herlaar Computerarchitectuur en netwerken 5 8
18 I/O redirection 3 We doen het volgende in een textuele shell: (ls op Unix of DIR in Windows geven een lijst van je files) ls > file of DIR > file Schrijft naar file in plaats van beeldscherm proces file mail lennart < file Leest van file in plaats van toetsenbord file proces Lennart Herlaar Computerarchitectuur en netwerken 5 8
19 I/O redirection 3 We doen het volgende in een textuele shell: (ls op Unix of DIR in Windows geven een lijst van je files) ls > file of DIR > file Schrijft naar file in plaats van beeldscherm proces file mail lennart < file Leest van file in plaats van toetsenbord file proces Op Unix i.h.a. tussen de fork() en exec(). Lennart Herlaar Computerarchitectuur en netwerken 5 8
20 I/O redirection voorbeeld met fork pid = fork(); if (pid == 0) { // kind proces fileid = open ("filenaam", O_READ); dup2 (fileid, 0); close (fileid); exec (..); } file file begin file open file dup2 close Lennart Herlaar Computerarchitectuur en netwerken 5 9
21 I/O redirection voorbeeld zonder fork: filesdescr 0 wegzetten en later terug fileid = open ("filenaam", O_READ); saveid = dup(0); dup2 (fileid, 0); close (fileid);... start nu het kind... close (0); dup2 (saveid, 0); close (saveid); file file 0 file file stdin file stdin stdin stdin begin open dup dup2 close dup2 Lennart Herlaar Computerarchitectuur en netwerken 5 10
22 File locking Zie 4.7 en 7.3 in het dictaat Gelijktijdige toegang tot files: bescherm tegen gelijktijdige veranderingen Readers en writers probleem: Gelijktijdig schrijven (veranderen) gooit de file in de war Gelijktijdig lezen en schrijven kan bij lezen inconsistente informatie geven. Voorbeeld: bij een rekeningbestand moet een overschrijving in zijn geheel plaatsvinden voordat anderen er aan mogen komen maar updates op stukken die disjunct zijn zitten elkaar niet in de weg. Oplossing via file locks Als er meerdere processen bij betrokken zijn dan moet het O.S. het doen. Lennart Herlaar Computerarchitectuur en netwerken 5 11
23 Win32 file locking Bij het openen van de file specificeren: wat we met de file willen doen: READ en/of WRITE wat we andere processen toestaan: niets (exclusief), READ, WRITE of beide we kunnen nu delen van de file locken : LockFile(filehandle, beginbyte, eindbyte) lockt het deel tussen beginbyte en eindbyte UnlockFile(filehandle, beginbyte, eindbyte) unlockt het deel tussen beginbyte en eindbyte Als een ander proces een read resp. write wil doen op een gelockt stuk krijgt het een foutcode terug Lennart Herlaar Computerarchitectuur en netwerken 5 12
24 Win32 file locking Bij het openen van de file specificeren: wat we met de file willen doen: READ en/of WRITE wat we andere processen toestaan: niets (exclusief), READ, WRITE of beide we kunnen nu delen van de file locken : LockFile(filehandle, beginbyte, eindbyte) lockt het deel tussen beginbyte en eindbyte UnlockFile(filehandle, beginbyte, eindbyte) unlockt het deel tussen beginbyte en eindbyte Als een ander proces een read resp. write wil doen op een gelockt stuk krijgt het een foutcode terug begin eind A B read/write Lennart Herlaar Computerarchitectuur en netwerken 5 12
25 Unix file locking In Unix wordt file sharing niet opgegeven bij openen De fcntl() system call wordt gebruikt om delen van de file te locken Bij een lock kan opgegeven worden of het een read lock of write lock is en welk stuk van de file. read lock laat geen andere write locks toe op hetzelfde stuk, maar wel read locks write lock laat geen andere read locks of write locks toe op hetzelfde stuk F_SETLK geeft een error-code als er een lock conflict is F_SETLKW blokkeert in zo n geval Lennart Herlaar Computerarchitectuur en netwerken 5 13
26 Inhoud Manieren van communicatie tussen processen binnen één computer: Via files erven I/O redirection file locking pipes = Message passing Via het geheugen (shared memory) Synchronisatie Signals Lennart Herlaar Computerarchitectuur en netwerken 5 14
27 Pipes Wat is een pipe? Pipe: een file-achtig object dat in het geheugen staat. Een pipe heeft een schrijf-einde en een lees-einde Het producerende proces schrijft data in het schrijf-einde Het consumerende proces leest de data uit het lees-einde producer Pipe eigenschappen pipe consumer Het consumerende proces moet wachten als de pipe leeg is Het producerende proces moet wachten als de pipe te vol is. Als meer processen dezelfde pipe gebruiken dan is de data niet altijd goed gescheiden. Named pipes hebben een naam, net als files Anonymous pipe heeft geen naam. Lennart Herlaar Computerarchitectuur en netwerken 5 15
28 Pipes maken Win32 CreateNamedPipe om een named pipe te maken, CreateFile om te gebruiken (= gewone file aanroep) Anonymous pipe: CreatePipe om te maken. anonymous pipes kunnen overgeërfd worden door kind-processen. maar andere processen kunnen er niet bij. Named pipes kunnen door willekeurige processen gebruikt worden. Lennart Herlaar Computerarchitectuur en netwerken 5 16
29 Pipes maken Unix (anonymous pipes) Het ouder proces creëert een pipe met de pipe() system call De pipe() call levert twee filedescriptors op: een voor de leeskant en een voor de schrijfkant. Het ouder process creëert een kind-proces m.b.v fork() Een van de twee sluit de leeskant en de ander de schrijfkant (afhankelijk van welke richting gewenst is). Anonymous pipe kan alleen gebruikt worden tussen processen die een gezamenlijke voorouder hebben, die de pipe gemaakt heeft. Named pipes (Fifos) zitten in Unix gewoon in het filesysteem (en worden met de system call mkfifo aangemaakt). Lennart Herlaar Computerarchitectuur en netwerken 5 17
30 Pipe voorbeeld int pd[2]; pipe(pd); pid=fork(); if (pid == 0) // kind { close(pd[0]); // sluit lees-einde dup2(pd[1], 1); // kopieer schrijf-einde naar stdout close(pd[1]); // sluit originele schrijf-einde... } else { // ouder close(pd[1]); // sluit schrijf-einde dup2(pd[0], 0); // kopieer lees-einde naar stdin close(pd[0]); // sluit originele lees-einde... } Lennart Herlaar Computerarchitectuur en netwerken 5 18
31 Pipe en file descriptors kind ouder pd[0] 0 stdin stdout 1 pd[1] Kind: close(pd[0]); // sluit lees-einde dup2(pd[1], 1); // kopieer schrijf-einde naar stdout close(pd[1]); // sluit originele schrijf-einde Ouder: close(pd[1]); // sluit schrijf-einde dup2(pd[0], 0); // kopieer lees-einde naar stdin close(pd[0]); // sluit originele lees-einde Lennart Herlaar Computerarchitectuur en netwerken 5 19
32 Inhoud Manieren van communicatie tussen processen binnen één computer: Via files erven I/O redirection file locking pipes Message passing = Via het geheugen (shared memory) Synchronisatie Signals Lennart Herlaar Computerarchitectuur en netwerken 5 20
33 Message Passing Bij message passing kan een proces een message sturen naar een ander proces. Het ontvangende proces kan de messages één voor één ontvangen Elke message is een onverbrekelijke eenheid vergelijk: een pipe is een byte-stream De messages worden verzameld in message queues In Win16: per window is er een message queue In Win32: ook een message queue per thread Het verzendende proces kan kiezen: of naar een thread sturen (PostThreadMessage) of naar een window (SendMessage) Het ontvangende proces (thread) kan gewekt worden als er een boodschap aankomt. Lennart Herlaar Computerarchitectuur en netwerken 5 21
34 Message passing zender ontvanger queue recv message queue Lennart Herlaar Computerarchitectuur en netwerken 5 22
35 Inhoud Manieren van communicatie tussen processen binnen één computer: Via files erven I/O redirection file locking pipes Message passing Via het geheugen (shared memory) = Synchronisatie Signals Lennart Herlaar Computerarchitectuur en netwerken 5 23
36 Shared Memory Processen wisselen data uit via een shared segment Unix en Windows hebben speciale system calls om een stuk shared memory aan te vragen: via de page table wordt hetzelfde fysieke geheugen in de virtuele adresruimtes van processen gemapt Ook via memory-mapped files kan shared memory gebruikt worden Probleem: synchronisatie: hoe weet een proces dat er nieuwe gegevens zijn Hoe zorg je dat twee processen niet tegelijk in dezelfde variabele bezig zijn aankondigen mogelijk via messages, signals e.d. beschermen mogelijk zoals bij file locking Lennart Herlaar Computerarchitectuur en netwerken 5 24
37 Kritieke secties Een stuk programma waarin variabelen gemanipuleerd worden die in meer dan één thread gebruikt/gewijzigd worden heet een kritieke sectie Vergelijk het werken op dezelfde file vanuit meer dan één proces. Om chaos te voorkomen moet voorkomen worden dat meer dan één thread in de kritieke sectie komt In het college Gedistribueerd Programmeren wordt dit geleerd en geoefend Een van de oplossingen: vóór je de kritieke sectie ingaat moet je een lock doen aan het eind van de kritieke sectie doe je een unlock Lennart Herlaar Computerarchitectuur en netwerken 5 25
38 Synchronisatie Wie? Soms impliciet: synchrone I/O wacht tot de I/O klaar is bij aanvraag resource meestal vanzelf wachten kritieke secties in de kernel Soms moet het expliciet gebeuren: Een ouder proces wacht op een kindproces kritieke secties bij gebruik van shared memory of shared files Lennart Herlaar Computerarchitectuur en netwerken 5 26
39 Synchronisatie in Unix Proces wacht op kind-proces: wait() system call. wait(status) wacht tot een kind-proces termineert en geeft het proces ID van het betreffende kind terug. status ontvangt de exit status van het kind. Moderne Unix systemen: waitpid(pid) wacht op het opgegeven kind-proces. Ook procesgroepen mogelijk. Andere synchronisatiemogelijkheden: semaforen (college Gedistribueerd Programmeren). Ook in Win32. Lennart Herlaar Computerarchitectuur en netwerken 5 27
40 Signals 1 Een proces kan een software interrupt naar een ander proces (of zichzelf) sturen Processen kunnen kiezen welke signals ze willen hebben Dit wordt ook gebruikt om fouten af te vangen Of voor het signaleren van events in het O.S. (bijv. aankomst van message) Bij een signal wordt een aangegeven functie aangeroepen Lennart Herlaar Computerarchitectuur en netwerken 5 28
41 Signals 2 1 Declareer de signal handler: handler(signalnumber) { /* Hier de instructies voor als het signal komt */ } 2 Vertel het O.S. welke functie moet worden aangeroepen als de interrupt komt: signal(sigint, handler); Lennart Herlaar Computerarchitectuur en netwerken 5 29
42 Signals 3 /* stuur een signal naar proces pid */ kill (pid, SIGINT); In proces pid wordt nu de normale sequentiële executie onderbroken en de handler aangeroepen. Na afloop gaat de normale executie verder (tenzij handler die verbreekt). Een signal-handler vormt niet een thread De signal handler kan niet tijdelijk stoppen om het hoofdprogramma verder te laten gaan De handler kan wel onderbroken worden door een andere handler (LIFO) Synchronisatie werkt moeilijk Lennart Herlaar Computerarchitectuur en netwerken 5 30
43 Programma flow programma signal signal handler return Het is alsof er een methode-aanroep tussengeschoven wordt. Lennart Herlaar Computerarchitectuur en netwerken 5 31
44 Synchronisatie met signals pause() laat het proces wachten tot er een signal komt alarm(x) zorgt ervoor dat het O.S. na x sec. een signal genereert Bijv. sleep() is een combinatie van alarm() en pause() void sleep(int seconds) { signal(sigalrm, sleephandler); alarm(seconds); pause(); } void sleephandler(int signr) { /* doe verder niks */ } Lennart Herlaar Computerarchitectuur en netwerken 5 32
45 Signals 4 In het hoofdprogramma: signalled = false; incrit = true; < kritieke sectie > incrit = false; if (signalled) < doe operatie > In de signal routine: if (incrit) signalled = true; else < doe operatie > Veronderstelling: Lees/schrijf op een variabele is atomair. Lennart Herlaar Computerarchitectuur en netwerken 5 33
46 Samenvatting Manieren van communicatie tussen processen binnen één computer: Via files erven I/O redirection file locking pipes Message passing Via het geheugen (shared memory) Synchronisatie Signals Lennart Herlaar Computerarchitectuur en netwerken 5 34
Computerarchitectuur en netwerken 4 Processen en Threads
Computerarchitectuur en netwerken 4 Processen en Threads Lennart Herlaar 19 september 2016 Inhoud Scheduling scheduler prioriteiten real-time scheduling Processen ouder-kind processen Unix: fork en exec
Nadere informatieComputerarchitectuur en netwerken Toets 1 4 okt
11.00 13.00 De open vragen moet je beantwoorden op tentamenpapier. De multiple-choice antwoorden moet je op het vragenblad invullen in de rechtervakjes en dat blad inleveren. Schrijf je naam, studentnummer
Nadere informatieComputerarchitectuur en netwerken. Gedistribueerde IPC
Computerarchitectuur en netwerken 6 Gedistribueerde IPC Lennart Herlaar 21 september 2015 Inhoud IPC: locaal vs. gedistribueerd Message passing Client/server model Remote Procedure Call locaal vs. gedistribueerd
Nadere informatieComputerarchitectuur en netwerken. Operating System structuur. Files
Computerarchitectuur en netwerken 3 Operating System structuur Files Lennart Herlaar 13 september 2017 Inhoud 1 Operating Systems structuur system calls kernel / processen 2 Files storage en directory
Nadere informatieHet begrip 'Proces' Proces-toestand
Het begrip 'Proces' Een proces is de uitvoering van een programma Bij een proces hoort een programma (de code) Program Counter (Instructiewijzer) stack data (data sectie) twee of meer processen kunnen
Nadere informatieComputerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 12 september 2016 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieGelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 5.1-5.2, Appendix A.
Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 51-52, Appendix A1) Processes zijn meestal niet onafhankelijk Bijvoorbeeld: 2 processen
Nadere informatieHoofdstuk 3: Processen: Beschrijving en Besturing. Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces?
Hoofdstuk 3: Processen: Beschrijving en Besturing Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces? 1 Wat is een proces? Een proces is een programma in uitvoering
Nadere informatieslides3.pdf April 15, 2002 1
Wat is een Operating System? CSN CS3 OS structuur en File management Standaard verzameling software voor een computer Besturing/beheer van de computer Gemak voor schrijvers van programma s Standaarden
Nadere informatieTentamen Computersystemen
Tentamen Computersystemen baicosy6 2e jaar bachelor AI, 2e semester 21 oktober 213, 9u-11u OMHP D.9 vraag 1 Van een Single Cycle Harvard machine hebben de componenten de volgende propagation delay time:
Nadere informatieSemaforen. Semaforen p. 1/2
Semaforen 2008 Semaforen p. 1/2 Vorige Keer mbv mutual exclusion kritieke sectie (cs) 1. software : Dekker s, Peterson s algoritme 2. hardware: uniprocessor machine: disable interrupts 3. hardware: multiprocessor
Nadere informatieComputerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 10 september 2018 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieKorte uitleg: File descriptors en redirection in de shell (en pipes)
Korte uitleg: File descriptors en redirection in de shell (en pipes) De zogenaamde Redirection faciliteit zoals gebruikt in de shell is soms lastig te overzien. Vooral bash heeft nogal wat uitbreidingen
Nadere informatieGebruik van command-line operating systems
Gebruik van command-line operating systems Mattias Holm & Kristian Rietveld Overzicht - Waarom hier meer over leren? - Wat is een shell? - Hoe werkt een shell? - Pipes en redirectie - Handige utilities
Nadere informatieslides7.pdf 23 nov
Onderwerpen Operating Systems Inleiding Algemeen 7 Operating Systems Algoritmen Piet van Oostrum Wat is een Operating System? Wat doet een O.S.? Hoe zit een O.S. in elkaar? (in grote lijnen) Wat zijn de
Nadere informatieTI-2720 Operating System Concepten. 6 november 2012, uur. docent: H.J. Sips. Dit is een tentamen met 9 open vragen
TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica Sectie Parallelle en Gedistribueerde Systemen TUDelft TI-2720 Operating System Concepten 6 november 2012, 14.00-17.00 uur.
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Examen Operating Systemen (2R230) op vrijdag 26 augustus 2005, 14.00-17.00 uur. Het tentamen bestaat uit drie delen die apart worden
Nadere informatieHoofdstuk 7. Computerarchitectuur
Hoofdstuk 7 Computerarchitectuur 1 controlebus CPU MEMORY I/O databus adresbus Figuur 71 Schematische opbouw van een computersysteem 8 Figuur 72 Een busverbinding Buslijn Out E A In Out E B In Out E C
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30
TECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30 Algemene opmerkingen (lees dit!): - Dit tentamen duurt ANDERHALF UUR! - Dit
Nadere informatieComputerarchitectuur en Netwerken. Computerarchitectuur
Computerarchitectuur en Netwerken 1 Computerarchitectuur Lennart Herlaar 2 september 2015 Opbouw van het vak Eerst (6 keer) over de opbouw van computer en operating system Collegedictaat Systeemarchitectuur
Nadere informatieGedistribueerd Programmeren - Samenvatting
Gedistribueerd Programmeren - Samenvatting Geertjan van Vliet Disclaimer: Aan deze teksten kunnen geen rechten ontleend worden. Bepaalde passages zijn de visie van de auteur en niet die van de docent.
Nadere informatieTim Mallezie Architectuur van besturingssystemen: Vraag A2.
Procesbeheer: kenmerken van moderne besturingssystemen. 1. Bespreek de (drie) meest typische kenmerken van moderne besturingssystemen. 2. In hoeverre beantwoorden UNIX, Linux en Windows NT hieraan? Geef
Nadere informatieUitwerking Tentamen Operating Systems Maandag 15 juni 2015 P1 P2 P3 P4 P5 P1 P3 P5 P4 P2 P1 P3 P5 P3. Opgave 1
Uitwerking Tentamen Operating Systems Maandag 15 juni 2015 Belangrijk: de gegeven antwoorden vormen één mogelijke uitwerking van het tentamen. Echter zijn er bij vele vragen meerdere correcte antwoorden
Nadere informatieCentrale begrippen hoofdstuk 3. Waarom multiprogramming? Vandaag. processen proces state: running, ready, blocked,... Vragen??
Vragen?? Vandaag Hoofdstuk 4: threads (tentamenstof : 4.1 t/m 4.2) Kleine Opgaven 4.1 (niet alleen ja of nee, ook waarom!) en 4.4 inleveren maandag Centrale begrippen hoofdstuk 3 processen proces state:
Nadere informatieIN1805 I Operating System Concepten
IN1805 I Operating System Concepten Hoofdstuk 12: Mass-storage structure 9-1 Secondary storage (1) voornamelijk disks kleinst leesbare eenheid: sector plaats van een sector volledig bepaald door: drive
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Deel-tentamen Operating Systemen (2IN05) op vrijdag 5 oktober 2007, 9.00-10.30 uur. Het tentamen bestaat uit twee delen die apart worden
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 19, 2018 Overzicht Grafische programma s en tekstgebaseerde programma s Stijladviezen (Jeff Knupp, Writing Idiomatic Python) File Processing (Zelle 5.9.2)
Nadere informatieslides2.pdf April 12,
Werking van CPU CSN CS2 CPU, I/O en Memory management Piet van Oostrum 12 april 2002 De ALU kan alleen eenvoudige operaties uitvoeren (bijv. twee getallen optellen, vermenigvuldigen of testen of iets >
Nadere informatieObjective-C Basis. 23 april 2005, Eindhoven Patrick Machielse
Objective-C Basis 23 april 2005, Eindhoven Patrick Machielse patrick@hieper.nl Algemeen // extensies Objective-C code in bestanden met.m extensie // commentaar moet! /* Alles hiertussen wordt genegeerd
Nadere informatieUitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, uur
Uitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, 13.00-15.00 uur 1. De situatie die ontstaat door class A : B C D; kan beschreven worden door (a) B is een A (b)
Nadere informatieConclusies over semaforen
Conclusies over semaforen gebruik semaforen is subtiel signal & wait operaties, en access van shared data, op allerlei plekken in de code Kan dit niet handiger? Dwz: zijn er geen betere abstracties? Ja:
Nadere informatieErik Poll Martijn Warnier. http://www.cs.kun.nl/~erikpoll/linux
Introductie Linux/UNIX Erik Poll Martijn Warnier http://www.cs.kun.nl/~erikpoll/linux Concrete doel van vandaag Basisvaardigheden UNIX/Linux werken met de command line shell file beheer proces beheer Betere
Nadere informatieToets In2305-ii Embedded Programming Dinsdag 28 November 2006, 15:45-16:30
Toets In2305-ii Embedded Programming Dinsdag 28 November 2006, 15:45-16:30 Teneinde misverstanden over de syntactische geldigheid van code fragmenten in dit tentamen te voorkomen, zal altijd worden gesproken
Nadere informatieDatastructuren: stapels, rijen en binaire bomen
Programmeermethoden Datastructuren: stapels, rijen en binaire bomen week 12: 23 27 november 2015 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Inleiding In de informatica worden Abstracte DataTypen (ADT s)
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 11 december 2015 Ingebouwde datastructuren Meer boomstructuren Access specifiers Gebruikersinvoer Codestijl Packages SAT-solver Ingebouwde datastructuren Ingebouwde
Nadere informatieBasis UNIX commando's - overzicht
Basis UNIX commando's - overzicht Hieronder volgt een lijst van UNIX-commando's die voor het programmeerpraktikum nodig, handig en/of nuttig zijn. De genoemde opties zijn er meestal maar een paar! Voor
Nadere informatie1 Inleiding probleembeschrijving
Bas Weelinck (5985498), Merlijn Wajer (5948940), Koos van Strien (5783437) 18 mei 2010 1 Inleiding probleembeschrijving Volgens de specificaties gegeven in het opdrachtdocument moet een gedistribueerde
Nadere informatieComputerarchitectuur en netwerken. Netwerklaag/Routering
Computerarchitectuur en netwerken Netwerklaag/Routering Lennart Herlaar 8 oktober 06 Inhoud Routeringsalgoritmen Link state Distance vector Hierarchische routering Routering in Internet RIP OSPF BGP Lennart
Nadere informatie4EE11 Project Programmeren voor W. College 2, , Blok D Tom Verhoeff, Software Engineering & Technology, TU/e
4EE11 Project Programmeren voor W College 2, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e 1 Onderwerpen Terugblik Functies Organisatie (architectuur) van programma s Arrays Structuren
Nadere informatieInstallatie instructies. UBplus. Voor Linux / Samba. 12-sep-11. Datum: Ref erentie: Versie: 1.1
Installatie instructies UBplus Voor Linux / Samba Datum: Ref erentie: Versie: 1.1 12-sep-11 Introductie UBplus wordt op dit moment vaak geïnstalleerd op Windows servers (2003/2008). Via een terminal server
Nadere informatieDatastructuren Werkcollege Intro
Bart Hijmans, Universiteit Leiden. Universiteit Leiden The Netherlands Focus 1 19 ˆ Ervaring in gebruik en implementatie van datastructuren ˆ Kennis van mogelijkheden ˆ Programmeren voor andere programmeurs
Nadere informatieExamen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010
Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2009-2010 16 juni, 2010 **BELANGRIJK** 1. Schrijf je naam onderaan op elk blad. 2.
Nadere informatieICT Infrastructuren: Processen en Threads. 18 november 2013 David N. Jansen
ICT Infrastructuren: Processen en Threads 18 november 2013 David N. Jansen Datum en Ajd van werkcollege na overleg met de aanwezigen: donderdag 8:45 10:30 Leerdoel voor vandaag. Stallings hoofdst 2 4 Hoofddoelen
Nadere informatieProgrammeren in Java 3
7 maart 2010 Deze les Zelf componenten maken Concurrency (multithreading): werken met threads levenscyclus van een thread starten tijdelijk onderbreken wachten stoppen Zelf componenten maken Je eigen component:
Nadere informatieTim Mallezie Architectuur van besturingssystemen: Vraag A4.
Procesbeheer: creatie en wisselen van processen. a) Verduidelijk het begrip PCB. b) Uit welke opeenvolgende stappen bestaat de creatie van een nieuw proces? c) Hoe worden in UNIX en Linux nieuwe processen
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Examen Operating Systemen (2R230) op dinsdag 27 juni 2006, 14.00-17.00 uur. Het tentamen bestaat uit drie delen die apart worden ingeleverd.
Nadere informatieComputerarchitectuur en netwerken. Multimedia in netwerken
Computerarchitectuur en netwerken 14 Multimedia in netwerken Lennart Herlaar 20 oktober 2015 Inhoud Multimedia in netwerken Quality of Service Streaming en buffering Protocollen (RTSP, RTP) Scheduling
Nadere informatieEvenwijdig programmeren - Bericht wachtrijen (2)
LinuxFocus article number 296 http://linuxfocus.org Evenwijdig programmeren - Bericht wachtrijen (2) door Leonardo Giordani Over de auteur: Ik heb juist mijn diploma ontvangen
Nadere informatiein1671 - Operating System Concepten Doel van een Operating System Interrupts 3-Lagen model spooling (Simultaneous Peripheral Operation On Line)
in1671 - Operating System Concepten Doel van een Operating System drs J.W.J. Heijnsdijk Faculteit EWI, kamer 09.280 (Mekelweg 4) tel. 85804 email: Heijnsdijk@ewi.tudelft.nl Wat is een Operating System?
Nadere informatieProgrammeermethoden NA
Programmeermethoden NA Week 4: Files & Functies Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Vorige week: Controlestructuren # gegeven # 0
Nadere informatiein1671 - Operating System Concepten
in1671 - Operating System Concepten drs J.W.J. Heijnsdijk Faculteit EWI, kamer 09.280 (Mekelweg 4) tel. 85804 email: Heijnsdijk@ewi.tudelft.nl 2005 1-1 Doel van een Operating System Wat is een Operating
Nadere informatieMulti-core systemen. door Alexander Melchior
Multi-core systemen Multi-cpu & Multi-core Multi cpu & Multi core door Alexander Melchior Toevoeging aan GDP Overdragen Capita Selecta Waarom? Een stukje geschiedenis 2005: Introductie eerste consumenten
Nadere informatieDeel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,
Deel 1: Arduino kennismaking Wat is een microcontroller, structuur van een programma, syntax, Wat is een microcontroller Wat is een microcontroller? Microcontroller = kleine dedicated computer. - Beperkt
Nadere informatieZelftest Programmeren in Java
Zelftest Programmeren in Java Document: n0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST PROGRAMMEREN IN JAVA Deze test
Nadere informatieIN1805 I - Operating System Concepten
IN1805 I - Operating System Concepten Koen Langendoen email: k.g.langendoen@tudelft.nl 1-1 Praktische Zaken Voorkennis: C + computer systemen College: 7x3 = 5x4 = 5x(wo+do) Tentamen: 2 april + 1 juli Boek
Nadere informatieBelangrijkste ideeën/concepten uit OS, incl. proces
Operating System Overview (Hfst 2) Wat is een OS? Wat was een OS? Evolutie van OS. OS als virtuele machine OS als beheerder van hulpbronnen (resources) Belangrijkste ideeën/concepten uit OS, incl. proces
Nadere informatieTentamen 17 augustus 2000 Opgaven Computerarchitectuur
Tentamen 17 augustus 2000 Opgaven - 1 - Computerarchitectuur Tentamen Computerarchitectuur (213005) 17 augustus 2000 2 bladzijden met 5 opgaven 3 antwoordbladen Het raadplegen van boeken, diktaten of aantekeningen
Nadere informatieVariabelen en statements in ActionScript
Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 18 december 2015 Overerving (inheritance) Constructors Overriding Inheritance demo Exceptions Zelf exceptions veroorzaken Overerving (inheritance) 2-dimensionaal
Nadere informatieEen korte samenvatting van enkele FORTRAN opdrachten
Een korte samenvatting van enkele FORTRAN opdrachten Inhoud 1 Introductie 3 2 De structuur van een FORTRAN programma 3 3 Datatypen, variabelen en declaraties 3 4 Expressies-volgorde van uitwerking 4 5
Nadere informatieMINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara
MINICURSUS PHP Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2017-2018 Sebastiaan Franken en Rosalie de Klerk Bambara PHP Cursus Deze cursus is om de eerste stappen in de wereld
Nadere informatieBestand: /home/karel/scripts/mkusb Pagina 1 van 6
Bestand: /home/karel/scripts/mkusb Pagina 1 van 6 1 #!/bin/bash 2 ############################################################################# 3 # Bestand: mkusb # 4 # Doel: Script voor het maken van
Nadere informatieTestplan. Versie 1 28-10-2004
Testplan Versie 1 28-10-2004 Groep 40 Naam Stud. nr. Vakken Jarry Claessen 0508757 SE, C2 Sebastian Groeneveld 0433350 SE, C2 Mark de Haas 0481832 SE Jeroen van Steenbergen 0515103 SE, C2 1 Unittestplan
Nadere informatieDatastructuren: stapels, rijen en binaire bomen
Programmeermethoden : stapels, rijen en binaire bomen Walter Kosters week 12: 26 30 november 2018 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 en Vierde programmeeropgave Othello programmeren we als volgt:
Nadere informatieOpgaven Registers Concurrency, 29 nov 2018, Werkgroep.
Opgaven Registers Concurrency, 29 nov 2018, Werkgroep. Gebruik deze opgaven om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven. 1. Safe Integer: Van een
Nadere informatieEerste Toets Concurrency 20 december 2018, , Educ-β.
Eerste Toets Concurrency 20 december 2018, 11.00 13.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieStapelgeheugen. Processoren 6 maart 2012
Stapelgeheugen Processoren 6 maart 2012 Programma van komende week 7 maart 8.45: extra vragenuur over HADES 13 maart 8.45: hoorcollege vervalt, maar werkcolleges vinden plaats. Stapelgeheugen Tanenbaum
Nadere informatieProgrammeermethoden NA. Week 4: Files & Functies
Programmeermethoden NA Week 4: Files & Functies Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Vorige week: Controlestructuren # gegeven # 0
Nadere informatieProject Software Engineering XML parser: Parsen van een xml CD catalogus
Project Software Engineering XML parser: Parsen van een xml CD catalogus Brent van Bladel brent.vanbladel@uantwerpen.be February 16, 2017 XML (Extensible Markup Language) is een taal waarmee we op een
Nadere informatieUitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, 13.30 15.30 uur
Uitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, 13.30 15.30 uur 1. deze opgave telt voor 30% van het totaal. Schrijf een compleet programma, dat door de gebruiker vanaf
Nadere informatieWerkbladen voor Arduino workshop 1
De aansluitingen van de Arduino Uno Werkbladen voor Arduino workshop 1 Arduino Arduino is een open-source ontwikkelbord, waarmee het eenvoudig is om informatica aan fysieke objecten te koppelen. Je kunt
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Functies Vorige week bekeken we functies: def
Nadere informatieComputerarchitectuur en netwerken. TCP congestion control Netwerklaag
Computerarchitectuur en netwerken 10 TCP congestion control Netwerklaag Lennart Herlaar 6 oktober 2015 Inhoud Congestiebeheer TCP congestiebeheer Netwerk laag principes van de netwerklaag IP adressen IP
Nadere informatieKleine cursus PHP5. Auteur: Raymond Moesker
Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven
Nadere informatieEen.NET-besturingssysteemtoolkit. Discovering Cosmos. Sijmen J. Mulder
Een.NET-besturingssysteemtoolkit Discovering Cosmos Sijmen J. Mulder Agenda Boek 1 Cosmos: a very short introduction Boek 2 Modern Operating Systems Pauze Boek 3 The Design and Implementation of the Cosmos
Nadere informatieDatatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.
Algemeen C# Variabele Een variabele is een willekeurige waarde die word opgeslagen. Een variabele heeft altijd een datetype ( De soort waarde die een variabele bevat). Datatypes Een datatype is de sort
Nadere informatieGebruiker afschermen van de hardware
Device driver 1 Gebruiker afschermen van de hardware Prog1 Prog2 System calls/ API Operating Systeem Device drivers Hardware 2 Introductie Een device driver is een computer programma dat direct communiceert
Nadere informatieTI-2720 Operating System Concepten. 21 januari 2013, uur. docent: H.J. Sips. Dit is een tentamen met 9 open vragen
TECHNISCHE UNIVERSITEIT DELFT Faculteit EWI, Afdeling SCT Sectie Parallelle en Gedistribueerde Systemen Ty Delft TI-2720 Operating System Concepten 21 januari 2013, 14.00-17.00 uur. docent: H.J. Sips Dit
Nadere informatieUitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, uur
Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, 11.00-13.00 uur 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan
Nadere informatiestudievaardigheden studentassistent: Alice de Vries alice-de-vries@hotmail werkcollege / practicum
studievaardigheden studentassistent: Alice de Vries alice-de-vries@hotmail werkcollege / practicum Hendrik Jan Hoogeboom h.j.hoogeboom@liacs.leidenuniv paleistuin (computers) tijd 10.45 15.00 studievaardigheden
Nadere informatieInhoudsopgave. Optimalisatie van de mmips. Forwarding optie 1. Design flow. implementation
2 Inhoudsopgave Optimalisatie van de mmips pc Sander Stuijk Veel gestelde vragen Hoe moet ik forwarding implementeren? Hoe moet ik clipping implementeren? Waarom is mijn simulatie zo traag? Hoe kan ik
Nadere informatieDE INTERACTIEVE SHELL
Hoofdstuk2 De interactieve shell 6 Hoofdstuk 2 DE INTERACTIEVE SHELL In dit hoofdstuk behandelen we: Integers (gehele getallen) en getallen met drijvende komma Expressies Waarden Operatoren Het evalueren
Nadere informatieComputerarchitectuur en netwerken. Inleiding NETWERKEN
Computerarchitectuur en netwerken 7 Inleiding NETWERKEN Lennart Herlaar 22 september 25 Inhoud Hoe gaat de informatie door het netwerk heen? Algemene principes Protocollen Connecties virtuele circuits
Nadere informatieBijlage 8. Testprogramma brandreactiemodulen LBK
Bijlage 8 Testprogramma brandreactiemodulen LBK INHOUDSOPGAVE 1 Algemeen... 1 1.1 Introductie... 1 2 Algemene Setup Instructies... 2 2.1 Setup instructies... 2 2.2 Programma start... 2 3 Configureren...
Nadere informatieBRP-BZM Use Case Realisations Guidelines
BRP-BZM Use Case Realisations Guidelines Versie 2.0 02-09-2011 Definitief Versiehistorie Datum Versie Auteur 23-12-2010 0.1 Eerste versie R.F. Schaaf 04-01-2011 1.0 Feedback verwerkt R. Schaaf en D. Geluk
Nadere informatieGeheugen en Adressering. Binding. Binding (2) Logische en Fysieke adresruimten. relocatie register. Dynamic loading
Geheugen en Adressering Binding Geheugen (main memory, primary storage) is noodzakelijk voor de uitvoering van programma's. te beschouwen als array van adresseerbare bytes (of woorden). verschillende processen
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Tentamen Programmeren in C (EE1400) 5 april 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code
Nadere informatieOpdracht 7a. Applicatiebouw 2014/2015
Applicatiebouw 2014/2015 Opdracht 7a Inhoud Applicatiebouw op dag 7 College In het college wordt oa. overerving behandeld, waarmee je uit een bestaande klasse een nieuwe andere klasse kan maken. Ook zijn
Nadere informatieEvenwijdig programmeren - communicatie tussen processen
LinuxFocus article number 281 http://linuxfocus.org Evenwijdig programmeren - communicatie tussen processen door Leonardo Giordani Over de auteur: Is student aan de faculteit
Nadere informatieVoorblad tentamen ENG
Voorblad tentamen ENG 015-016 Naam student: Studentnr: Klas: Cijfer: Dit voorblad en indien aangegeven overige opgavenbladen, moeten voorzien zijn van naam, studentnummer en klas. Controleer dit tentamen
Nadere informatieArduino Workshop 1 Zuid-Limburg
Arduino Workshop 1 Zuid-Limburg Leren door doen Mei 2016 - slides voor Arduino workshop 1 v2.5 Zuid-Limburg PA3CZS, PA0FOT, ON4CDU, PE1EAM 1 Workshop 1 Workshop 1 concentreert op kennismaking en eenvoudige
Nadere informatieReal-Time Systems (RTSYST)
Real-Time Systems (RTSYST) Week 2 Process/Thread states ready running Wait for I/O or I/O or completion blocked / sleeping Scheduler = deel van OS dat de toestanden van processen/threads bepaald. OS gebruikt
Nadere informatieINHOUDSOPGAVE. Over de auteur, de illustrator en de technische redacteuren 13
INHOUDSOPGAVE Over de auteur, de illustrator en de technische redacteuren 13 Dankwoord 14 Inleiding 15 Waarom Python?... 16 Hoe je code leert schrijven... 16 Voor wie is dit boek... 17 Wat staat er in
Nadere informatieObjectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden.
Herhaling Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden. De basisbouwsteen is het object; een geïntegreerde eenheid van data en operaties werkend op deze
Nadere informatieAPPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts
APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN Onderdeel van SmartProducts INHOUD COLLEGE 3 Scope van variabelen {3.9} Class ontwerpen en maken,
Nadere informatieEE1400: Programmeren in C BSc. EE, 1e jaar, , 4e college
EE1400: Programmeren in C BSc. EE, 1e jaar, 2012-2013, 4e college Arjan van Genderen, Computer Engineering 11-12-2012 Delft University of Technology Challenge the future Mededelingen Voortgangstoets: Woensdagmiddag
Nadere informatieRCL Arduino Workshop 1
RCL Arduino Workshop 1 Leren door doen april 2015 - slides voor RCL Arduino workshop 1 ON4CDU & ON8VQ Workshop Leren door doen Werken in een groep Beperkte tijd Alleen essentiele vragen stellen Thuis oefenen
Nadere informatieProgrammeren in C++ Efficiënte zoekfunctie in een boek
Examen Software Ontwikkeling I 2e Bachelor Informatica Faculteit Wetenschappen Academiejaar 2010-2011 21 januari, 2011 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief de hints/opmerkingen)!
Nadere informatieI BASH. Johan Adriaans johan.adriaans@gmail.com
I BASH Johan Adriaans johan.adriaans@gmail.com Wat wordt er behandeld Waarom? Hello world? Rechtensysteem Shell expansion Control structures History Input/output redirection Powertools Waarom BASH? BASH
Nadere informatieUniversiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren
Universiteit van Amsterdam FNWI Voorbeeld van tussentoets Inleiding programmeren Opgave 1: Wat is de uitvoer van dit programma? public class Opgave { static int i = 0 ; static int j = 1 ; int i = 1 ; int
Nadere informatie