Algemene Informaticale informatie

25-03-2010
Klik hier om een link te hebben waarmee u dit artikel later terug kunt lezen.M3H2


1 - Besturingssystemen voor de pc     © Instruct
  






















Over de functie van een besturingssysteem:
www.howstuffworks.com

Artikelen van Webwereld: 
"Apple domineert huiskamer in 2013" 
"Besturingssysteem blok aan het been in multicore-tijdperk"

Artikel van Infoworld: 
"10 waardeloze OS'en"

Het besturingssysteem is verantwoordelijk voor de communicatie met de hardware (apparatuur). Het vormt als het ware een schil tussen de applicatiesoftware en de hardware. Zo zet het besturingssysteem gegevens die van applicaties afkomstig zijn om in gegevens die door randapparaten verwerkt kunnen worden. Ook zorgt het besturingssysteem voor de communicatie tussen de onderdelen van de computer. Veel mensen gebruiken overigens de Engelse term voor besturingssysteem: operating system, ook wel afgekort tot OS.

Het komt ook voor dat de gebruiker rechtstreeks met het besturingssysteem communiceert. Dit is het geval als je een programma start via het bureaublad, of als je via Windows Verkenner bestanden kopieert of verwijdert.
Tijdens het opstarten van de computer wordt het besturingssysteem in het interne geheugen geladen. Applicatieprogramma’s maken gebruik van het besturingssysteem bij alle taken die ze moeten uitvoeren. Ze moeten dan ook afgestemd zijn op het desbetreffende besturingssysteem om daaronder te kunnen werken. Een applicatie voor een Windows-computer zal dus niet zomaar werken op een computer met Mac OS, het besturingssysteem van de Apple Macintosh.

Functies van besturingssystemen
De functies van besturingssystemen kunnen in drie taakgebieden ingedeeld worden:

Beheer van hulpbronnen 
Hierbij moet je in de eerste plaats denken aan het beheer en gebruik van hardware-onderdelen en geheugen. Voor deze taak beschikt het besturingssysteem over enkele afzonderlijke programma’s, waar gebruikers normaal gesproken niet mee in aanraking komen. Een van deze programmaatjes houdt bijvoorbeeld bij waar in het geheugen gegevens opgeslagen zijn.
Bestandsbeheer 
Dit omvat het beheer van data- en programmabestanden. Het besturingssysteem heeft ook voor deze taak enkele aparte programma’s, bijvoorbeeld voor het maken, verwijderen en benaderen van gegevens.
Taakbeheer
De programma’s voor taakbeheer regelen de juiste uitvoering van de verschillende taken van de computer. Denk hierbij aan het starten van een programma en het met meer dan één programma werken (multitasking). In verband met dit laatste zorgen de programma’s van taakbeheer ervoor dat de CVE zijn aandacht eerlijk over de diverse taken verdeelt. Zo wordt er aan iedere taak telkens korte CVE-tijd toegewezen.
In Taakbeheer van Microsoft Windows is goed te zien welke programma’s actief zijn op een bepaald moment.
 
  Driver

Speciale driver-pagina:
drivers.startpagina.nl



Wil het besturingssysteem deze taken - met name taak 1 - kunnen uitvoeren, dan moeten de juiste drivers geïnstalleerd zijn. Eendriver is een stukje software dat de schakel vormt tussen het besturingssysteem en een randapparaat. De driver zorgt ervoor dat het besturingssysteem de hardware kan aansturen.

In besturingssystemen zijn verschillende drivers ingebouwd. Het kan echter voorkomen dat een aangesloten apparaat niet door het besturingssysteem herkend wordt. In dat geval kan een nieuwe driver gedownload worden, hetzij van de website van Microsoft, hetzij van de site van de hardwareleverancier.
Op de website van HP kun je allerlei printerdrivers downloaden, in dit geval die voor Windows XP.
 
  Microsoft Windows

























 

Over Windows Vista:
www.howstuffworks.com

Speciale Vista-pagina:
windowsvista.startpagina.nl

Artikelen van Infoworld: 
"Leven na Windows" 
"Windows 7: 4 zegeningen, 4 drama's"




Het besturingssysteem dat wereldwijd het meest gebruikt wordt, is Windows van Microsoft. Omdat dit zo’n veelgebruikt programma is, staan we hier wat langer bij stil.

De eerste pc’s – in de jaren tachtig – beschikten over een besturingssysteem dat opdrachtgestuurd was. Dit hield in dat de gebruiker opdrachten moest intypen om de computer bepaalde dingen te laten doen. Elke typefout leidde tot de foutmelding ‘Opdracht of bestandsnaam onjuist’. Wat er aan de opdracht mankeerde, moest de gebruiker zelf maar uitzoeken.

Misschien heb je wel eens van MS-DOS gehoord: dat was het opdrachtgestuurde besturingssysteem dat op de meeste pc’s gebruikt werd. Om MS-DOS gebruikersvriendelijker te maken, werd een grafische gebruikersinterface ontwikkeld. Deze gaf men de naam Windows. De eerste versies van Windows (tot en met Windows 3.11) waren geen losstaande besturingssystemen, maar slechts een grafische schil rond MS-DOS. Windows werkte dan ook alleen op systemen waarop MS-DOS geïnstalleerd was.

MS-DOS is de afkorting van MicroSoft Disk Operating System. Het is in de jaren zeventig ontwikkeld door Bill Gates en een aantal van zijn collega’s en kan worden beschouwd als een van de beginsuccessen van Microsoft.
Een scherm vol MS-DOS-uitvoer.
Versies van Windows
In 1995 kwam Microsoft met Windows 95. Dat was de eerste versie die op een ‘leeg’ systeem kon worden geïnstalleerd. Dat wil niet zeggen dat MS-DOS daarmee verdween; bij Windows 95 en ook bij de latere versies Windows 98 en Windows Me (Millennium Editie) werd een uitgeklede versie van MS-DOS geleverd. Dit was om twee redenen noodzakelijk:

Veel software (bijvoorbeeld spelletjes) werkte wel met DOS maar niet met Windows.
Als Windows vanwege een of ander probleem niet meer werkte, deed DOS het vaak nog wel. Je kon dan de computer opstarten in MS-DOS en het probleem oplossen.
Pas in 2001 kwam Microsoft met een ‘zelfstandig werkende’ Windows-versie: XP (van eXPerience). Deze was gebaseerd op een van de netwerkversies van Windows, die verderop worden besproken. Hoewel het tot halverwege 2008 leverbaar was, werd Windows XP in 2007 opgevolgd door Windows Vista en in 2009 door Windows 7. Microsoft heeft ook een compacte versie van Windows voor handheld-computers ontwikkeld: Windows CE.

Bureaublad
Het kenmerk van Windows is dus dat het gebruik maakt van een grafische gebruikersinterface, waarbij knoppen en pictogrammen een grote rol spelen. Het beginscherm van Windows is standaard het bureaublad. Hierop vind je meestal een aantal pictogrammen waarmee je snel toepassingsprogramma’s kunt starten. Deze pictogrammen worden snelkoppelingen genoemd.

Verder bevat het beginscherm onder andere de knop Start, waarmee je allerlei functies van de computer kunt starten en – anders dan de naam doet vermoeden – ook de computer op de juiste manier uitzet.

Het bureaublad van Windows Vista.
Een besturingssysteem zorgt voor een zogeheten softwareplatform: een ‘podium’ waarop toepassingsprogramma’s draaien. Zoals gezegd moeten de toepassingsprogramma’s zijn geschreven voor een bepaald besturingssysteem. De keuze voor een besturingssysteem bepaalt dus voor een belangrijk deel welke programma’s bruikbaar zijn. Vrijwel alle programma’s zijn echter zo gemaakt dat ze onder Windows kunnen draaien, met uitzondering van zeer specialistische programma’s of bepaalde grafische software.


Windows Verkenner
We hebben al even vermeld dat er een mogelijkheid is om rechtstreeks met het besturingssysteem te communiceren, dat gebeurt via Windows Verkenner. Verkenner is het onderdeel van Windows dat de gebruiker in staat stelt om bestanden en mappen te verplaatsen, kopiëren, verwijderen en bekijken.

Om bestanden overzichtelijk op een harde schijf op te slaan, is het gebruikelijk dat je ze in mappen onderbrengt. Het Engelse woord voor map is folder. Je komt ook wel het woord directory tegen: deze term werd in DOS gebruikt voor datgene wat Microsoft later ‘map’ is gaan noemen.
Het scherm van Windows Verkenner.
 
  Overige besturingssystemen voor de pc
 

Op het overgrote deel van de pc’s tref je weliswaar Microsoft Windows aan, maar dat wil niet zeggen dat dit het enige besturingssysteem is. Een ander besturingssysteem is Linux. 

 
  Besturingssysteem voor de Apple Macintosh



Informatie over Mac OS X: 
www.apple.nl

Apple in het onderwijs: 
www.apple.nl

De Apple Macintosh is een computer die in grafische bedrijven veel gebruikt wordt, bijvoorbeeld voor het opmaken van boeken en tijdschriften en het verzorgen van folders en brochures. De Mac was begin jaren tachtig de eerste computer die over een GUI beschikte en met de muis bediend werd. Het besturingssysteem van de Mac heet Mac OS; momenteel is de versie X (‘ten’) gangbaar.

Omdat de Apple Macintosh de standaard is in de grafische wereld, waren de DTP-pakketten PageMaker en QuarkXPress oorspronkelijk alleen voor de Mac beschikbaar. Er bestaan echter al geruime tijd Windows-versies.
 
 



 



2 - Besturingssystemen voor netwerken, mainframes en mini’s     © Instruct
 
Het wezen van een mainframe, minicomputer en netwerk is dat er meerdere gebruikers actief kunnen zijn. Het zal duidelijk zijn dat dit speciale eisen stelt aan het besturingssysteem, bij zowel hulpbronnenbeheer als bestandsbeheer en taakbeheer.

In samenhang met dergelijke besturingssystemen speelt niet alleen het begrip multitasking een belangrijke rol, maar ook de volgende termen:

Multi-user
Dit houdt in dat twee of meer gebruikers tegelijkertijd de computer kunnen gebruiken. Sommige besturingssystemen, zoals OpenVMS, zijn in staat om honderden of duizenden gebruikers gelijktijdig van dienst te zijn.
Multiprocessing
Dit wil zeggen dat één (speciaal hiervoor ontworpen!) programma op hetzelfde moment op meer dan één processor kan draaien. Hierdoor kan parallelle verwerking plaatsvinden, wat de performance van het totale systeem enorm ten goede komt.
Multithreading
Een thread is een onderdeel van een programma, dat zelfstandig uitgevoerd kan worden. Multithreading wil dus zeggen dat meerdere threads gelijktijdig uitgevoerd worden. Je browser is een voorbeeld van een programma met multithreading-mogelijkheden: terwijl de figuren nog gedownload worden kun je al scrollen.
Enkele besturingssystemen die je bij multi-user systemen kunt tegenkomen zijn:

UNIX
Linux
Novell NetWare
Windows NT/2000/2003/2008
Oudere netwerkbesturingssystemen zijn MVS en VAX VMS.
 
  UNIX

Van alles over UNIX:
www.unix.org

UNIX is een multi-user, multitasking besturingssysteem dat aan het begin van de jaren zeventig werd ontwikkeld door Bell Labs. UNIX werd door een handjevol programmeurs gemaakt met het doel een klein, flexibel systeem te ontwikkelen, dat uitsluitend gebruikt zou worden door programmeurs.

Hoewel het door de jaren heen aanzienlijk gerijpt is, verloochent UNIX zijn oorsprong niet. De bediening vindt plaats via mysterieuze opdrachten en er is totaal geen sprake van enige gebruikersvriendelijkheid. Deze gebreken worden langzamerhand onderkend, vandaar dat er toch iets van een grafische gebruikersinterface ontwikkeld is. Deze heeft men X Window (zonder s!) genoemd.

Bijzonder aan UNIX is dat het besturingssysteem lange tijd in de vorm van broncode beschikbaar is gesteld. Iedereen kon hiervan een kopie krijgen en die aanpassen aan zijn eigen behoeften, geheel in lijn met de open source principes. Daardoor ontstonden er echter tientallen verschillende versies van UNIX. Eén hiervan is Linux (zie hierna).

Door zijn open source karakter, kracht en stabiliteit is UNIX een belangrijk netwerkbesturingssysteem geworden. Op pc’s werd het nauwelijks gebruikt, maar de opkomst van Linux zorgt voor een belangrijke opleving.

 
  Linux





Informatie over Linux:
www.nl.linux.org

De website van Linux Magazine: www.linuxmag.nl 

Artikel van Infoworld: 
"Linux - 10 argumenten voor én tegen"

Artikel van Webwereld: 
"Linux-kernelveteraan stapt op" 


De belangrijkste onderdelen van de UNIX-variant Linux zijn ontwikkeld door de Fin Linus Torvalds. Datgene wat hij had geschreven, stelde hij in 1991 via het internet als freeware ter beschikking. De voorwaarde hierbij was wel dat anderen de gewijzigde code ook weer via het internet beschikbaar zouden stellen.

Tux, de pinguïn – en het handelsmerk – van Linux.
Op deze wijze heeft Linux zich ontwikkeld tot een betrouwbaar besturingssysteem voor pc’s en (kleine) netwerken. Bedrijven, en zelfs sommige overheidsinstanties, maken er steeds meer gebruik van. In veel gevallen is men echter een beetje huiverig. Kan iets wat door hobbyisten ontwikkeld is, wel goed zijn? En hoe zit het met de ondersteuning?


De sites van leveranciers van de genoemde distributies:
www.novell.com
www.redhat.com
www.debian.com
www.mandriva.com 



Doordat de ontwikkeling van Linux in de loop der jaren verschillende richtingen uit gegaan is, bestaan er verschillende zogeheten distributies van Linux. Die zijn lang niet allemaal gratis. Voorbeelden zijn:

SuSE (overgenomen door Novell)
RedHat
Debian
Mandriva (voorheen Mandrake)
Ubuntu
 
  Novell NetWare

Het netwerkbesturingssysteem Novell NetWare heeft veel terrein prijs moeten geven aan Windows, hoewel deskundigen van mening zijn dat NetWare Windows verslaat als het gaat om beveiliging.

Novell NetWare biedt de mogelijkheid om een netwerk eenvoudig te beheren en maakt daarbij gebruik van een techniek die bekend staat als NDS (Novell Directory Services). Een netwerkbeheerder kan op basis van een database met gebruikers op eenvoudige wijze gebruikers toevoegen, hun rechten veranderen en de gemeenschappelijke resources beheren.

De nieuwste versie van NetWare, op de markt sinds 2004, heet Open Enterprise Server.

 
  Windows NT/2000/2003/2008
 

Naast de bestaande versie van Windows lanceerde Microsoft in 1993 een ander besturingssysteem: Windows NT (Windows New Technology). Dit netwerkbesturingssysteem is speciaal bedoeld voor lokale netwerken (LAN’s). Het programma kent een versie voor servers en één voor werkstations. In de loop der jaren zijn enkele nieuwe versies op de markt gekomen. Windows Server 2008 is de meest recente versie.

Een LAN (Local Area Network) is een netwerk op kleine schaal, doorgaans bestaand uit een server en verschillende werkstations.
 
 



 



3 - Databasemanagementsystemen     © Instruct
DBMS
 DBMS








Artikel van Webwereld: 
"10 grootste fouten bij databaseontwikkeling"


Onder een databasemanagementsysteem (DBMS) wordt verstaan: software voor het opzetten, onderhouden en raadplegen van omvangrijke databases in netwerkomgevingen. Met een voorbeeld illustreren we dat zo’n multi-user programma een tamelijk complexe taak heeft.

Stel dat gebruiker A bezig is om een nieuwe klant toe te voegen aan de database van een bedrijf, terwijl gebruiker B een selectie uit de database wil maken. In zo’n geval is het belangrijk dat gebruiker B geen ‘vertekende’ gegevens krijgt als gevolg van het feit dat gebruiker A veranderingen aanbrengt in de database. Het aanbrengen van veranderingen noemen we overigens muteren.

Het DBMS bewaakt de juistheid en volledigheid van de gegevens en zorgt ervoor dat slechts één gebruiker tegelijk gegevens kan wijzigen. Het DBMS zorgt er ook voor dat verschillende gebruikersapplicaties toegang kunnen krijgen tot dezelfde database.

Voorbeeld: school
in een school maken verschillende afdelingen gebruik van dezelfde database met leerlinggegevens. De administratie heeft ze voor verschillende doeleinden nodig de debiteurenadministratie voor het verzenden van rekeningen, en de docenten voor het voeren van de cijferadministratie. Het DBMS zorgt ervoor dat iedereen de gewenste informatie krijgt.

Het volgende schema verduidelijkt dit principe.

 

Het DBMS vormt een laag tussen de database en de verschillende gebruikersapplicaties.
Vraagtaal
Voor het opvragen van informatie beschikken veel DBMS’en over voorzieningen om eigen programma’s te ontwikkelen. Denk hierbij aan mogelijkheden om naar eigen behoefte rapporten en formulieren te genereren. De eindgebruiker kan via een vraagtaal onder meer selecties en overzichten samenstellen. De meeste DBMS’en hebben hiervoor de vraagtaalSQL ingebouwd.

Veelgebruikte databasemanagementsystemen voor mainframes zijn Oracle (van Oracle Corporation) en DB2 (van IBM).

Microsoft Access is niet zonder meer geschikt als DBMS voor netwerkgebruik. Op het gebied van beveiliging en synchronisatie kan het zich niet meten met bijvoorbeeld Oracle. Access wordt meer in de hobbysfeer gebruikt, bijvoorbeeld voor het aanleggen en bijhouden van databases voor (sport)verenigingen.


Systeemondersteuningsprogramma’s     © Instruct
Hulpprogramma's
 

Zoals uit de volgende figuur blijkt, bestaat de systeemsoftware niet alleen uit systeembeheerprogramma’s. Een tweede categorie vormen de systeemondersteuningsprogramma’s, waartoe onder meer de hulpprogramma’s oftewel utilities worden gerekend.


 Backups


Hulpprogramma’s zijn bedoeld voor het uitvoeren van heel specifieke taken met betrekking tot de werking en het beheer van de computer. 
Voorbeelden zijn programma’s om:

gegevens te converteren;
beschadigde bestanden te herstellen;
bestanden te comprimeren (inpakken, ‘zippen’) en weer te decomprimeren (uitpakken, ‘unzippen’);
een virusscan uit te voeren.

Defragmenteren is geen populaire bezigheid:
www.computeridee.nl






Een overzicht van allerlei handige utilities:
www.bootdisk.com
Artikel van Infoworld: 
"7 tips voor Data Recovery"


Bureau-accessoires
Sommige systeemondersteuningsprogramma’s worden meegeleverd met het besturingssysteem, bij de Bureau-accessoires. Een voorbeeld is Schijfdefragmentatie, het programma dat de harde schijf defragmenteert. Het zorgt ervoor dat bestanden weer zoveel mogelijk aaneengesloten op de harde schijf terechtkomen en dat komt de prestaties van het systeem ten goede.

Het defragmenteren van schijf C:.
Andere voorbeelden zijn:

Schijfopruiming (om bestanden te laten verwijderen en te comprimeren),
Geplande taken (om bepaalde taken periodiek te laten uitvoeren),
Back-up.


Systeemontwikkelingsprogramma’s     © Instruct
 
De laatste groep programma’s die tot de systeemsoftware gerekend wordt zijn de systeemontwikkelingsprogramma’s. Dit zijn programma’s die gebruikt worden bij de ontwikkeling van andere programma’s zoals maatwerk- en standaardsoftware. Belangrijke voorbeelden in deze categorie zijn programmeertalen en zogeheten CASE-tools of workbenches.

CASE staat voor Computer Aided Software Engineering. CASE-tools zijn specifieke gereedschappen die worden toegepast bij het ontwikkelen van software.

25-03-2010 om 22:11 geschreven door mankuiper  

0 1 2 3 4 5 - Gemiddelde waardering: 5/5 - (1 Stemmen)
Klik hier om een link te hebben waarmee u dit artikel later terug kunt lezen.M3H1
Softwarecategorieën     © Instruct

Artikel van Computable: 
"Software als product verdwijnt op de lange termijn" 

Het is gebruikelijk software in te delen in drie categorieën:

Systeemprogramma's
De systeemsoftware regelt en ondersteunt de werking van de computer. Een voorbeeld van dit soort software is het besturingssysteem Microsoft Windows.
Applicatieprogramma's
Met applicatiesoftware wordt programmatuur bedoeld die bestemd is voor de gebruiker. Je moet hierbij denken aan toepassingen voor alledaags gebruik op school, op het werk, thuis, enzovoort. Voorbeelden zijn programma’s voor tekstverwerking en presentaties.
Embedded software
Embedded software vind je overal om je heen, het zit in allerlei apparaten die we dagelijks gebruiken. Voorbeelden zijn wasmachines, auto’s, (mobiele) telefoons, thermostaten en afstandsbedieningen. Het is eigenlijk hardware en software ineen.
Tussen de computergebruiker, de applicatieprogrammatuur, systeemsoftware en hardware bestaat een relatie. Die kun je uitbeelden zoals in onderstaande figuur is gedaan.

De relatie gebruiker–toepassingssoftware–systeemsoftware–hardware.
Deze figuur geeft aan dat de computer meestal niet rechtstreeks met de gebruiker ‘communiceert’; hier zitten nog twee lagen tussen. De gebruiker ‘communiceert’ met de applicatie, de applicatie met het besturingssysteem en het besturingssysteem communiceert met de hardware.

De communicatie van de gebruiker met de applicatie verloopt vaak via een grafische gebruikersinterface.

Standaard- en specialistische software     © Instruct
Drie soorten

Informatie over een groot aantal softwareprogramma’s:
www.softwaregids.nl


Een computergebruiker kan pas zinvol met een computer werken als de computer applicatiesoftware bevat. Als je bijvoorbeeld een spreekbeurt uitwerkt op de computer, doe je dit met behulp van een applicatie (Microsoft Word of OpenOffice Impress bijvoorbeeld). Ook als je een mailtje verstuurt, maak je gebruik van een toepassingsprogramma (bijvoorbeeld Microsoft Outlook of bij webmail Mozilla Firefox).


Zoals in de figuur hierboven is te zien, wordt applicatiesoftware ingedeeld in drie soorten:

Standaardpakketten
Standaardpakketten zijn gemaakt voor gebruikers die allemaal ongeveer dezelfde wensen hebben. Een programma als Microsoft Word of StarOffice Writer bevat functies die vrijwel iedereen van pas komen bij het maken van documenten. Je kunt daarbij denken aan:
de mogelijkheid om tekst in te voeren
tekst vet te maken
lettertypen te veranderen, enzovoort
Standaardpakketten zijn dus door een leverancier – in dit geval respectievelijk Microsoft en Sun – gemaakt voor een grote groep gebruikers.
Programma's voor specifieke toepassingen
Anders ligt het bij programma’s voor specifieke toepassingen. Deze zijn bedoeld voor een specifieke groep gebruikers.
Als je naar de dokter gaat, worden tijdens het gesprek dat je hebt allerlei zaken in de computer ingevoerd. Deze informatie komt in je patiëntendossier, maar dat is niet het enige. Aan de hand van de ingevoerde gegevens kan de dokter een rekening sturen, een verwijsbrief voor een specialist maken, een recept voor een tubetje zalf uitschrijven (of zelfs rechtstreeks aan de apotheek zenden), aan de assistente laten weten dat ze een vervolgafspraak moet maken, enzovoort.
Het zal duidelijk zijn dat jij en ik niets hebben aan zo’n specialistisch pakket, dat bovendien vrij kostbaar is. Het is bedoeld voor een kleine groep ondernemers, en wordt over het algemeen ontwikkeld door een kleinere, maar gespecialiseerde softwareproducent.

Andere voorbeelden zijn:

een programma voor het beheren van een aandelenportefeuille
een programma voor de besturing van een robot/machine
een boekhoudpakket
een programma voor magazijnbeheer
Er bestaat zelfs speciale software voor fokkers van huisdieren: www.zooeasy.com!
Maatwerktoepassingen
Nog specialistischer toepassingen vind je in de groep maatwerksoftware. Hier gaat het meestal om grote bedrijven die opdracht geven tot het ontwikkelen van informatiesystemen voor bepaalde activiteiten.
Zo kan een uitgeverij bijvoorbeeld aan een systeemontwikkelingsbedrijf de opdracht geven om een ‘productievolgprogramma’ te ontwikkelen. Met zo’n programma kan men de productie van boeken van dag tot dag volgen, van manuscript via opgemaakte zetproef tot gedrukt en gebonden boek.
Heel grote concerns, bijvoorbeeld de belastingdienst en banken, beschikken hiervoor over speciale afdelingen, maar het komt ook vaak voor dat men de opdracht uitbesteedt aan bedrijven die hier hun specialiteit van hebben gemaakt. Steeds vaker zijn dit bedrijven in verre landen, waar de salarissen nog laag zijn, bijvoorbeeld India of Maleisië.

Deze activiteit wordt (informatie)systeemontwikkeling genoemd. Je komt ook wel de term software-engineering tegen.

 
1 - Licenties     © Instruct
Gebruiksrecht

Op de site van Microsoft wordt natuurlijk meer verteld over Microsoft-licenties:
www.microsoft.com 

In Nederland bestaan twijfels over de rechtsgeldigheid van dergelijke licentieovereenkomsten:
www.zibb.nl
Je kunt ook zoeken op 'shrink-wrap licentie' om meer over dit onderwerp te weten te komen.

Artikel van Infoworld: 
"Cloud computing zaait veel verwarring" 


 Regelgeving software


Als je een nieuwe broek koopt, is die na betaling van jou en mag je ermee doen wat je wilt. Zo werkt het niet met software. Als je een softwarepakket koopt, bijvoorbeeld de tekstverwerker Microsoft Word, koop je het recht om die te gebruiken (“het gebruiksrecht”). Je mag het pakket alleen op je eigen pc installeren. Kopiëren is niet toegestaan, je mag slechts een kopie maken die je in noodgevallen kunt gebruiken om het programma opnieuw te installeren, bijvoorbeeld na een harde-schijfcrash. Het is ook niet toegestaan om wijzigingen in de software aan te brengen.

Alles wat je wel en niet mag doen is neergelegd in een licentie-overeenkomst of gebruiksrechtovereenkomst, die bij elk pakket is bijgesloten. Als je het pakket installeert ga je expliciet akkoord met die overeenkomst; in een speciaal scherm wordt dat van je verlangd. Voor het gebruik in netwerken, waar op de aangesloten werkstations dezelfde pakketten worden geïnstalleerd, gelden speciale regelingen.

Een voorbeeld van een licentie-overeenkomst.
Bij het tegengaan van illegaal gebruik speelt ook het product-ID een rol. Bij de installatie moet je over het algemeen een unieke code invoeren, die alleen gebruikt kan worden door de eerste gebruiker van een legaal aangeschaft pakket.

 
 



 



2 - Freeware en shareware     © Instruct

Overzicht van allerlei gratis te downloaden programma’s:
freeware-internet.startpagina.nl
www.downloadfreeware.nl



Bepaalde standaardapplicaties kennen een afwijkende licentievorm. We noemen hier freeware en shareware.

Freeware is software die vrij, dat wil zeggen gratis, kan worden gebruikt. Deze programmatuur mag zonder belemmering worden gekopieerd en doorgegeven aan derden. Er mag niet aan worden gesleuteld, want er rust wel copyright op. Een heel bekend freeware-programma is Internet Explorer 7. Ook ZoneAlarm, een beveiligingsprogramma, is een voorbeeld van freeware. Verder zijn diverse games zijn gratis te downloaden en te gebruiken.
Voor shareware moet wel betaald worden. De gebruiker heeft vaak de gelegenheid om het programma gedurende enige tijd uit te proberen; daarna wordt betaling verlangd. Handy Recovery, een programma om verloren gegane bestanden te herstellen, is een voorbeeld van shareware, evenals het anti-spam-programma SpamEater Pro.
 
 



 



3 - Open source     © Instruct

Achtergronden van open source (Engelstalig):
www.howstuffworks.com

Artikelen van Computable: 
"Niemand doet honderd procent open source" 
"Opensource-leveranciers maken vuist" 
"BSA lobbyt voor aanpassing open standaarden" 

Artikelen van Computerworld: 
"Overstappen op open source: 5 tips" 
"5 misverstanden over open source"

Artikel van Webwereld: 
"Scholen: 'We doen genoeg aan open source'" 

Artikel van Infoworld: 
"Open source is niet heilig"

De standaardapplicaties die door bedrijven en de overheid gebruikt worden, zijn voor het grootste deel afkomstig van Microsoft. Veel mensen zijn ontevreden over de alleenheerschappij van dit grote softwareconcern. Zij vinden dat ICT-specialisten hun kennis moeten delen in plaats van fors munt te slaan uit een monopoliepositie.

Deze opvatting heeft geleid tot de ontwikkeling van open source software, dat wil zeggen software waarvan de broncode openbaar is. De broncode is in een programmeertaal geschreven door een programmeur; met deze code komt een gebruiker normaal gesproken niet in aanraking. Bij open source software heeft iedereen die de broncode begrijpt de mogelijkheid om aanpassingen aan te brengen en zo die code uit te breiden of te verbeteren. Dit gebeurt dan ook op grote schaal, bijvoorbeeld bij het besturingssysteem Linux of de browser Mozilla Firefox.

Om te voorkomen dat de broncode oneigenlijk wordt gebruikt geldt ook bij open source software een licentie-overeenkomst. Hierin wordt geregeld wat je met de broncode mag doen. Open source software is óf gratis óf veel goedkoper dan commerciële software.

De gebruikersinterface     © Instruct





















Ook voor de gebruikersvriendelijkheid van websites bestaan allerlei richtlijnen. De overheid heeft er zelfs een aparte site aan gewijd:
webrichtlijnen.overheid.nl

De gebruikersinterface is het onderdeel van een programma dat ‘communiceert’ met de gebruiker. In de beginjaren van de pc bestond zo’n interface vooral uit groene of oranje letters tegen een zwarte achtergrond. Er werd dan ook gesproken van een tekstgeoriënteerde interface. Van werkbalken, taakbalken en taakvensters was geen sprake.

WordPerfect
Het tekstverwerkingsprogramma WordPerfect, dat in de jaren tachtig enorm populair was, beschikte destijds over een vrijwel leeg scherm. Handelingen als vet maken van tekst, zoeken en vervangen, inspringen voerde men uit met de functietoetsen van het toetsenbord. Een muis was vrijwel overbodig.

Het documentscherm van WordPerfect 5.1; het liggende streepje linksbovenin is de cursor.
GUI
Op dit gebied is er echter veel veranderd. De interfaces van de meeste moderne programma’s zijn grafische interfaces: ze bevatten pictogrammen. Op deze symbooltjes hoef je maar te klikken om een bepaalde taak uit te laten voeren. Een grafische gebruikersinterface wordt ook wel eenGUI genoemd (spreek uit ‘goewie’).

Pictogrammen in Microsoft Word (boven) en Microsoft Excel (onder). De overeenkomsten zijn duidelijk.
De toepassingspakketten van één leverancier hebben interfaces die sterk op elkaar lijken. Het voordeel hiervan is dat je als gebruiker relatief snel met een nieuw programma uit de voeten kunt.

 
  WYSIWYG
 

De komst van de grafische gebruikersinterface maakte ook het principe vanWYSIWYG mogelijk. Dit wil zeggen dat de tekst die je op het scherm ziet, er op papier precies zo uit komt te zien – inclusief het gebruikte lettertype, vet en cursief en eventuele afbeeldingen. Bij de tekstgeoriënteerde interface was hiervan geen sprake; deze kon verschillende lettertypen niet afbeelden, laat staan plaatjes tonen.

Tekstverwerking     © Instruct

Informatie over de genoemde programma's is te vinden op:
www.microsoft.nl
nl.openoffice.org 










Voor veel computergebruikers is een pakket voor tekstverwerking de toepassing waarmee ze het meest werken, niet alleen op kantoor maar ook thuis. Een tekstverwerkingspakket is bedoeld voor het met behulp van de computer maken, opmaken en afdrukken van allerlei documenten. Hierbij kun je denken aan brieven, memo’s, rapporten, scripties, enzovoort.

De meeste gegevens worden ingevoerd via het toetsenbord, maar ook de muis is bij tekstverwerking een onmisbaar invoerapparaat. Deze heb je onder andere nodig om op de pictogrammen en knoppen te klikken. De opdrachten die je via de pictogrammen uitvoert, kun je vaak ook via het toetsenbord geven. Daarvoor bestaan toetsencombinaties. Vooral mensen met beperkt zicht of CANS-patiënten kunnen daar baat bij hebben.

Eenvoudige programma’s - denk aan WordPad oftewel Kladblok, dat met Windows wordt meegeleverd - bieden voor de meeste gebruikers voldoende mogelijkheden. Toch zijn de meer geavanceerde programma’s op het gebied van tekstverwerking populairder.

Bekende tekstverwerkers zijn:

Microsoft Word
OpenOffice Writer (open source)


Spreadsheets     © Instruct



Artikel van Infoworld: 
"10 briljante Excel-tips"


Informatie over de genoemde programma's is te vinden op:
www.microsoft.nl
nl.openoffice.org

Een andere veelgebruikte toepassing is een spreadsheetprogramma. Een spreadsheet, in het Nederlands wel rekenblad of werkblad genoemd, is een elektronisch rekenvel waarop je in rijen (horizontaal) en kolommen (verticaal) gegevens kunt invoeren. Een groot deel van de gegevens bestaat uit getallen, waarmee gerekend kan worden. De berekeningen zijn gebaseerd op formules, die volgens vaststaande regels worden ingevoerd in bepaalde gedeelten van het werkblad.

Kolommen worden in spreadsheetprogramma’s aangeduid met een letter en rijen met een getal. Het snijpunt van een rij en kolom wordt een cel genoemd. De naam van een cel bestaat uit de kolomletter en het rijcijfer, bijvoorbeeld K42 of T8.
Voordeel
Het grote voordeel van een spreadsheet is dat een verandering in de getallen meteen terug te zien is in de nieuwe uitkomsten van de berekeningen. Stel je voor dat je in bepaalde cellen prijzen van artikelen exclusief btw hebt ingevoerd, in één cel het gebruikelijke btw-percentage en in andere cellen formules om de prijs inclusief btw te berekenen. Als nu het btw-percentage verandert, hoef je dat nieuwe percentage alleen maar in te voeren in die ene cel. Het programma rekent dan onmiddellijk alle nieuwe prijzen uit.

Deze handige functie geeft de mogelijkheid om zogenoemde ‘wat…als’-analyses uit te voeren. Dit houdt in dat je gemakkelijk aan het programma kunt ‘vragen’ wat er met je winstcijfers gebeurt als je je marketingbudget met 3% verhoogt. Of als je een dure kracht aanneemt. Of als je een extra bedrijfswagen aanschaft.

 
  Grafieken
 

Ook prettig is dat je op basis van de cijfers uit het werkblad gemakkelijk diverse soorten grafieken op het scherm kunt zetten, waarmee de resultaten visueel ondersteund kunnen worden.

Een spreadsheet in Microsoft Excel.
Voorbeelden van spreadsheetprogramma’s zijn:

Microsoft Excel
OpenOffice Calc (open source)

Presentatie     © Instruct

Artikelen van Infoworld: 
"Dramatische PowerPoint-slides" 
"Presenteren zonder PowerPoint"



Informatie over de genoemde programma's is te vinden op:
www.microsoft.nl
nl.openoffice.org 

Een presentatiepakket biedt de mogelijkheid om elektronische diashows te verzorgen bij presentaties. Meestal gebruikt men hiervoor een (laptop)computer en een beamer of een automatisch afspelende presentatie op een stand van een beurs.

Op de dia’s kun je allerlei informatie kwijt, waaronder afbeeldingen en grafieken. Daarbij kun je een mooie achtergrond opnemen, die bijvoorbeeld de huisstijl van het bedrijf weerspiegelt. Grafieken zijn gemakkelijk over te nemen uit een spreadsheetprogramma.

Voorbeelden van presentatiepakketten zijn:

Microsoft PowerPoint
OpenOffice Impress (open source)


Databases     © Instruct
 
Met een databasepakket kan iedere computergebruiker een database aanleggen en hieruit gegevens sorteren en selecteren. Een databasebestand kan gegevens uit de privé-sfeer bevatten, zoals je cd’s of de namen, adressen en telefoonnummers van je vrienden en vriendinnen.

Natuurlijk wordt ook in het bedrijfsleven op grote schaal gebruik gemaakt van databases:

Een garagebedrijf heeft een database van alle onderdelen en van alle tweedehands auto’s die men in de verkoop heeft.
Een online computershop heeft ‘achter’ zijn website een database met de hele voorraad en de klantgegevens, zodat je na inloggen gelijk herkend wordt en je je bestelgeschiedenis op het scherm kunt krijgen.
Een dierenartsenpraktijk heeft een database met alle klantgegevens en met alle medicijnen die men verkoopt
Een school heeft een database met alle leerlinggegevens en de bijbehorende cijfers.
Het meest gebruikte databaseprogramma is Microsoft Access. Ook de open source applicaties MySQL en Base

Overige applicatiesoftware     © Instruct
Games

Enkele gamesites:
www.games.com
www.spelpunt.nl
www.gamerszone.nl



Artikel van Computer Idee: 
"Videogames creëren geen moordenaars"


Het aantal computergames is niet te tellen. Er zitten echte klassiekers tussen, maar er zijn er ook die snel opkomen en weer verdwijnen. Sommige games zijn bedoeld om door één persoon gespeeld worden; andere kun je ook met twee of meer mensen spelen, bijvoorbeeld via het internet.

Spelletjes zijn er al voor heel jonge kinderen. Vaak hebben die programma’s een educatief tintje. Voor oudere kinderen en volwassenen is de keus helemaal groot. Je kunt diverse categorieën onderscheiden, zoals: actiespellen, adventures, simulaties, wargames en denkspellen.

Op de website www.gamez.nl, vind je veel informatie over computergames.
 
  Educatieve software
 

Naast programma’s die bedoeld zijn voor entertainment bestaat er ook software waarmee je iets kunt leren: de educatieve software. Complete taalcursussen worden digitaal aangeboden, evenals typecursussen, EHBO-cursussen en cursussen waarmee je de theorie van het rij-examen onder de knie krijgt. Het is zelfs mogelijk om via de computer te leren golfen.

 
  Desktop Publishing (DTP)

Informatie over de genoemde programma's is onder andere te vinden op:
www.microsoft.nl
www.adobe.com
www.quark.com


Een speciaal soort tekstverwerkingssoftware staat bekend onder de naam desktop publishing. Hiermee worden professionele programma’s voor het opmaken van teksten bedoeld. Deze bezitten nog veel meer layout-mogelijkheden dan de gewone tekstverwerkers. In de grafische wereld gebruikt men ze voor het maken van bijvoorbeeld folders, tijdschriften en boeken.

Bekende namen in dit verband zijn:

Adobe InDesign
QuarkXPress
Voor de ‘gewone’ computergebruiker is Microsoft Publisher verkrijgbaar.
 
  Tekenpakket

Een grote verzameling te downloaden afbeeldingen:
cliparts.startpagina.nl
www.microsoft.nl

Informatie over de genoemde programma's is onder andere te vinden op:
www.microsoft.nl
www.adobe.com
www.corel.com


Voor grafisch ontwerpers, maar ook voor de thuisgebruiker, zijn er diverse pakketten waarmee je zelf afbeeldingen kunt tekenen. Deze tekenpakketten bieden ook vaak een hele reeks kant-en-klare afbeeldingen, die je mag gebruiken zonder dat je daarvoor hoeft te betalen. Dit wordt wel clipart genoemd.

Voorbeelden van tekenpakketten zijn Paint Shop Pro, CorelDRAW en Adobe Illustrator. Microsoft Visio is bedoeld voor het tekenen van schema’s, diagrammen en overzichten.

Tussen de Bureau-accessoires van Microsoft Windows tref je Paint aan. Ook hiermee kun je eenvoudige afbeeldingen maken. Bij Windows levert Microsoft ook een beperkte galerie met cliparts.
 
  Beeldbewerking


Informatie over de genoemde programma's is onder andere te vinden op:
download.chip.eu (Picasa)
download.chip.eu (PhotoFiltre)
www.adobe.com
www.corel.com 


Met een gebrekkige foto hoef je geen genoegen te nemen. Dankzij de mogelijkheden van beeldbewerkingssoftware kun je rode ogen, moedervlekken, storende achtergronden, grijze luchten en krassen feilloos wegwerken. Incomplete klassenfoto’s zijn ook geen probleem meer: een leerling die afwezig was op de dag dat de foto werd gemaakt, kan achteraf moeiteloos toegevoegd worden.

Een foto die bewerkt is met beeldbewerkingssoftware.
Pakketten die hiervoor veel gebruikt worden, zijn Adobe Photoshop, Microsoft Photodraw en Paint Shop Pro. Picasa en PhotoFiltre zijn gratis alternatieven.

 
  Webbrowsers

Download hier de nieuwste versie van Firefox:
www.mozilla-europe.org

Artikel van Computer Idee: 
"Google Chrome-browser nu op derde plaats"

Artikel van Computer Idee: 
"En de onveiligste browser is..." 

Artikel van ZDNet: 
"Populaire oude browser moet naar de stort"


Zoals je waarschijnlijk wel weet, heb je een webbrowser nodig om over het web te surfen. De populairste webbrowsers zijn:

Microsoft Internet Explorer
Mozilla Firefox
Google Chrome
Internet Explorer wordt meegeleverd met Windows. Mozilla Firefox en Google Chrome zijn open source browsers, die hun populariteit onder andere danken aan het feit dat velen Internet Explorer onveilig vinden. Zij hebben het idee dat Firefox en Chrome minder gevoelig zijn voor spyware en virussen dan IE.
Het logo van de browser Mozilla Firefox.
 
  Webpublishing

Informatie over de genoemde programma's is onder andere te vinden op:
www.microsoft.nl
www.adobe.com 


In de begintijd van het World Wide Web werd het maken van websites overgelaten aan de professionals. Zij beheersten HTML en konden met behulp van deze – niet altijd eenvoudige – opmaaktaal mooie websites ontwikkelen.

Tegenwoordig bestaan er echter veel gebruikersvriendelijker manieren voor het maken van websites. Diverse softwareproducenten hebben speciale programma’s hiervoor ontwikkeld. Hierin kun je eenvoudig aan geven wat je wilt, volgens het principe van WYSIWYG, en het programma zorgt er vervolgens voor dat alles automatisch wordt omgezet naar HTML-code.

HTML betekent HyperText Markup Language.
Veel pakketten uit de Office-suites (zie verderop) beschikken over mogelijkheden om documenten om te zetten naar HTML, zodat ze geschikt zijn voor webpublishing. Andere, meer specialistische, pakketten op dit gebied zijn:

Microsoft Expression Web Designer
Adobe Dreamweaver
Sommige pakketten zijn bedoeld voor speciale deelgebieden bij het maken van websites. Adobe Flash en Fireworks gebruik je bijvoorbeeld voor speciale effecten: animaties, graphics en geluid op een website.

Het ontwerpscherm van Flash, ook wel de ‘stage’ genoemd.
 
  Personal Information Manager
 

Dit soort programma’s, vaak afgekort tot PIM, wordt vooral gebruikt voor het bijhouden van agenda’s en het opstellen van planningen en taakoverzichten. Bovendien kun je er handig informatie over zakelijke en persoonlijke relaties mee beheren.

Bekende voorbeelden van dit soort programma’s zijn Microsoft Outlook en Lotus Organizer.

Tegenwoordig vervult de mobiele telefoon voor velen de functies zoals hier omschreven; denk aan de iPhone en de Blackberry.
 
  Groupware

Informatie over de genoemde programma's is onder andere te vinden op:
www.microsoft.nl
www.novell.com
www.ibm.nl



Software die mensen in staat stelt om met elkaar samen te werken binnen werkgroepen en teams, noemen we groupware. Deze programmatuur is er in soorten en maten. De meeste pakketten hebben echter een aantal voorzieningen gemeen: een groupware-pakket biedt mogelijkheden voor

e-mail
documentbeheer
televergaderen
gedeelde agenda's en
vaak een mechanisme waarmee de 'workflow' geregeld kan worden
Een groot voordeel van groupware is dat medewerkers tegelijkertijd en op een willekeurige plaats over dezelfde informatie kunnen beschikken.
Kenmerken
Samengevat zijn de kenmerken van groupware:

zeer flexibel in te zetten;
er is altijd een vorm van elektronische ondersteuning (databases, agenda’s);
geschikt voor een kantooromgeving.
De meest gebruikte groupwarepakketten zijn:

Lotus Notes
Microsoft Sharepoint
Novell GroupWise
 
  Office Suites



Artikel van Computer Idee: 
"OpenOffice.org 3.1 meer dan 20 miljoen keer gedownload'" 

Artikel van Automatisering Gids:
"Office 2010 komt in juni" 


Informatie over de genoemde suites is onder andere te vinden op:
www.microsoft.nl
nl.openoffice.org
www.ibm.nl


In veel kantooromgevingen maakt men standaard gebruik van een PIM en een tekstverwerkings-, spreadsheet- en presentatieprogramma, al dan niet aangevuld met een databaseprogramma. Voor de softwareproducenten was dit aanleiding om deze programma’s ‘gebundeld’ aan te bieden in een zogenoemde Office-suite.

De suite Microsoft Office heeft verreweg het grootste marktaandeel. Deze bevat:

Word
Excel
PowerPoint
Outlook
Meer uitgebreide versies beschikken ook over:

Access
FrontPage
Publisher
Visio
Een andere speler op deze markt is IBM met zijn Lotus SmartSuite. Verder worden StarOffice (van Sun Microsystems) en OpenOffice (open source) gebruikt.
Het grote voordeel van deze pakketbundels is niet alleen dat de programma’s verhoudingsgewijs goedkoper zijn, maar ook dat ze onderling goed samenwerken en dat ze vergelijkbare interfaces bezitten.

1 - Bitmap     © Instruct
 
Een bitmap-afbeelding, ook wel rasterafbeelding genoemd, is opgebouwd uit een groot aantal afzonderlijkepixels. Je kunt dit vergelijken met een borduurpatroon met evengrote kruissteken of een Ministeck-werkstukje. Daarbij zie je duidelijk dat deze opgebouwd zijn uit blokjes, wat ‘hoekige’ randen oplevert. De blokjes zijn te vergelijken met de pixels in een bitmap-afbeelding.

Het woord pixel is samengesteld uit de beginlettergrepen van de woorden picture en element.
Het bootje in deze afbeelding is opgebouwd uit blokjes. Dit principe geldt ook voor de pixels van een bitmap-afbeelding.
Bij een bitmap-afbeelding is de opbouw van het beeld pixel voor pixel in kaart gebracht. Bij zwartwit is er voor elke pixel één bit nodig; bij kleur kost de vastlegging van elke pixel een aantal bits.

Met vier bits per pixel kunnen zestien grijswaarden of kleuren worden vastgelegd, omdat met vier bits zestien verschillende combinaties van nullen en enen zijn te maken.
Met acht bits per pixel zijn 256 grijswaarden of kleuren mogelijk.
De meeste programma’s kunnen met 24 bits werken: elke getekende pixel neemt dan 24 bits in het geheugen van de computer in, waardoor er miljoenen variaties per pixel mogelijk zijn.
Alle gescande afbeeldingen en foto’s zijn bitmaps. Dergelijke afbeeldingen worden meestal opgeslagen met een van de volgende extensies:

bmp
png
jpg
gif
 
  Vervorming
 

Een bitmap is niet altijd gemakkelijk te vergroten (of verkleinen). Vergrotingen die geen exact veelvoud van het aantal puntjes zijn, leveren vervorming op. Soms verschijnt er dan een blokvormige rand, waardoor het effect van rafels ontstaat (Engels: jaggies). Wanneer die randen softwarematig worden ‘verzacht’ spreekt men van anti-aliasing. Anti-aliasing ruimt het probleem van zaagtanden uit de weg door aan de randen tussentinten te maken. Hierdoor ontstaat een meer geleidelijke overgang van donker naar licht. De meeste teken- en beeldbewerkingsprogramma’s beschikken over anti-aliasingvoorzieningen.

Vervorming bij het afdrukken ontstaat wanneer het raster van een afdrukeenheid niet spoort met de resolutie van de afbeelding of het font. Je kunt dan een vlekkerig resultaat krijgen, wat in vaktaal moiré wordt genoemd.

Een digitale foto; een gedeelte is uitvergroot, zodat de pixels duidelijk te zien zijn.
 
  Bestandscompressie






 Compressie 






Meer over het compressieprogramma WinRar (shareware):
www.nederlandstaligesoftware.nl




Bekijk ook eens:
www.howstuffworks.com over bestandscompressie.

Hier vind je meer over jpeg en gif:
www.netadvies.nl


Het zal duidelijk zijn dat de opslag van een bitmap nogal wat schijfruimte vraagt. Je kunt dit enigszins beperken door bestandscompressie toe te passen. Bestandscompressie houdt in dat een bestand bewerkt wordt door een speciaal compressieprogramma (bijvoorbeeld WinZip), waarbij het als het ware samengeperst wordt. Na deze bewerking is het enorm veel kleiner geworden: het telt veel minder bytes dan het oorspronkelijke bestand.

Hoe compressie precies in zijn werk gaat, wordt toegelicht in de verdiepingsstof. In het kort komt een veelgebruikte methode erop neer dat gekeken wordt welke gegevens ‘dubbel’ voorkomen. Die gegevens worden vervolgens op een speciale manier gecodeerd opgeslagen. Bij een afbeelding bijvoorbeeld, hoeven honderden gele pixels niet afzonderlijk opgeslagen worden. Het kan veel korter als er één pixel wordt opgeslagen met als het ware de kanttekening ‘227x geel’. Bovendien wordt de ‘lucht’ uit een bestand gehaald: spaties, witregels e.d.

Niet alleen afbeeldingsbestanden, maar ook gegevensbestanden (waaronder tekstbestanden) en muziekbestanden kunnen gecomprimeerd worden bewaard. Hoeveel er uiteindelijk aan schrijfruimte bespaard wordt, is afhankelijk van de aard van het oorspronkelijke bestand en van het gebruikte compressieprogramma. De verschillende programma’s hanteren verschillende zogeheten compressiealgoritmen.

Geluidsbestanden
Je bent ongetwijfeld bekend met mp3-geluidsbestanden. Mp3 is een bekende compressietechniek voor geluid. Voorbeelden van compressietechnieken voor afbeeldingen zijn gif, jpeg en tiff, terwijl mpeg de omvang van bewegende beelden (sterk) kan verminderen. Met name bij het versturen en downloaden via het internet is het van belang dat bestanden niet onnodig groot zijn. Je treft in dat verband dan ook vaak mp3-, mpeg- en gif-bestanden aan.

MPEG betekent Moving Pictures Expert Group, terwijl MP3 staat voor MPEG Layer 3.
 
 



 



2 - Vector     © Instruct
 
Vectorafbeeldingen worden door de computer op een heel andere manier behandeld dan bitmap-afbeeldingen. Van een getekende cirkel wordt niet het bitpatroon bewaard, maar een reeks getallen die de cirkel beschrijven. Als het gaat om een cirkel, zullen die getallen onder meer de straal, lijndikte, lijnkleur, vulling en coördinaten van het middelpunt aangeven.

Voordelen
Een voordeel van de vectorgeoriënteerde wijze van vastleggen is dat wijzigingen eenvoudig zijn aan te brengen. Bij vergroten of verkleinen wordt alleen de waarde die de straal aangeeft, gewijzigd. Daarna wordt het voorwerp opnieuw getekend. Vervormingen zoals die optreden bij het vergroten of verkleinen van bitmap-tekeningen, komen hierdoor niet voor.

Een tweede voordeel van vectorafbeeldingen is dat de componenten waaruit een afbeelding bestaat als componenten blijven bestaan. Als met behulp van twee cirkels een acht wordt gemaakt, lijkt dat voor het oog één geheel. Voor het programma blijven het twee cirkels die onafhankelijk van elkaar te wijzigen zijn.

Beeldbewerkingsprogramma’s als Adobe Photoshop en Paint Shop Pro zijn in het algemeen bitmapgeoriënteerd. 
De meeste tekenpakketten, waaronder CorelDRAW en Adobe Illustrator, leveren vectorafbeeldingen op. 
De extensie BMP in een bestandsnaam duidt op een bitmap-bestand; de extensie SVG (Scalable Vector Graphic) op een vectorafbeelding.

25-03-2010 om 22:09 geschreven door mankuiper  

0 1 2 3 4 5 - Gemiddelde waardering: 0/5 - (0 Stemmen)
09-12-2009
Klik hier om een link te hebben waarmee u dit artikel later terug kunt lezen.Samenvatting Hoofdstuk 5.2

1 - PSD     © Instruct


Programma Structuur Diagrammen (PSD’s)
 Er zijn verschillende schematechnieken waarmee je bruikbare schema’s kunt opstellen. Een daarvan is het Programma Structuur Diagram, afgekort tot PSD.

Een Programma Structuur Diagram staat ook bekend onder de naam Nassi-Shneiderman Diagram.

Een PSD is een schema dat de samenhang – de structuur – van instructies binnen een programma weergeeft. PSD’s bestaan uit:

rechthoeken
driehoeken
tekst
Je moet ze beschouwen als voorbereiding op het coderen in een programmeertaal. Ze zijn programmeertaalonafhankelijk. Bovendien gelden er geen strenge taalregels; de probleemoplossing staat centraal.

Algoritme
We spreken in dit verband wel van eenalgoritme. De algoritme om van een probleem tot een programma te komen, ziet er als volgt uit:

probleemstelling
analyse
schematische oplossing
het maken van de sourcecode
compileren
Voor alle duidelijkheid: het schrijven van opdrachten in een programmeertaal is zo ongeveer de laatste stap in het systeemontwikkelingsproces. Eerst moet de programmeur op een gestructureerde wijze de oplossing van een probleem bedenken. PSD’s vormen hierbij een hulpmiddel.


 

Het programma Struktograaf is een hulpmiddel voor het tekenen van PSD's:
www.sichemsoft.nl

Hier vind je een freeware-programma met dezelfde functionaliteit als Struktograaf:
eii.ucv.cl

 

Programma Structuur Diagrammen (PSD’s) met Struktograaf
 Basisstructuren
Bij PSD’s zijn er slechts drie basisstructuren. Als deze op de juiste manier worden gecombineerd, kun je hiermee elk willekeurig computerprogramma schrijven. De basisstructuren zijn:

sequentie
iteratie
selectie
Deze structuren worden ook wel aangeduid met de termen opeenvolging, herhaling en keuze. Bij de behandeling van deze structuren, gaan we uit van een eenvoudig probleem: het bakken van een ei. Niet voor niets wordt het ontwikkelen van een computerprogramma wel eens vergeleken met een recept uit een kookboek!
  

 

 


--------------------------------------------------------------------------------

 

 


2 - Sequentie     © Instruct

  Sequentiële opdrachten worden van boven naar beneden één voor één uitgevoerd:

 


Het bakken van een ei kan in een PSD als volgt worden weergegeven:

 


Hoe gedetailleerd een schema is, hangt af van de gebruiker. Iemand die al vaker iets gekookt of gebakken heeft, zal voldoende hebben aan de handeling ‘vuur aansteken’. Voor iemand die dit voor het eerst doet, zouden we het schema zo kunnen uitbreiden:

 

  

 

 


--------------------------------------------------------------------------------

 

 


3 - Iteratie     © Instruct

 Voorbeeld: ei bakken
Vaak moeten in programma’s bepaalde onderdelen herhaald worden. Iets dergelijks geldt bij het bakken van een ei. Stel dat er in de pan maar één gebakken ei past. Als je meer eieren wilt bakken, hoef je de eerste en de laatste stap uit het schema niet bij elk nieuw ei opnieuw te doen, maar de tussenliggende stappen moeten wel voor elk ei uitgevoerd worden. In het schema geef je dit aan door middel van een iteratie.

Er zijn twee soorten iteraties:

iteratie met controle achteraf
iteratie met controle vooraf
We geven beide vormen als volgt weer.

Controle vooraf

  Controle achteraf
 


Controle vooraf
In het voorbeeld van het gebakken ei kun je vooraf en achteraf controleren of je het gewenste aantal eieren gebakken hebt; we gaan even uit van drie stuks. Bij controle vooraf ontstaat het volgende PSD:

 


Controle achteraf
Bij controle achteraf krijg je het volgende PSD:

 


Bij controle achteraf wordt de herhaling minstens één keer uitgevoerd. Dit is een verschil ten opzichte van de controle vooraf. 
  

 

 


--------------------------------------------------------------------------------

 

 


4 - Selectie     © Instruct

  Een derde programmastructuur is de selectie. Dit houdt in dat het programmaverloop zich splitst op grond van de vraag of wel of niet aan een bepaalde voorwaarde is voldaan. Afhankelijk van het antwoord wordt gestuurd naar de ene serie opdrachten of naar de andere serie.

In een PSD geef je dit weer door middel van een driehoek. Deze wordt gevolgd door twee kolommen. In de ene kolom staat wat het programma moet doen als de voorwaarde wel geldt, in de andere wanneer deze niet geldt.

 
  Voorbeeld: ei bakken
Als je een ei gaat bakken kan het zijn dat het vuur niet meer aangestoken hoeft te worden. Je geeft dat als volgt weer:

 


Nu is dit natuurlijk een heel eenvoudig keuzevoorbeeld. Het is ook denkbaar dat er zich, nadat een keuze gemaakt is, weer een nieuw ‘keuzeprobleem’ voordoet. Kijk eens naar het volgende voorbeeld.

 
 
 
  Voorbeeld: toegangsprijs
Het gaat om het bepalen van de toegangsprijs voor een pretpark. De normale prijs bedraagt tien euro. Kinderen tot twaalf jaar en ouderen vanaf zestig jaar betalen de helft. Er zijn dus twee keuzes te maken, zoals het volgende schema laat zien.

 


Ten slotte
Je hebt nu voorbeelden gezien van de drie basisstructuren van PSD’s. Het lijkt misschien onwaarschijnlijk, maar met deze structuren kun je in principe de werking van elk programma beschrijven, hoe ingewikkeld dat ook is. Dat komt doordat elke rechthoek van een structuur zelf weer uit andere structuren mag bestaan:

in het gedeelte dat herhaald wordt, mag een keuzediagram voorkomen;
de vakken van een keuzediagram mogen nieuwe keuzen bevatten;
enzovoort.
 

Het nalopen van een PSD     © Instruct

   Om inzicht te krijgen in de werking van een PSD en om te controleren of het schema juist is, is het noodzakelijk om de opdrachten na te lopen. Daarbij worden de opdrachten stuk voor stuk uitgevoerd. Dit heeft uiteraard alleen zin als je dat nauwkeurig doet. Je moet daarbij alle opdrachten in de juiste volgorde uitvoeren en elke verandering in waarden op papier bijhouden. (Denk bijvoorbeeld aan het aantal te bakken eieren.)

Ooggetuigenverslag
Zo’n controle wordt wel een ooggetuigenverslag genoemd. Het doel is tweeledig:

Als de werking van het PSD bekend is: controleren of het PSD juist is.
Als de werking van het PSD onbekend is: onderzoeken wat het PSD doet.
Om de controle uit te voeren is het niet nodig dat je de werking van het PSD al van tevoren doorgrondt. Als voorbeeld nemen we het volgende PSD, waarvan nog niet bekend is wat het doel ervan is.

 


Dit is een vrij eenvoudig PSD, maar het gaat om het principe. Je ziet eerst twee sequentie-opdrachten. Het blijkt dat het hierbij gaat om iets wat op het scherm afgedrukt moet worden:

een waarschuwing dat een bestand al onder een bepaalde naam op schijf aanwezig is
de vraag of deze naam desondanks gehandhaafd moet blijven
Daaronder staat een iteratie met een controle achteraf. Het programma moet als het ware ‘herhaaldelijk’ wachten totdat de gebruiker een J of een N indrukt.

Het PSD eindigt met een selectie: drukt de gebruiker op de J-toets, dan kan worden overgegaan tot opslaan. In alle andere gevallen gebeurt er niets. Dit betekent dat de gebruiker uitsluitend op de J kan drukken om het bestand onder dezelfde naam op te slaan. Dit is de beste methode om te voorkomen dat het bestand ongewild overschreven wordt.
  

 

 

09-12-2009 om 14:30 geschreven door mankuiper  

0 1 2 3 4 5 - Gemiddelde waardering: 1/5 - (1 Stemmen)
Klik hier om een link te hebben waarmee u dit artikel later terug kunt lezen.Samenvatting Hoofdstuk 5.1

Programmeertalen in historisch perspectief     © Instruct


Artikel van Automatisering Gids:
"Vrouwen programmeren beter"


 Programmeertalen worden wel ingedeeld in vijf hoofdcategorieën. Deze indeling geeft niet alleen de chronologische volgorde weer, maar ook een toenemende gebruikersvriendelijkheid. We onderscheiden:

Machinecode
Assembleertalen
Hogere programmeertalen
Vierde-generatietalen
Objectgeoriënteerde talen
Hoewel de eerste twee categorieën vandaag de dag voor de gemiddelde gebruiker geen grote rol spelen omdat ze voor hem verborgen blijven, gaan we hier toch even op in.
 
1 - Machinecode     © Instruct


De kleinste geheugeneenheid is de bit. Een bit is een binair getal (binary digit), dat twee waarden kan hebben: 0 of 1. Alles in het interne geheugen, maar ook op externe geheugenmedia, wordt binair vastgelegd. Dit betekent dus dat ook een programma in binaire vorm wordt opgeslagen. Dit noemen we de machinecode. Elk type processor heeft een eigen manier, de instructieset, om de machinecode te ‘lezen’.

De allereerste computers werden in machinecode geprogrammeerd. Het bedieningspaneel van de computer bevatte een lange reeks schakelaars. De programmeur voerde de opdracht in door de juiste schakelaars omhoog of omlaag (dat is een 1 of een 0) te zetten, waarna de opdracht in het geheugen werd opgeslagen. Dat was eentonig werk, waarbij bovendien gemakkelijk fouten werden gemaakt.

 De bedieningspanelen van de ENIAC.

In die begintijd stelde een programma weinig voor, de programma’s waren nog niet zo omvangrijk. Bovendien waren ze sterk gekoppeld aan de computer waarvoor ze waren geschreven. Een programmeur was al apetrots als hij de computer zo in kon stellen dat die de vierkantswortel van een getal van vijf cijfers ging berekenen…

Machinetalen zijn programmeertalen van de eerste generatie. Ze worden tot de lagere programmeertalen gerekend. Lager wil in dit geval zeggen: dicht bij de processor.

Een opdracht in machinetaal om twee getallen op te tellen, kan als volgt luiden:

1010 11001
1011 11010
1100 11011
  

 

 


--------------------------------------------------------------------------------

 

 


2 - Assembleertaal     © Instruct


Veel informatie over assembler:
webster.cs.ucr.edu

 Ook assembleertaal is een lagere programmeertaal. Het verschil met machinecode is dat er gebruik wordt gemaakt van gemakkelijker te onthouden lettercodes in plaats van nullen en enen. Een speciaal vertaalprogramma, assembleerprogramma genaamd, dient dan om de lettercodes om te zetten in machine-instructies. Dat blijft onder alle omstandigheden nodig, want uiteindelijk is dat voor een computer de enige verstaanbare taal.

Overigens is ‘gemakkelijker te onthouden’ maar betrekkelijk. Je moet denken aan combinaties die uit enkele letters bestaan, bijvoorbeeld:

LIR zou kunnen staan voor load into register (haal waarde vanuit het geheugen in het rekenregister),
AC voor add constant (tel constante op)
PIM voor put into memory (zet inhoud van rekenregister op een geheugenplaats)
 Een voorbeeld van programmacode in assembler.

Een opdracht in assembleertaal om twee getallen op te tellen, kan als volgt luiden:

LOD Y
ADD Z
STR X


Geheugenplaatsen
Een bijkomend voordeel voor de programmeur is dat hij niet langer geheugenplaatsen hoeft bij te houden. Het vertaalprogramma regelt de plaatsing van de variabele in het geheugen. De programmeur hoeft alleen maar de naam te noemen en niet het nummer van de geheugenplaats.

Assembleertaal is een taal van de tweede generatie. Ondanks het feit dat assembleertaal verder van de processor af staat dan machinetaal, spreken we nog wel van een machinegeoriënteerde taal.

Het schrijven van programma’s in assembleertaal is een zeer tijdrovende aangelegenheid, die meestal lange, onoverzichtelijke programma’s oplevert. Er wordt daarom alleen gebruik gemaakt van een assembleertaal als het programma afgestemd moet worden op de specifieke kenmerken van een processor, bijvoorbeeld in embedded systems.
Je moet dan denken aan de processors (microcontrollers) in apparaten als koffieautomaten en thermostaten. Dit is een veelvoorkomende toepassing van een assembleertaal.
 
 
Hogere programmeertalen     © Instruct

   De volgende grote stap in de ontwikkeling van programmeertalen werd gezet toen het mogelijk werd om verschillende machinetaalopdrachten te combineren in één programmaopdracht. Deze programmaopdracht benadert al veel meer de menselijke taal dan assembleertaal.

Bij hogere programmeertalen – programmeertalen van de derde generatie – hoeft de programmeur geen kennis te hebben van de eigenschappen van de processor. De programmeur schrijft stapsgewijs de procedure (regels) voor die de computer moet volgen om het programma uit te voeren. We spreken daarom ook wel van procedurele talen.

Ook bij deze hogere programmeertalen worden de instructies uiteindelijk weer vertaald naar machinecode. Hiervoor dient een speciaal vertaalprogramma, compiler geheten.

Compiler
Een compiler is kort gezegd een vertaalprogramma dat de programmaregels (de zogeheten sourcecode of broncode) omzet in machine-instructies (de objectcode of doelcode).

De programmaopdrachten in een programmeertaal van de derde generatie zijn machine-onafhankelijk. In het ideale geval kan dezelfde broncode zonder aanpassingen worden gebruikt op een computer met een andere processor. De compilers voor de desbetreffende taal zijn wél machine-afhankelijk. Ze zetten de broncode om in opdrachten voor een bepaalde processor of een bepaald besturingssysteem.

Voorbeelden
Er zijn tientallen derde-generatietalen. Ze werden vaak ontwikkeld voor een bepaald toepassingsgebied. De bekendste zijn:
 

Enkele websites:
www.cobug.com (COBOL gebruikersgroep)
fortran.domeintje.net (Fortran)
www.lysator.liu.se (C)


Artikel van Computable:
"Cobol is nog lang niet afgeschreven"

 FORTRAN, ontwikkeld voor technische en wetenschappelijke publicaties.

COBOL, vroeger een populaire programmeertaal voor administratieve toepassingen. In de bank- en verzekeringswereld zijn overigens nog steeds veel COBOL-programma’s in gebruik.

C, een nog altijd veelgebruikte taal voor het ontwikkelen van systeem- en applicatiesoftware; het besturingssysteem UNIX is ontwikkeld in C.
 
 Pascal, een taal die helpt bij het ontwikkelen van goed gestructureerde programma’s.
 Een voorbeeld van een statement in Pascal.


De opdracht in COBOL om twee getallen op te tellen, luidt:

COMPUTE X = Y + Z
  

 

Vierde-generatietalen     © Instruct


Artikel over 4GL:
www.computable.nl

 In talen van de vierde generatie (4GL) worden de programmaopdrachten steeds krachtiger. De meeste talen van deze generatie zijn niet-procedureel; ze zijn eerder probleemgericht. Dit wil zeggen dat de programmeur moet aangeven welk doel hij voor ogen heeft en dat de computer daarbij bepaalt welke reeks instructies daarvoor nodig zijn. Deze talen zijn weer een stap verder verwijderd van de computer.

De hoge verwachtingen die men had van vierde-generatietalen zijn niet uitgekomen. Een algemeen toepasbare vierde-generatietaal levert onhandelbaar grote programma’s op, omdat de software veel ballast bevat. De vierde-generatiesoftware die het programma maakt, begrijpt natuurlijk niet echt wat er moet gebeuren en neemt ‘voor de zekerheid’ allerlei opdrachten en voorzieningen op. Een menselijke programmeur zou een meer afgewogen keuze maken.

Hulpmiddelen
Om deze reden beperkt men zich liever tot vierde-generatiehulpmiddelen. Met deze hulpmiddelen (Engels: tools) kan men snel een toepassing of een bepaald gedeelte van een toepassing genereren. Een voorbeeld van zo’n hulpmiddel is een schermgenerator, waarmee op eenvoudige wijze de layout van invulschermen kan worden bepaald. Verder zijn er rapportgeneratoren, waarmee men aan de hand van gegevens uit een database snel een overzicht kan produceren.

Ook macro’s die in applicaties als Microsoft Word en Excel gemaakt kunnen worden en vraagtalen alsSQL worden tot de vierde-generatiehulpmiddelen gerekend.

Met SQL kun je onder meer gericht selecties maken in een database. 
  

 

1 - Objectgeoriënteerde talen     © Instruct

 Procedures versus objecten 

Artikel van Infoworld:
"25 fatale programmeerfouten"


Procedurele talen
Programma’s die geschreven worden in procedurele talen (van de derde generatie), zoals Pascal, voeren bewerkingen uit op afzonderlijke gegevens. Het komt regelmatig voor dat in programma’s bepaalde handelingen op meerdere plaatsen uitgevoerd moeten worden, bijvoorbeeld het sorteren van getallen. Voor die handelingen kunnen aparte programmaatjes worden gemaakt: procedures.

Doordat in een programma naar een procedure kan worden verwezen, is het niet nodig om de afzonderlijke opdrachten telkens opnieuw uit te schrijven. Omvangrijke programma’s blijven door het gebruik van procedures dus veel overzichtelijker.

OO-talen
Objectoriëntatie, vaak afgekort tot OO, is een techniek die voortbouwt op de techniek van het werken met procedures. Bij OO wordt uitgegaan van de gegevens als kern. De verschillende verschijningsvormen van het gegeven worden eraan gekoppeld; deze zijn afhankelijk van het gebruik (het proces). De processen worden in gang gezet naar aanleiding van boodschappen van andere objecten. Zo ontstaat een object, waarin gegevens en bijbehorende instructies zijn samengevoegd.

Voor het gebruik van een object in een programma hoeft een programmeur niet te weten hoe het object werkt. Bij gebruik van het object hoeft hij alleen de rol te kennen die het object binnen het programma kan spelen. Binnen het programma functioneert het object als een soort ‘black box’. Veel meer dan bij de procedurele software-ontwikkeling wordt een programma dus beschouwd als samenhangende zelfstandige eenheden.

 Een voorbeeld van het object leerling met een aantal methoden.

Een beschrijving van de OO-techniek wordt algauw tamelijk abstract. We zullen proberen de theorie met een voorbeeld te verduidelijken.

Voorbeeld:leerlingenadministratie
Neem de leerlingenadministratie van een school eens in gedachten. Daar werkt men met zaken als vak, docent, leerling, les en toets. De administratie beschikt per leerling over een aantal gegevens:

naam
adres
geboortedatum
rapportcijfers, enzovoort
Bovendien voert de administratie regelmatig bewerkingen op de leerlinggegevens uit: de namen moeten afgedrukt worden, de adresgegevens moeten gewijzigd kunnen worden, enzovoort. Objecten bestaan uit een set gegevens (naam, adres, geboortedatum) en een serie handelingen die op de gegevens uitgevoerd kunnen worden. Dit is dus de hiervoor besproken combinatie van data en bijbehorende instructies.

In de terminologie van OO spreken we over methoden (‘methods’) in plaats van over handelingen.

  
  Voordelen
 
Als voordelen van objectoriëntatie kunnen we noemen:

snellere ontwikkelingstijd door hergebruik van programmamodules;
minder fouten in programmacode;
betere onderhoudbaarheid van programma’s doordat duidelijker is wat elk deel van de software doet;
betere uitwisselingsmogelijkheden als gevolg van vastgestelde standaards.

  
  Problemen
 
Helaas verloopt de ontwikkeling van objectgeoriënteerde programma’s in de praktijk niet zonder problemen. Een paar belangrijke hindernissen bij de ontwikkeling van dit soort programma’s zijn:

Omzetten is moeilijk
De praktische onmogelijkheid om procedurele programma’s om te zetten naar OO-programma’s. Dit betekent dat veel programma’s opnieuw geschreven zouden moeten worden in een objectgeoriënteerde versie. Omdat er nog zeer veel programma’s in omloop zijn die zijn geschreven in procedurele talen, zou het verwijderen van deze programma’s een enorme kapitaalvernietiging betekenen.

Tekort aan programmeurs
De geringe beschikbaarheid van programmeurs met voldoende OO-kennis.

  

 

Allerlei interessant Java-materiaal:
www.programmersheaven.com

Sun Developer Network:
java.sun.com Tekort aan hulpmiddelen
Het ontbreken van voldoende hulpmiddelen die programmeurs kunnen ondersteunen bij hun werk. Bovendien is er lange tijd geen geschikte systeemontwikkelingsmethodiek voorhanden geweest. Zonder deze methodiek is het heel lastig om complexe programma’s te maken.
Met de komst van Java zijn enkele van deze knelpunten opgelost. Sinds de introductie van Java (in 1995) heeft de ontwikkeling van objectgeoriënteerde programma’s dan ook een duidelijke impuls gekregen. Bij grote softwarehuizen zien we de laatste tijd een toename in de ontwikkeling van OO-softwareprojecten voor commerciële doeleinden.

Tot op heden is de ‘klassieke’ programmatuur (geschreven in COBOL, Pascal, en dergelijke) in omvang nog steeds in de meerderheid. Dit heeft mede te maken met de verrassende vitaliteit van sommige oude talen als COBOL. Van COBOL is overigens ook een OO-versie verschenen.
  

 

 


--------------------------------------------------------------------------------

 

 


2 - Begrippen uit de objectoriëntatie     © Instruct

   Belangrijke begrippen uit de wereld van de objectoriëntatie zijn (tussen haakjes de Engelse term):

objecten (objects)
klassen (classes)
methoden (methods)
inkapseling (encapsulation)
overerving (inheritance)

  
  Objecten
 
In het dagelijks leven komen we objecten in allerlei vormen tegen. Een huis, een stofzuiger, een school en een auto zijn voorbeelden van objecten. Ook meer abstracte zaken zoals verslagen, rekeningen, onderdelen van een gebruikersinterface (bijvoorbeeld vensters, knoppen, pictogrammen en menu’s bij Windows) zijn objecten. Hierbij vormen samenhangende gegevens én de opdrachten die erop uitgevoerd worden, een onlosmakelijk geheel.

Het gebruik van objecten in een programma heeft als voordeel dat het niet nodig is om te weten hoe het object technisch in elkaar zit. Het is alleen van belang om te weten hoe het object gebruikt moet worden. Objecten zijn te onderscheiden op basis van eigenschappen, bij OO noemt men die eigenschappen attributen.

Voorbeeld: auto
attributen van het object ‘Auto’ kunnen zijn:

het hebben van wielen
bestuurbaar zijn
merk
type
kleur
bouwjaar
cataloguswaarde

  
  Klassen
 
Een object is altijd een vertegenwoordiger van een klasse; klassen zijn rechtstreeks verbonden aan objecten. Men zegt wel dat een object een instantie van een klasse is. In de klasse wordt een lijst beschreven van alle attributen en methoden van het object.


Voorbeeld: auto
We hebben daarnet een auto een object genoemd. Er zijn diverse typen auto’s:

stationwagens
cabrio’s
SUV’s
bestelwagens, enzovoort
Alle bestelwagens behoren tot de klasse van auto’s. Een klasse bestaat dus uit objecten met een aantal gemeenschappelijke attributen. Elke individuele bestelwagen die uit de fabriek komt, is een object van de klasse Auto.

Het is niet altijd gemakkelijk om onderscheid aan te brengen tussen een klasse en een object. Men gebruikt deze begrippen soms door elkaar.

  
  Methoden
 
Methoden worden gebruikt om te communiceren met andere objecten en met de buitenwereld. De methoden verzorgen het gedrag van het object. Elke methode heeft een unieke naam waarmee deze aangeroepen wordt.


Voorbeeld: auto
Methoden bij het object auto kunnen zijn:

verkopen
repareren
overspuiten

  
  Inkapseling
 
Onder inkapseling wordt verstaan: het in een object insluiten van alle zaken die het object nodig heeft om te functioneren, in het bijzonder de methoden en de data. Door inkapseling zijn de methoden en de data voor de gebruiker onzichtbaar.

  
  Overerving
 
Objecten kunnen attributen en/of methoden van andere, vergelijkbare, objecten overnemen; we spreken dan van overerving. Dankzij deze mogelijkheid hoeven niet van alle objecten alle eigenschappen steeds opnieuw beschreven te worden. We zeggen dan wel dat de klasse de attributen van de erboven gelegen klasse ‘erft’. Ook methoden kunnen geërfd worden.


Voorbeeld: auto
Een klasse Bestelwagen kent grotendeels dezelfde attributen als de klasse Auto. Immers, ook bij elke bestelwagen is er sprake van Merk, Type, Kleur, Bouwjaar, Cataloguswaarde.
  

 

1 - C en C++     © Instruct


C- en C++-materiaal:
www.programmersheaven.com

 C
C is zoals gezegd een derde-generatietaal, een gestructureerde procedurele taal die veel wordt toegepast voor het ontwikkelen van besturingssystemen en applicatiesoftware. C wordt beschouwd als een erg compacte en efficiënte taal die dicht bij machinecode staat. Dit maakt dat C snel is, maar het is ook foutgevoelig en niet echt gebruikersvriendelijk.


C++
De objectgeoriënteerde opvolger van C is C++. Het draait in C++ om het OO-begrip klasse en om data-hiding. Dit laatste wil zeggen dat een object niets ‘weet’ van afzonderlijke gegevens, maar uitsluitend uitgaat van klassen. Als deze techniek goed toegepast wordt, levert dit kortere programma’s op, die eenvoudiger te doorgronden en te onderhouden zijn.

C++ is in 1980 ontworpen door Bjarne Stroustrup, een medewerker van AT&T. De naam C++ is als een woordspeling bedoeld. In C betekent C++ namelijk dat ‘C’ vervangen wordt door zijn opvolger, dus C++ wil zeggen dat het om een volgende versie van C gaat.

 


De homepage van Bjarne Stroustrup: www.research.att.com
  

 

 


--------------------------------------------------------------------------------

 

 


2 - Java     © Instruct


Artikel van Computerworld:
"Java, een blik in de toekomst"


 Java is een objectgeoriënteerde programmeertaal, die wel wat overeenkomsten heeft met C++. Het bijzondere van Java is dat het platformonafhankelijk is.

Java is ontwikkeld door de firma Sun en bestaat uit drie onderdelen:

De programmeertaal Java
Deze wordt beschouwd als een veelzijdige, overzichtelijke, betrouwbare en zuiver objectgeoriënteerde taal. De taal is gemaakt om op kleine computers te kunnen draaien en wordt dan ook gebruikt in bijvoorbeeld PDA’s en mobiele telefoons.

De JDK
DeJDK is een uitgebreide bibliotheek van programmacomponenten. Deze maakt Java tot een soort kist vol handige onderdelen waarmee het leuk programma’s bouwen is.

De Java Virtual Machine (JVM)
Dit is een vertaler die zogeheten bytecode omzet naar een machinetaal die geschikt is voor het platform waarop het Java-programma wordt uitgevoerd. De bytecode draait op alle platforms waarvoor een JVM bestaat.
Het laatstgenoemde punt maakt Java wezenlijk anders dan zijn voorgangers. Bij de programmeertalen die voor de komst van Java gebruikt werden, wordt het geschreven programma vertaald naar de machinecode die de computer begrijpt. Daarvoor wordt een vertaalprogramma gebruikt, de al eerder genoemde compiler. Om het programma voor een ander besturingssysteem (‘een ander platform’) geschikt te maken moet het aangepast worden, waarna het opnieuw gecompileerd moet worden.
  

 

Allerlei interessant Java-materiaal:
www.programmersheaven.com
www.developer.com

Sun Developer Network:
java.sun.com Bytecode
Bij Java vertaalt de compiler naar een vorm die geen machinecode is van een bestaand besturingssysteem, maar naar een tussenliggende vorm, de zogenoemde bytecode. Voor de uitvoering van die bytecode is het vervolgens noodzakelijk die bytecode om te zetten naar de machinetaal van die machine. Dit gebeurt door de Java Virtual Machine (JVM). Deze virtuele machine moet wel speciaal geschreven zijn voor het betreffende besturingssysteem. Dus is er voor elk besturingssysteem een eigen JVM nodig.

Overigens draait Java onder alle populaire 32-bits besturingssystemen en een aantal 64-bits systemen.

 De compiler zet een Java-programma om in platformonafhankelijke bytecode.


Hoewel wij de naam Java vooral associëren met een Indonesisch eiland, is de taal genoemd naar de koffie die de ontwikkelaars dronken (en die hen wakker moest houden). Vandaar dat in het logo van Java ook een kopje koffie te zien is…
  

 

 


--------------------------------------------------------------------------------

 

 


3 - Delphi     © Instruct


De Delphi-pagina van Codegear (voorheen Borland):
www.codegear.com

 Delphi is een visuele, objectgeoriënteerde programmeeromgeving van Borland, die gebaseerd is op de taal Pascal. In Delphi vind je alle bijzonderheden van OO programmeren terug.

Je werkt in Delphi in deIDE. De IDE biedt de mogelijkheid om

tekst op te maken;
een programma te compileren (omzetten naar machinetaal);
een programma te laten uitvoeren;
de fouten uit een programma te halen (te debuggen).
 
 Als een programma een fout bevat, spreken we van een bug. Het zoeken naar fouten wordtdebuggen genoemd. Volgens de overlevering werd een van de eerste gemelde fouten in een computerprogramma ook daadwerkelijk veroorzaakt door een insect: tussen de mechanische onderdelen van de computer was een mot terechtgekomen. Daardoor werkte het apparaat niet naar behoren.

Een van de sterke punten van Delphi is deVCL, een bibliotheek met objecten die klaar zijn voor gebruik.

Delphi leent zich goed voor programmeren voor de Windows-omgeving.
  

 

 


--------------------------------------------------------------------------------

 

 


4 - Visual Basic.NET     © Instruct

 

 

 

 

 

 

 

 

 


De .NET-pagina van Microsoft:
www.microsoft.nl

Meer informatie:
dotnet.startpagina.nl

 Een programmeertaal van Microsoft isVisual Basic.NET. Voorheen heette deze taal Visual Basic, maar vanaf versie 7 van Visual Basic heeft Microsoft gekozen voor een nieuwe naam (2002). VB.NET maakt deel uit van een groter geheel, dat Microsoft het .NET-platform heeft genoemd.

Met VB.NET kun je onder meer applicaties voor de Windows-omgeving schrijven. De gebruikersinterface staat daarbij centraal. Deze wordt ontworpen met alle voorzieningen die kenmerkend zijn voor Windows-applicaties, zoals:

knoppen
dialoogvensters
keuzemenu’s
selectievakjes
Daarna wordt de bijbehorende programmacode eraan verbonden. Ook het schrijven van webapplicaties behoort tot de mogelijkheden.

Platformonafhankelijk
VB.NET heeft meer kenmerken van objectoriëntatie dan zijn voorganger: in Visual Basic was bijvoorbeeld de mogelijkheid van overerving nog niet ingebouwd, in VB.NET wel. Het maakt bij het compileren van de programmacode gebruik van een tussentaal, vergelijkbaar met de bytecode van Java. Dit maakt dat .NET evenals Java platformonafhankelijk is.

VBA
De populaire Office-pakketten bevatten een vereenvoudigde versie van VB.NET, dieVBA wordt genoemd. Hiermee kun je niet alleen macro’s voor de betreffende programma’s ontwikkelen, maar ook volwaardige programma’s.

Een macro is een programmaatje waarmee bepaalde handelingen in een toepassingspakket geautomatiseerd kunnen worden. Een macro bestaat net als elk programma uit een reeks instructies.
  

 

1 - Programmeertalen voor het web     © Instruct

   De klassieke programmeertalen schieten over het algemeen tekort op het gebied van webapplicaties. De opkomst van het web heeft dan ook een aantal nieuwe en vernieuwde talen opgeleverd, die in deze paragraaf ter sprake komen. Bij de indeling van deze talen speelt het client/server-model een rol.

Toegepast op het internet bestaat het client/server-model uit verschillende componenten:

De client is de computer van de surfer, waarop een browser draait. Via dit programma bezoekt de surfer websites, bijvoorbeeld door de URL in de adresbalk te typen of op hyperlinks te klikken.
De aanvraag voor een webpagina wordt verzonden naar een server waarop de website opgeslagen is. De server stuurt de gevraagde pagina naar de client. Populaire sites zoals Google en MSN kunnen duizenden clients per seconde bedienen.
 Een schematisch voorstel van het client/server-model: de clients doen een aanvraag voor een webpagina bij een server; de server verzendt de gevraagde pagina via internet.

Zowel voor de server als voor de client zijn programmeertalen ontwikkeld.

De client-sided programmeertalen worden uitgevoerd op de computer van de gebruiker.
De server-sided talen worden uitgevoerd op de server die de websites bevat.
  

 

 


--------------------------------------------------------------------------------

 

 


2 - Client-sided programmeertalen voor het web     © Instruct

   Van de technieken die je op de client tegenkomt, bespreken we twee categorieën:

opmaaktalen
scriptingtalen

  
  Opmaaktalen: HTML en XHTML
 XHTML

 XML

 

 

 

 

 


Over HTML is veel informatie te vinden, bijvoorbeeld op:
html.startpagina.nl
www.webreference.com
www.handleidinghtml.nl

 


 
HTML dient voor het beschrijven van de structuur van webpagina’s. Als je HTML gebruikt, plaats je besturingscodes in teksten en daarmee geef je aan hoe die tekst door een browser afgebeeld moet worden op het beeldscherm. Deze codes zelf, tags genaamd, beeldt de browser natuurlijk niet af.

Er zijn talloze verschillende codes, bijvoorbeeld voor het vet, cursief en onderstreept maken van tekst, voor het maken van grote en minder grote koppen, voor het opnemen van afbeeldingen, voor het kiezen van kleuren, noem maar op. De codes staan tussen punthaken: < en >. Over het algemeen bestaan ze uit een begin- en een eindcode, bijvoorbeeld:

<h1> om een hoofdkop aan te geven
</h1> om het einde van deze kop aan te geven
De browser geeft koppen van niveau 1 in grote en vette letters weer.

De opmaak van de webpagina wordt verzorgd door zogeheten stylesheets; HTML brengt structuur aan in het document.

Een van de belangrijkste kenmerken van HTML is de mogelijkheid om documenten aan elkaar te koppelen via hyperlinks. Met behulp van HTML geef je hyperlinks de juiste code, zodat ze ook daadwerkelijk fungeren zoals ze bedoeld zijn.

Het is niet zo heel moeilijk om HTML te leren (zeker niet als je het vergelijkt met het leren van een ‘echte’ programmeertaal), maar het wordt steeds minder noodzakelijk om deze taal te beheersen. Er verschijnen namelijk steeds meer programma’s waarmee je op een eenvoudige wijze webpagina’s ontwerpt.

HTML-code:


Webpagina:

 

Voorbeeld van een stukje HTML-code met de resulterende webpagina.

In HTML kun je kleine Java-programma’s opnemen, die applets worden genoemd. Applets draaien op de client. 


 
  XHTML
XHTML is een nieuwere variant van HTML, die striktere eisen aan de codering stelt dan HTML. Zo is het bij voorbeeld verplicht dat alle tags worden afgesloten. Hierdoor kan er bij het afbeelden van webpagina’s minder fout gaan.

(X)HTML werkt samen met een techniek dieCSS wordt genoemd. Via CSS is de opmaak van webpagina’s zeer nauwkeurig in te stellen.

  
  Scriptingtalen: JavaScript

Heel veel gratis scripts:
www.hotscripts.com
www.javascriptkit.com
www.quirksmode.org

 


JavaScript is ontwikkeld door onder meer Netscape Communications Corporation. Het is een opdrachttaal die fungeert als uitbreiding op HTML: er kunnen opdrachtregels aan een webpagina mee worden toegevoegd. De browser interpreteert de JavaScript-opdrachten als de pagina op het scherm geplaatst wordt.

Java en JavaScript worden nogal eens door elkaar gehaald. Het grootste verschil tussen beide talen is dat Java een volwaardige programmeertaal is, terwijl JavaScript is bedoeld als uitbreiding op HTML. JavaScript is eenvoudiger, maar daardoor ook beperkter: het wordt uitsluitend toegepast voor webapplicaties. De toepassingsmogelijkheden van Java zijn veel breder. Je kunt er bijvoorbeeld complete tekstverwerkers in programmeren.

In tegenstelling tot Java is JavaScript geen volledige programmeertaal. De opdrachten zijn beperkt tot de objecten van de webbrowser. Met JavaScript kan een ontwerper webpagina’s meer interactiviteit geven. Via het script kan hij reageren op eigenschappen van de browser en de computeromgeving.

Event
De gebruiker voert een bepaalde handeling uit: hij tikt gegevens in, kiest een mogelijkheid uit een menu, klikt op een knop of vult een veld in, waarna JavaScript-opdrachten voor een passende reactie zorgen. We zeggen dan dat JavaScript reageert op een event; de handeling van de gebruiker heet in programmeertaaljargon een ‘event’ of ‘gebeurtenis’. Een reactie zou kunnen zijn dat er een aangepaste tekst wordt getoond, die betrekking heeft op de gemaakte keuze.

mouseOver en mouseOut
Een voorbeeld van een toepassing is het laten ‘oplichten’ van een plaatje of tekst als de gebruiker er met de muisaanwijzer overheen gaat. Dat is een visueel signaal dat er op die plaats geklikt kan worden. Er worden in dat geval twee plaatjes gemaakt, een donkere en een lichte versie. De pagina bevat JavaScript-opdrachten die reageren op de event ‘mouseOver’ en ervoor zorgen dat de lichte versie van het plaatje verschijnt. Bij de event ‘mouseOut’ (de muisaanwijzer verlaat het gebied) wordt de donkere versie weer teruggezet.

Niet alle browsers ‘begrijpen’ JavaScript. Ontwikkelaars van een website moeten rekening houden met zulke browsers. Gelukkig komt er geen foutmelding of iets dergelijks. Een browser die geen JavaScript ‘kent’, slaat de opdrachten over.

Andere scriptingtalen zijn VBScript en Flash ActionScript.
  

 

 


--------------------------------------------------------------------------------

 

 


3 - Server-sided programmeertalen voor het web     © Instruct


  PHP

Meer informatie:
php.startpagina.nl
www.phphulp.nl


 
Moderne websites zijn vaak dynamisch. Ze bevatten allerlei functies die met HTML niet aangebracht kunnen worden. Denk aan een gastenboek, een mogelijkheid om elektronisch te betalen, een discussieforum, een fotoalbum of een gepersonaliseerde website. Om deze functies mogelijk te maken zijn er aanvullingen op HTML ontwikkeld, waarvan PHP de bekendste is.

Andere technieken zijn:

ASP
JSP
Coldfusion

De syntaxis van PHP vertoont overeenkomsten met die van C, Java en Perl. De betekenis van de afkorting PHP heeft in de loop der tijd een verandering ondergaan. In eerste instantie betekende het Personal Home Page Tools, maar tegenwoordig wordt meestal de aanduiding PHP: HyperText Preprocessor gebruikt. PHP-documenten hebben meestal de extensie .php.

Een preprocessor voert eerst een bewerking uit op een webpagina voordat hij naar de browser wordt gestuurd.

HTML-bestand
Overigens merkt de bezoeker van een website niet of er naast HTML ook PHP in de website is verwerkt. Het resultaat dat naar de browser op de client wordt gestuurd, is namelijk een HTML-bestand. Vaak zijn de gegevens afkomstig uit een database. PHP is goed in staat gegevens uit een database te halen en deze op te nemen tussen de HTML-code die naar de client wordt gestuurd. Dit is ook het dynamische aspect van PHP: afhankelijk van wat de internetgebruiker wil, worden verschillende gegevens uit de database geselecteerd.

Zoekmachine
Denk bijvoorbeeld aan het gebruik van een zoekmachine: zonder PHP zou dit niet mogelijk zijn. Op basis van de ingevoerde zoekterm wordt het overzicht van websites samengesteld, afkomstig uit een immense database.

Omdat PHP een aanvulling op HTML is, is kennis van HTML voor de PHP-programmeur een vereiste.
 
 
PHP is ontwikkeld als ‘open source’ product. Dit betekent dat de broncode vrij is verspreid en aangepast mag worden (net als bijvoorbeeld Linux).

Hieronder staat een voorbeeld van PHP-code, waarbij duidelijk te zien is dat er tussen de HTML-code een ‘PHP-blok’ is opgenomen. De resulterende webpagina is in de figuur eronder zichtbaar.


 Het resultaat van het ‘PHP-blok’ is de datum van vandaag.
 

09-12-2009 om 14:28 geschreven door mankuiper  

0 1 2 3 4 5 - Gemiddelde waardering: 0/5 - (0 Stemmen)
10-11-2009
Klik hier om een link te hebben waarmee u dit artikel later terug kunt lezen.Informatica voor dummies
Computergeneraties      © Instruct
'Nulde generatie': mechanische rekenmachine
 Het ontstaan van de pc.
 
Charles Babbage wordt beschouwd als de grondlegger van de computer. Hij ontwierp in 1833 een mechanische rekenmachine, de Difference Engine, die kon optellen. In werkelijkheid heeft de Difference Engine overigens nooit gewerkt.

 De rekenmachine van Babbage.
In 1880 vond er in de VS een volkstelling plaats. Men ging op zoek naar mogelijkheden om de resultaten hiervan zo efficiënt mogelijk te verwerken. In het kader hiervan vond Herman Hollerith de ponskaart uit, waarmee men op een relatief gemakkelijke manier gegevens kon invoeren.
Het bedrijf dat Hollerith in 1896 oprichtte, bestaat nog steeds! Sinds 1924 is het bekend onder de naam International Business Machines Corporation, oftewel IBM.
Een ponskaart is een kaart waarin op bepaalde plaatsen gaatjes geponst zijn. Via deze gaatjes werden aan de computer instructies gegeven.

 Een ponskaart.
Weliswaar is de ponskaart uitgevonden vóór de eerste generatie computers, maar de kaart heeft tot begin jaren tachtig dienst gedaan. Dat betekent dat hij ook werd gebruikt bij de volgende computergeneraties.
In de tweede helft van de twintigste eeuw kwam de ontwikkeling van de computer pas goed op gang. Als gevolg van de vorderingen op het gebied van de techniek en de elektronica kwamen er steeds meer mogelijkheden, met als uiteindelijke resultaat de computer zoals wij die nu kennen. We kunnen de computers indelen in zogenoemde computergeneraties.

 
  Eerste generatie: radiobuizen

De eerste generatie computers dateert uit de tijd van 1940 tot ongeveer 1955 en was gebaseerd op elektronenbuizen (radiobuizen) als schakeleenheden. Wanneer je een radio uit grootmoeders tijd openmaakt, zie je deze zelfde 'lampen' zitten. De computers van de eerste generatie hadden de afmeting van een flink klaslokaal. De snelheid en de prestaties waren voor die tijd geweldig, maar vergeleken met de eerste pc’s minimaal.

Ter vergelijking: het aantal instructies per seconde bedroeg ca. 102 (nu meer dan 109) en het geheugen 10 KB (nu enkele gigabytes).

 De eerste generatie computers werkte met elektronenbuizen.
 
  Tweede generatie: transistors



Artikel van Automatisering Gids: 
"Misser in transistortheorie blokkeert miniaturisering"

Transistors deden hun intrede rond 1955; ze vervingen de radiobuizen. Een transistor heeft twee voordelen boven een radiobuis: hij is kleiner en vraagt minder energie.

De eerste grootschalige toepassing van transistors was in draagbare radio's. Voor een radio met radiobuizen moest je de energie van het elektriciteitsnet betrekken, met een draagbare transistorradio had je aan een aantal batterijen genoeg. Computers van de tweede generatie maakten gebruik van transistors. Ze zijn sneller en kleiner dan die van de eerste.

 Een transistor.
 
  Derde generatie: IC's



De computers van de derde generatie (vanaf midden jaren ’60) konden flink kleiner worden doordat de schakeleenheden opnieuw sterk verkleind werden. Het zogeheten integrated circuit (IC) deed zijn intrede. Dit is een andere term voor de chip: een dun schijfje siliciumoxide van enkele vierkante millimeters, met daarop zeer kleine schakelingen van transistoren. Deze zijn erop gedampt en dus geïntegreerd.

 
  Vierde generatie: microprocessorchips
 


Halverwege de jaren ’70 doet de microprocessorchip zijn intrede en hiermee wordt een nog verdere verkleining bereikt. Hierdoor is het mogelijk op één chip een complete processor te realiseren. Als je een computer van de vierde generatie openmaakt, zie je dat de elektronica maar een klein gedeelte van de inhoud beslaat. De opkomst van de personal computer, vanaf 1981, werd mogelijk dankzij deze voortschrijdende verkleining. De computers van eerdere generaties waren namelijk allesbehalve persoonlijk. Dit zorgde voor een grote verandering in de wijze waarop computers gebruikt werden.

 Een illustratie van de voortschrijdende verkleining: een microprocessor naast enkele punaises.

Soorten computers      © Instruct

www.computermuseum.li: 
heel veel informatie over de geschiedenis van de computer.
Naast de verschillende generaties kunnen we vier soorten computers onderscheiden: de supercomputer, het mainframe, de minicomputer en de microcomputer, oftewel de pc. Elk van deze computers heeft zijn specifieke eigenschappen en mogelijkheden, die we hierna kort bespreken.

 
  Supercomputers
 

Waarvoor wordt de snelste computer ter wereld gebruikt?:
www.howstuffworks.com 

Top 500:
www.top500.org

Artikel van Automatisering Gids: 
"De petaflops-barrière is doorbroken" 

Artikel van Computer Idee: 
"Supercomputer net zo krachtig als 2 miljoen laptops"

Supercomputers zijn de krachtigste en snelste computers die gemaakt worden. Ze worden vooral gebruikt voor gecompliceerde berekeningen. Hierbij moet je denken aan:

ruimtevaartprojecten
wetenschappelijk onderzoek
weersvoorspellingen
Dit betekent dat je zulke computers vooral aantreft bij universiteiten, meteorologische instituten en multinationals. In Nederland zijn maar weinig van dit soort computers aanwezig, naar schatting minder dan tien.
Supercomputers kunnen miljarden instructies per seconde uitvoeren. Bovendien maken ze gebruik van zogeheten parallelle verwerking. Hierbij vinden op hetzelfde moment verschillende bewerkingen naast elkaar plaats, die stuk voor stuk vaak een enorme rekencapaciteit vergen.

In plaats van parallelle verwerking wordt ook wel de termMPP gebruikt. MPP is mogelijk wanneer de computer over een groot aantal processors beschikt.
 
Mainframes zijn eveneens zeer krachtige en snelle computers. Ze zijn in staat om verschillende programma’s tegelijkertijd uit te voeren. Tenminste, dat lijkt zo: in werkelijkheid krijgen de programma’s na elkaar een kort moment toegewezen om een bewerking uit te voeren, zodat honderden gebruikers op hetzelfde moment op een mainframe kunnen werken.

We spreken in dit verband van time sharing: de processor verdeelt zijn tijd over een groot aantal gebruikers en programma’s. Er wordt korte tijd aandacht aan een programma besteed, waarna een volgend programma aan de beurt is.

 Een mainframe van IBM uit de jaren ‘60.
Mainframes zijn ontworpen om grote hoeveelheden gegevens snel te verwerken. Banken gebruiken bijvoorbeeld een mainframe voor het bijhouden van de gegevens van bankrekeningen. Deze computersystemen worden meestal toegepast in organisaties waar de klantenbestanden een belangrijk bedrijfskapitaal vormen. De betrouwbaarheid van deze computers en hun besturingssystemen zorgt ervoor dat bedrijven als banken en verzekeringsmaatschappijen in deze systemen blijven investeren.

In veel bedrijven worden de mainframes met de erop draaiende software beschouwd als zogeheten legacy-systemen. Hiermee wordt bedoeld: verouderde systemen die men niet probleemloos kan moderniseren omdat dan het risico bestaat dat essentiële bedrijfsgegevens verloren gaan.
 
  Minicomputer
 

Minicomputers, ook wel bekend onder de naam midrangecomputer, zijn kleiner en minder krachtig dan een mainframe. Het aantal mensen dat tegelijk op een minicomputer werkt, blijft meestal beperkt tot enkele tientallen. Minicomputers worden bijvoorbeeld gebruikt bij procesbesturing in fabrieken. Dit type computer wordt ook vaak als netwerkserver ingezet. De kans is groot dat de administratie van jouw school er ook mee werkt.
 
  Microcomputer


Een microcomputer, beter bekend onder de naampc, wordt veel gebruikt voor tekstverwerking, boekhoudprogramma’s, tekenprogramma’s, surfen op het internet, enzovoort. Programma’s worden in de systeemeenheid van de pc verwerkt. Vaak worden de gegevens ook op die pc opgeslagen. Als de pc deel uitmaakt van een netwerk, kunnen gegevens ook centraal opgeslagen worden.

Door verbetering van de technische mogelijkheden worden microcomputers steeds sneller en nemen de toepassingsmogelijkheden toe. Als gevolg hiervan worden ze steeds vaker gebruikt op plaatsen waar voorheen een minicomputer of mainframe ingezet werd.

Gordon Moore, een van de oprichters van chipsfabrikant Intel, stelde in de jaren ’60 dat het aantal transistors dat op een chips geplaatst kan worden iedere achttien maanden verdubbelt. Dit houdt in dat ook de capaciteit van de processor iedere anderhalf jaar verdubbelt. Tot nog toe heeft Moore gelijk gekregen. Dit principe staat bekend als de Wet van Moore.
Niet alleen in het bedrijfsleven is de pc populair, ook in de meeste huishoudens treffen we er een of meer aan.

 
  Notebook (laptop)
 
Artikel van Computable: 
"De negen nadelen van een notebook"

Artikel van ZDNet: 
"Een op de vijf laptops is een netbook"

Artikelen van Webwereld: 
"Laptop viert verjaardagsfeestje" 
"Laptops nu wereldwijd beter verkocht dan desktops"

Een bijzondere variant van de pc is de draagbare computer: de notebook (ook bekend onder de naam laptop). Een notebook weegt zo’n 2 tot 4 kilo. Met behulp van oplaadbare batterijen (accu’s) wordt het apparaat van stroom voorzien.

Op veel kantoren kan de notebook op het computernetwerk worden aangesloten, zodat er gegevens uitgewisseld kunnen worden.

 
  PDA
 

Een nog kleinere computer is dePDA, die de grootte heeft van een forse mobiele telefoon en vaak ook gebruikt kan worden als mobiele telefoon. Je komt ook wel de term handheld tegen. Enkele populaire toepassingen van zo’n apparaatje zijn:

agenda- en relatiebeheer
beperkt tekstverwerken
als rekenmachine
Als er een draadloze verbinding met het internet mogelijk is, kan met een PDA ook e-mail worden gelezen en worden gesurft. PDA’s hebben soms een piepklein toetsenbordje en in andere gevallen werken ze met een aanraakscherm.
Omdat het apparaat zo klein is, zijn het geheugen en de capaciteit van de harde schijf natuurlijk beperkter dan bij een pc. Er wordt ook een ander besturingssysteem gebruikt, voorbeelden zijn Symbian en Windows CE.

Bij vrijwel alle PDA’s is het mogelijk om te synchroniseren met de gegevens op pc’s. Dit houdt in dat je veranderingen in bijvoorbeeld je agenda kunt doorvoeren op de agenda van de gewone pc. Dit kan via een zogenoemd docking station plaatsvinden, maar ook draadloos.

 Een PDA in een docking station.

Computerarchitectuur      © Instruct
Geheugen


 Computerarchitectuur 



Voorbeeld: game
Stel je voor dat je op een computer een autorace-spel speelt. De computer moet dan veel rekenwerk verrichten. De processor moet uitrekenen waar de puntjes op het scherm moeten worden gezet om de auto af te beelden. Als je naar links of naar rechts stuurt, moet hij weer opnieuw beginnen. Ondertussen moet hij ook berekenen hoe de andere auto’s rijden en ook die moeten op het scherm weergegeven worden. Ook het publiek, de achtergronden en geluidseffecten moeten berekend worden. Al met al heeft de processor het aardig druk.

Geheugen is daarbij om twee redenen noodzakelijk:

De processor kan niet zelf verzinnen wat hij moet doen. Het programma – in dit geval het spelprogramma – bevat een lijst met duizenden of zelfs miljoenen opdrachten die de processor moet uitvoeren. Er staat in wat er moet gebeuren als je naar links stuurt, als je niets doet, als je botst, enzovoort. De processor moet deze instructies kunnen lezen.
De processor moet kunnen ‘zien’ wat de uitkomsten van eerdere berekeningen waren. Als door een botsing de auto beschadigd raakt, moet de processor weten dat deze nu minder goed stuurt. Op het moment dat je naar links stuurt, moet de processor weten waar op dat moment de auto is.
Kortom: bij verwerking van gegevens zijn de processor en het (interne) geheugen erg belangrijk.
Nodig voor verwerking
Uit dit voorbeeld blijkt dat voor het verwerken van invoer minstens het volgende nodig is:

Een programma, met opdrachten die de computer moet uitvoeren.
Een processor, om de opdrachten uit te voeren.
Geheugen, om het programma en de gegevens tijdens de verwerking tijdelijk in op te slaan.
In dit gedeelte van de theorie behandelen we de twee rode vlakken: het interne geheugen en de centrale verwerkingseenheid.

 Opbouw en werking van de computer



 Het schema van invoer, verwerking, uitvoer; hier staan het interne geheugen en de CPU centraal.1 - Bits en bytes      © Instruct
Nullen en enen

Over bits en bytes:
www.howstuffworks.com 


Hoe ‘weet’ de computer wat er bedoeld wordt als je bijvoorbeeld een ‘A’ op het toetsenbord indrukt? Iedere toets die ingedrukt wordt, genereert een combinatie van acht stroomstootjes. Zo'n stroompje kan van een hoge spanning zijn of van een lage spanning:

De hoge spanning geven we voor het gemak aan met een 1.
De lage spanning geven we aan met een 0.
Iedere 0 of 1 wordt eenbit genoemd. Een combinatie van 8 bits noemen we een byte. Ieder teken dat de computer verstuurt of opslaat omvat één byte.

Sinds de eerste computers worden acht bits bij elkaar gegroepeerd. ‘Per acht’ is in het Engels by eight. Als je dat snel uitspreekt, begrijp je waarom we van byte spreken
Code
Voor het versturen van gegevens en opdrachten is er een code nodig. Het volgende voorbeeld illustreert dat.

Stel dat we beschikken over acht lampjes waarmee we getallen willen laten zien. De gemakkelijkste manier is: 0 (alle lampjes uit) tot en met 8 (alle lampjes aan).

Dit zouden van boven naar beneden de getallen 0, 3 en 8 zijn.
Op deze manier kun je slechts de getallen 0 tot en met 8 weergeven. Als je grotere getallen wilt afbeelden, heb je meer lampjes nodig. Het is daarom veel slimmer om combinaties te maken. In feite spreek je hiermee een code af.
Bijvoorbeeld:

De getallen 1 t/m 8 en het getal 100 in een code.
Het wel of niet branden van een lampje, met andere woorden ‘wel of geen stroom’, kun je ook aangeven met 1 of 0. Het getal 6 kun je volgens de afgesproken code dan ook noteren als: 00000110.  
 

2 - ASCII-code      © Instruct


Hier vind je een complete ASCII-tabel:
www.ascii.nl


 Talstelsels (Logica) 


Onderdelen van een computer en computers onderling communiceren met een soortgelijke code.
Als er stroom door een draad loopt, beschouwt de computer dit als een 1.
Loopt er geen stroom door, dan beschouwt de computer dit als een 0.
Met een groep van acht bits kun je 256 verschillende combinaties van nullen en enen maken. Deze 256 combinaties worden gebruikt voor:

de getallen 0 tot en met 9;
de letters a tot en met z;
de letters A tot en met Z.
Dan houd je er nog 256–10–26–26 = 194 over voor allerlei andere tekens zoals + , ).

De afgesproken codering staat bekend als deASCII-code. Het is de standaardcode voor het uitwisselen van gegevens. Het maakt niet uit of die uitwisseling binnen één computersysteem of tussen computersystemen gebeurt.

ASCII-tabel
Welke code bij welk teken hoort, kun je aflezen in een ASCII-tabel. In zo'n tabel is een teken gekoppeld aan een bepaalde decimale waarde. Om de binaire code van een teken te vinden moet je het decimale ASCII-getal omrekenen naar het overeenkomstige binaire getal.

Hieronder zijn enkele tekens uit de ASCII-set afgebeeld. Je ziet het desbetreffende teken, gevolgd door de binaire waarde en de decimale waarde.
A: 0100 0001 (=65) a: 0110 0001 (=97)
B: 0100 0010 (=66) b: 0110 0010 (=98)
C: 0100 0011 (=67) c: 0110 0011 (=99)
Ä: 1100 0100 (=196) ë: 1110 1011 (=235)
ASCII is van oorsprong een 7-bits code met 128 verschillende mogelijkheden (27). De meeste computers werken echter met bytes, dus 8-bits codes. In diverse landen bestond behoefte aan extra tekens, bijvoorbeeld aan letters met accenten en valutatekens. (In het overzichtje hierboven bijvoorbeeld Ä en ë). Door ook het 8e bit te gebruiken kon men het aantal mogelijkheden verdubbelen tot 256. 
Zo ontstonden de zogeheten extended ASCII-tekensets. Helaas zijn er diverse uitbreidingen ontwikkeld en is 'extended ASCII' niet één bepaalde standaard.
 
3 - Unicode      © Instruct

De officiële site (het Nederlandse deel):
unicode.org
ASCII is wel de meest gangbare, maar niet de enige codering. Doordat veel karakters door de beperking van 256 tekens niet weergegeven kunnen worden – denk alleen al aan alle Chinese karakters – heeft men een veel uitgebreidere codeset ontwikkeld. Dit werdUnicode.

Unicode biedt ruimte aan honderdduizenden verschillende karaktertekens, waarvan er zo’n 40.000 zijn vastgesteld. Met dit aantal kunnen alle geschreven talen bestreken worden, evenals bijvoorbeeld wiskundige symbolen en valutatekens. Met Unicode kunnen ook verschillende schriftsoorten in één document worden opgenomen, iets wat ASCII niet toelaat.

Bij ASCII geldt dat één byte één karakter vertegenwoordigt, maar bij Unicode is hiervan geen sprake. Hoeveel bytes een code inneemt, is niet vastgelegd. Wel bestaan er standaarden om de karaktersets in series bytes op te kunnen slaan (zoals UTF-8 en UTF-16).

Overigens zijn nog lang niet alle computers en software in staat Unicode te begrijpen.

 
4 - Kilobytes en meer      © Instruct
In het interne geheugen van de computer wordt de waarde van de bits opgeslagen en als wij daarvoor opdracht geven, wordt deze ook in het externe geheugen (bijvoorbeeld een harde schijf) vastgelegd. In het interne en externe geheugen kunnen miljoenen bytes worden opgeslagen.

 
  SI-stelsel: verouderd!

Meer over tera, giga, mega e.d.:
www.nmi.nl 


Net zoals we grote afstanden niet in centimeters of meters uitdrukken, drukken we de capaciteit van geheugens niet in bytes uit, maar in kilobytes of – nog gebruikelijker – in megabytes of gigabytes. In de tabel zie je om hoeveel bytes het daarbij gaat. Deze tabel is gebaseerd op het zogeheten SI-stelsel.

Afkorting Aantal bytes Aantal bytes (volgens SI)
1 byte  1  1
1 KB (kilobyte)  1.024  1.000
1 MB (megabyte)  1.048.576  1.000.000
1 GB (gigabyte)  1.073.741.824  1.000.000.000
1 TB (terabyte)  1.099.511.627.776  1.000.000.000.000
 
  IEC-stelsel
 

Computers werken met nullen en enen en daardoor heb je te maken met het binaire of tweetallige stelsel. Getallen worden uitgedrukt in machten van 2. Zo is 1024 bytes gelijk aan 210 bytes (2x2x2x2x2x2x2x2x2x2). Omdat 1024 en 1000 zo dicht bij elkaar liggen, zeggen we meestal dat 1024 bytes gelijk is aan 1 kilobyte (1 KB). Hetzelfde geldt voor de andere eenheden (zie de tabel).

Dit spraakgebruik blijkt echter voor steeds meer verwarring te zorgen omdat niet duidelijk is of de precieze grootte bedoeld wordt, of de afgeronde SI-getallen. Het RAM-geheugen in een computer wordt bijvoorbeeld in megabytes van 1024×1024 byte aangegeven, maar de capaciteit van harddisks wordt in gigabytes van 1000×1000×1000 byte opgegeven.

Om aan deze onduidelijkheid een einde te maken heeft men aan het eind van de vorige eeuw een nieuwe standaard in het leven geroepen. Deze is ontwikkeld door deIEC.

Men heeft besloten dat de bestaande voorvoegsels kilo, mega, giga en tera gebruikt worden voor machten van 10. Een megabyte is daarmee 1.000.000 bytes (106). Een hoeveelheid van 1024x1024 (220) bytes wordt nu mebibyte genoemd. De letters 'bi' duiden op 'binair'.

De volgende tabel geeft het complete overzicht.

Afkorting Aantal bytes
1 byte  1
1 Ki (kibibyte)  1.024
1 Mi (mebibyte)  1.048.576
1 Gi (gibibyte)  1.073.741.824
1 Ti (tebibyte)  1.099.511.627.776
 
  

  - Het interne geheugen      © Instruct
 Standaardonderdelen in de computer


Bekijk hier een video over de inhoud van de systeemkast:
howstuffworks.com
Gegevens zijn voor een computer niets anders dan afzonderlijke reeksen van enen en nullen. Wat komt er allemaal kijken bij de verwerking van die enen en die nullen? We nemen een kijkje in het inwendige van een computer om te ontdekken welke rol de diverse onderdelen spelen bij de verwerking.

 Een geopende systeemkast van een towermodel.
    
  Intern geheugen
 
In het interne geheugen van een computer worden gegevens en instructies voor de verwerking bewaard en deze worden doorgegeven aan de processor. De processor vormt het hart van een computer, maar de processor kan alleen wat doen als hij instructies krijgt. Deze instructies krijgt hij in de vorm van programma’s. Voordat de processor deze instructies kan verwerken, moeten de programma’s in het geheugen worden geladen.

Het interne geheugen bestaat uit twee soorten geheugenchips:

ROM
RAM
 
  ROM

Meer over het BIOS:
www.howstuffworks.com

Het zogeheten Read Only Memory is een gedeelte van het interne geheugen waarin gegevens staan die alleen gelezen (‘read only’) kunnen worden. Het ROM speelt een grote rol tijdens het opstarten van de computer. Er wordt bijvoorbeeld aan de computer opgedragen om een aantal hardwaretests uit te voeren. Ook het instellen van de belangrijkste onderdelen, zoals de harde schijf en de grafische kaart, gebeurt met behulp van instructies uit het ROM. Verder wordt opdracht gegeven tot het laden van de eerste onderdelen van het besturingssysteem.

De gegevens in het ROM-geheugen worden niet gewist, ook niet als de pc wordt uitgezet.

EEPROM
De chips die je in het ROM aantreft, zijn meestalEEPROM's. Net als de USB-stick is een EEPROM een vorm van flashgeheugen: door middel van elektrische spanning kunnen gegevens gewist worden en nieuwe gegevens toegevoegd. Als je de harde schijf vervangt of het interne geheugen uitbreidt, moeten de EEPROM’s aangepast worden. Op die manier kan de computer op de hoogte gebracht worden van bijvoorbeeld een geheugenuitbreiding of een nieuwe harde schijf. Bij het opstarten is dit natuurlijk van belang.

Het lijkt tegenstrijdig: read-only geheugen dat wel gewist en aangepast kan worden. Het read-only aspect heeft echter vooral betrekking op het feit dat de computer bij het opstarten alleen leest uit het ROM. Als de nieuwe hardware door middel van flashen eenmaal ‘bekendgemaakt’ is aan de EEPROM’s, blijven deze tijdens het opstarten onveranderd; dit in tegenstelling tot het RAM.

 Een EEPROM op het moederbord.
 BIOS (Architectuur) 
Belangrijke zaken die via het ROM worden bewaard of uitgevoerd, zijn:

BIOS. Dit omvat de gegevens die de computer nodig heeft om met de belangrijkste randapparaten (harde schijf, toetsenbord en dergelijke) te kunnen werken.
POST. Wanneer de computer opstart, worden de processor, het geheugen en een aantal andere zaken getest. Deze tests worden samen POST genoemd. Het POST-programma wordt in gang gezet door het BIOS.
Setup. Door tijdens het opstarten van de computer een bepaalde toets of toetsencombinatie in te drukken kom je in de ‘Setup’: een programma dat allerlei menu’s op het scherm weergeeft. Met deze menu’s kun je de gegevens in het BIOS op een eenvoudige manier veranderen. De nieuwe instellingen kunnen vervolgens naar de EEPROM worden weggeschreven.
De naam van de chip waarin de BIOS-gegevens opgeslagen worden, is CMOS. Dat staat voor Complementary Metal Oxid Semiconductor. Die naam slaat op het materiaal waarvan de chip gemaakt is en is eigenlijk nogal onzinnig: de meeste andere chips zijn van hetzelfde materiaal gemaakt.

BIOS aanpassen
Er zijn dus twee mogelijkheden om de gegevens in het BIOS aan te passen:

Via het Setup-programma. Hier kun je instellingen aanpassen. De keuze uit de instellingen ligt vast in het BIOS; je kunt dus alleen kiezen wat aangegeven is.
Door middel van flashen. Het kan voorkomen dat de keuze die jij wilt maken niet in de Setup wordt aangeboden. In dat geval moet je de software van het BIOS geheel vervangen.
   RAM
 Geheugenmodules en geheugenbanken (Architectuur) 



Random Access Memory is het gedeelte van het interne geheugen waarin tijdelijk gegevens en instructies worden opgeslagen. Het wordt ook wel het werkgeheugen van de computer genoemd. Er zijn twee belangrijke verschillen met ROM:

De gegevens die in het RAM staan, veranderen doorlopend.
De gegevens in het RAM gaan verloren als de pc wordt uitgezet. Dus ook als de stroom uitvalt! Ben je op dat moment ergens mee bezig zonder dat er tussentijds iets opgeslagen is, dan ben je het gemaakte werk kwijt. We noemen het RAM dan ook een vorm van vluchtig geheugen; het ROM is niet-vluchtig, oftewel persistent.
In het dagelijkse spraakgebruik is het interne geheugen synoniem met het RAM.
Capaciteit
De capaciteit van het interne geheugen wordt uitgedrukt in gigabytes. De grootte van het interne geheugen is belangrijk: hoe meer gegevens daarin opgeslagen kunnen worden, hoe sneller de computer kan werken.

Als het interne geheugen te klein is, zal de processor de benodigde gegevens van en naar de harde schijf moeten halen en brengen. Dat kost meer tijd omdat de toegangstijd van de harde schijf veel groter is dan van het geheugen.

 

2 - Het moederbord      © Instruct

Meer over het moederbord:
www.howstuffworks.com

De pc’s van tegenwoordig worden hoofdzakelijk als towermodel geleverd. Aan een van de zijkanten van een towermodel bevindt zich een grote printplaat. Hierop is een doolhof van chips, koperen leidingen en aansluitpunten voor onderdelen aangebracht. Deze plaat wordtmoederbord genoemd.

De belangrijkste functie van het moederbord is dat het alle andere onderdelen met elkaar verbindt. De processor, het geheugen, de harde schijf, het diskettestation en de cd/dvd-speler worden niet direct met elkaar verbonden, maar worden op de bedrading van het moederbord aangesloten.

Een foto (van boven) en een schematische weergave van een moederbord.
Alle onderdelen waarvan de computer gebruik maakt, moeten (direct of indirect) met het moederbord verbonden zijn. Anders kan de processor ze niet besturen. De uitgangen aan de achterkant van de computer (waarop de monitor, het toetsenbord en andere apparaten aangesloten kunnen worden) zijn dus de ‘stopcontacten’ van het moederbord.



3 - De Central Processing Unit (CPU)      © Instruct
Multicore

Artikel uit Computable: 
"Multicore processor stuwt energieverbruik servers" 

     
De Central Processing Unit is het hart van de pc: deze bestuurt het hele computersysteem. Als Nederlandse term hoor je wel eens 'centrale verwerkingseenheid' (CVE).

Tegenwoordig is de CPU een zogeheten multicore processor. Het Engelse woord 'core' betekent 'kern'; de processor bestaat dus als het ware uit diverse kernen, die apart instructies kunnen verwerken. Hierdoor kan multitasking een stuk sneller verlopen. Momenteel zijn processors met vier kernen gangbaar; deze worden quad core genoemd.

Twee voorbeelden van quad core processors:

Intel Core 2 Quad
AMD Opteron 64
 De AMD Opteron 64.
Bij een mini, mainframe of supercomputer zijn er doorgaans verschillende processors die voor de verwerking zorgen. We spreken dan van multiprocessorsystemen. Dit is niet hetzelfde als een multicore processor!
Een processor uitrusten met meerdere kernen heeft als voordeel dat er tegen geringe kosten behoorlijk wat snelheid gewonnen kan worden. Je kunt een oude processor gemakkelijk vervangen door een nieuwe met meer kernen. Daardoor wordt een computer voor relatief weinig geld een stuk sneller. Wel is het zaak de warmteontwikkeling in de systeemkast in de gaten te houden, want een multicoreprocessor verbruikt veel meer energie.
Ook moet erop gelet worden dat het besturingssysteem quad core ondersteunt.

   Taken van de CPU
 
De CPU regelt alle gegevensverwerking in de pc. Daarmee zorgt de processor voor de besturing van de computer én voor het uitvoeren van berekeningen.

In feite kun je de CPU splitsen in:

een besturingsorgaan
een rekenorgaan
 De processor als grote regelaar.
De taken van de processor zijn bijvoorbeeld:

het ophalen van instructies en gegevens uit het interne geheugen;
het laten uitvoeren van berekeningen door het rekenorgaan;
het opslaan van resultaten in het computergeheugen;
het regelen van de uitvoer van gegevens, bijvoorbeeld naar beeldscherm of printer.
 
   Snelheid van een processor

Artikel van Webwereld: 
"IBM stopt waterkoeling in de processor"


Of een processor ‘snel’ genoemd kan worden, heeft te maken met de snelheid waarmee hij gegevens verwerkt: deverwerkingssnelheid. Deze heeft betrekking op de hoeveelheid instructies die een computer in één seconde kan verwerken. Daarom wordt deze snelheid uitgedrukt inmips.

Behalve over de verwerkingssnelheid kun je bij een computer ook spreken van de kloksnelheid. Deze wordt bepaald door de klokchip, die een vast aantal malen per seconde een puls aan de processor geeft om (als een dirigent) alle verwerkingsstappen synchroon te laten lopen. Het aantal pulsen per seconde, dus de kloksnelheid, drukken we uit in Hertz (Hz).

De verwerkingssnelheid is dus iets anders dan de kloksnelheid. Voor het uitvoeren van een instructie zijn namelijk vaak meerdere pulsen van de klok nodig. Om hoeveel pulsen dit gaat, is afhankelijk van het type processor en het type instructie.

De kloksnelheid van moderne pc’s bedraagt meer dan 3 GigaHertz, dat wil zeggen 3.000.000.000 pulsen per seconde.

Ter vergelijking: de eerste consumenten-pc, die een 8088-processor bezat, had een kloksnelheid van 5-8 MHz!
 
   Cachegeheugen
 
De producenten van computers zijn voortdurend op zoek naar manieren om een processor sneller te maken. De toepassing van dual core, die hierboven genoemd is, is een methode om dit te bereiken. Ook de aanwezigheid van cachegeheugen draagt bij aan een snellere gegevensverwerking.

Het ophalen van instructies en gegevens uit het interne geheugen kost tijd. Die tijd kan verkort worden door de instructies en gegevens op te slaan in extra snel werkgeheugen, dat de processor rechtstreeks kan gebruiken en dat dicht bij die processor (of zelfs erin) zit. Dit noemen we het cachegeheugen van de processor. Door gebruik van het cachegeheugen worden de prestaties van de computer sterk vergroot. Het is wel een stuk duurder dan het gewone werkgeheugen.

    Pipelining
 
Het uitvoeren van een instructie kan aanmerkelijk versneld worden als de instructie wordt gesplitst in deelinstructies die elk in één klokpuls uitgevoerd kunnen worden. Deze deelinstructies worden sequentieel door een onderdeel van de processor uitgevoerd. Door nu de processor te voorzien van de mogelijkheid om deze deelinstructies parallel uit te voeren, neemt de efficiëntie per klokpuls toe.

Deze techniek wordt pipelining genoemd. Het onderdeel van de processor waar de instructies worden uitgevoerd heet pipeline stage.
 
   Branch prediction
 
Als een instructie in de ene pipeline stage moet wachten op de uitkomst van een andere pipeline stage, is pipelining niet zo effectief. Dit wordt opgelost door middel van branch prediction. Dit houdt in dat de processor vast ‘bedenkt’ welke instructie er volgt en deze ook vast uitvoert.

Als de voorspelling juist is, werkt de processor efficiënter.
Is de voorspelling niet correct, dan moet de processor de verkeerde instructie en de bijbehorende gegevens verwijderen en dat kost natuurlijk tijd.
Toch hoeft dit laatste niet zo vaak te gebeuren, want in zo’n 90% van de gevallen blijkt de voorspelling juist te zijn.  
 
4 - Bus      © Instruct
 
Historisch overzicht van bussen.


Om gegevens van het interne geheugen naar de processor of de randapparatuur te brengen, moet er een verbinding tussen die onderdelen zijn. Zo’n verbinding noemen we een bus. Zonder bus kunnen de onderdelen van de computer niet met elkaar communiceren. Wanneer je bijvoorbeeld via je toetsenbord een e-mailtje invoert, gaan de aanslagen (in de vorm van nullen en enen) via de bus naar de processor.

Een bus is dus een fysieke verbinding

tussen de processor en het interne geheugen óf
tussen de processor en de randapparatuur.
 
   Systeembus en I/O-bussen
 I/O, IRQ en DMA


De belangrijkste bus is de systeembus, ook wel local bus of front side bus (FSB) genoemd. Deze verbindt de processor met het interne geheugen. De andere bussen, die de communicatie tussen de randapparaten verzorgen, worden de I/O-bussen genoemd

Binnen de FSB (en ook binnen de I/O-bussen) onderscheiden we drie verschillende bussen:

de databus
de adresbus
de controlbus
Twee vormen
Bussen komen in twee vormen voor:

Als ‘voorgedrukte bedrading’ op een printplaat. Deze vormt bijvoorbeeld de verbinding tussen het interne geheugen en de processor.
Als een losse kabel, meestal een lintkabel. Hierdoor worden bijvoorbeeld intern en extern geheugen (harde schijf, cd/dvd) met elkaar verbonden.
Snelheid
Voor de snelheid van de verbinding zijn twee zaken van belang:

De lengte van de verbinding (in centimeters). Hoe korter de bus, hoe sneller de verbinding.
De busbreedte. Hieronder verstaan we het aantal bits dat tegelijk door de bus getransporteerd kan worden: 8, 16, 32 of meer.
 
   Databus
 

Over de databus worden de te verwerken gegevens verstuurd tussen de processor, het geheugen en andere apparaten. De snelheid waarmee de gegevens op de databus worden gezet, hangt af van de klokchip. Daarnaast geldt hoe breder de databus, hoe meer bits tegelijkertijd verstuurd kunnen worden en hoe sneller de computer werkt. De databus wordt ook wel processorbus genoemd.

De bus die momenteel het meest wordt toegepast isPCI-Express. Dit is een snelle verbinding die busmastering en plug-and-play ondersteunt:

Busmastering is de techniek waarbij gegevens van de ene kaart naar de andere worden verzonden zonder hulp van de processor.
Plug-and-play wil zeggen dat een aangesloten apparaat herkend wordt door het besturingssysteem zonder dat de gebruiker iets aan de instellingen hoeft te veranderen.
Oudere bustypen die je ook nog steeds tegenkomt zijn:

PCI – Dit is de tragere voorganger van PCI-Express.
ISA en EISA – DeISA-bus is een verouderde bus voor uitbreidingskaarten. Er zijn verschillende uitvoeringen verschenen. EISA, waarbij de E staat voor Extended, was de opvolger van ISA, maar ook deze standaard is verouderd.
Let op: aan het einde van een bus zit een slot, waarin de kaart gestoken wordt. Een PCI-kaart stop je dus in het PCI-slot van de PCI-bus.
 PCI-E-slots.
 
   Controlbus
 
Via de controlbus – die ook wel besturingsbus wordt genoemd – worden de aanwijzingen verstuurd hoe de gegevens van de databus verwerkt moeten worden, dus wat de processor ermee moet doen. De klokchip bepaalt de snelheid waarmee deze aanwijzingen worden gegeven.

    Adresbus
 
Wanneer via de databus gegevens verzonden worden, moet het moederbord weten waar deze gegevens naartoe moeten. Via de adresbus wordt het adres van de geheugenplaats meegestuurd. De breedte van deze bus is bepalend voor het maximale aantal plaatsen in het RAM dat geadresseerd kan worden en daarmee voor de maximale hoeveelheid geheugen die gebruikt kan worden.

 
   Uitbreidingen op bussen
 

SCSI en AGP zijn te beschouwen als uitbreidingen op de busstructuur. Beide zijn op dit moment wel verouderd.

SCSI
EenSCSI-kaart wordt op de bestaande busstructuur in de computer aangesloten. Op deze kaart kunnen vervolgens weer andere apparaten (vooral opslagmedia) worden aangesloten. De SCSI-kaart bevat een kleine processor, die de besturing van die aangesloten apparaten regelt en zorgt dat ze onderling kunnen communiceren.
AGP
DeAGP-bus is een uitbreiding die was bedoeld om afbeeldingen sneller op het beeldscherm te laten verschijnen. Deze bus biedt plaats aan een videokaart die AGP ondersteunt. AGP is grotendeels verdrongen door PCI-Express.
 
 


5 - De werking van de processor      © Instruct

Hier vind je informatie over de werking van de CPU: 
electronica.infonu.nl 


 Logische schakelingen 

Vrijwel alle bestaande computers werken volgens het Von Neumann-principe. Dit houdt in dat er een scheiding is tussen de verwerkingseenheid en het geheugen voor de opslag van instructies en gegevens. John Von Neumann was een Hongaarse wis- en natuurkundige die leefde in de eerste helft van de 20e eeuw.
Een computer doet niets zonder een programma. Een computerprogramma bestaat uit een groot aantal instructies die gedetailleerd beschrijven wat een processor moet doen. Een instructie kunnen we beschouwen als een nauwkeurig beschreven stap in een totaal van uit te voeren handelingen.

Een voorbeeld: wanneer we willen dat de computer twee getallen optelt, moeten deze getallen uit het interne geheugen worden opgehaald en – via de bussen – naar de processor worden gebracht. Het resultaat van de optelling moet uit de processor naar het interne geheugen worden overgebracht.

Twee soorten instructies
De processor verwerkt daarvoor twee soorten instructies:

Rekeninstructies
Hierbij gaat het niet alleen om rekenkundige bewerkingen zoals wij die kennen (optellen, aftrekken, vermenigvuldigen, enzovoort), maar ook om logische bewerkingen zoals vergelijken (is groter dan, is gelijk aan). De CPU is voortdurend aan het rekenen en vergelijken als hij bij het sorteren van een gegevensbestand bijvoorbeeld moet bepalen of mevrouw K.P. Oosterhof vóór de heer J.G. Miedema moet komen.
In- en uitvoerinstructies
In- en uitvoerinstructies vallen onder de besturingstaak van de CPU. Hierbij moet je denken aan het doorvoeren van gegevens van en naar het geheugen, bijvoorbeeld het opslaan van een document op de harde schijf.
Gezien deze twee soorten instructies is het goed te verklaren dat de CPU uit twee hoofdonderdelen bestaat:

het rekenorgaan, ook wel aan geduid met de termALU
het besturingsorgaan
Verder bevat de CPU speciale schakelingen, waaronder snelle registers voor tijdelijke opslag van instructies en gegevens.
 
   Registers
 
De belangrijkste registers in de CPU zijn:

het instructieregister, waarin de instructie staat die in behandeling is;
de program counter met het geheugenadres van de eerstvolgende instructie;
de rekenregisters, met getallen die voor berekeningen nodig zijn.
Deelinstructies 
Als de CPU een instructie uitvoert, kunnen we de volgende deelinstructies onderscheiden:

De uit te voeren instructie wordt opgezocht in het interne geheugen, in het instructieregister.
De eerstvolgende instructie wordt aangewezen en de program counter wordt verhoogd.
De instructie uit het instructieregister wordt geanalyseerd.
De instructie uit het instructieregister wordt uitgevoerd.
Het resultaat van de instructie wordt opgeslagen.
 Schematische voorstelling van de uitvoering van een instructie door de CPU.
Instructiecyclus
Deze vijf stappen noemen we de instructiecyclus. Deze cyclus wordt steeds herhaald totdat alle instructies van het programma zijn afgewerkt. De deelinstructies worden door middel van pipelining via het volgende schema afgewerkt:

Stage 1  1.1  1.2  1.3  1.4  1.5  5.1  5.2  5.3  5.4  5.5
Stage 2    2.1  2.2  2.3  2.4  2.5  6.1  6.2  6.3  6.4
Stage 3        3.1  3.2  3.3  3.4  3.5  7.1  7.2  7.3
Stage 4           4.1  4.2  4.3  4.4  4.5  8.1  8.2
Op deze wijze is de processor, als er vier pipeline stages zijn, op een gegeven moment met vier instructies tegelijkertijd bezig. Een probleem kan ontstaan als bijvoorbeeld instructie 7 afhankelijk is van het resultaat van instructie 4. Door middel van branch prediction wordt geprobeerd zoveel mogelijk te voorkomen dat onnodig aan een instructie wordt begonnen.
 

6 - Uitbreidingskaarten      © Instruct
 Bussen en uitbreidingskaarten

Uitbreidingskaarten of interfacekaarten zijn kaarten met daarop chips en leidingen, die zich grotendeels in de systeemkast bevinden (zie onderstaande figuur). Bij uitbreidingskaarten moet je bijvoorbeeld denken aan de netwerkkaart, waar de netwerkkabel in past. Op het moederbord zitten speciale gleuven waar deze kaarten in passen. Dit zijn deuitbreidingsslots.

 Een geopende systeemkast van een towermodel.
Het begrip ‘interface’ ken je waarschijnlijk uit de term 'grafische interface'. Het woord kent echter een ruimere betekenis; het is de gemeenschappelijke grens tussen twee systemen, bijvoorbeeld tussen een computer en de randapparatuur of tussen een computer en de gebruiker. 
In dat laatste geval kan er sprake zijn van een grafische gebruikersinterface, maar dat hoeft niet.
Veel functionaliteit die vroeger in een uitbreidingskaart zat, is bij moderne computers ingebouwd op het moederbord (oftewel ‘on board’). Toch worden er nog veel losse uitbreidingskaarten toegevoegd. Ze hebben als voordeel dat ze eenvoudig vervangen kunnen worden. Bovendien zijn ze kwalitatief vaak beter dan de ingebouwde standaardvoorziening.


Voor veel computergebruikers is de standaard ingebouwde grafische voorziening vaak niet voldoende om het beeld snel genoeg te laten opbouwen. Zij rusten hun computer dan uit met een extra grafische kaart. Zo’n grafische kaart, ook wel videokaart geheten, zorgt voor de gegevensstroom naar het beeldscherm. De aansluiting op deze kaart is zichtbaar aan de achterkant van de computer: hierop sluit je de monitor aan.

De kwaliteit van het beeld en de snelheid waarmee het beeld wordt opgebouwd, is sterk afhankelijk van de grafische kaart. Een nieuwe grafische kaart, met meer geheugen, kan de prestaties van de pc vaak aanzienlijk verhogen. Vrijwel elke computer is uitgerust met eenSVGA-kaart, met meer of minder mogelijkheden om gecompliceerde beeldopbouw van de CPU over te nemen.
 
   Geluidskaart
 
Ook de ingebouwde mogelijkheden om geluid voort te brengen worden niet door iedereen als voldoende beschouwd. Vandaar dat er nog regelmatig geluidskaarten in een uitbreidingsslot worden geplaatst, zeker door mensen die computerspellen spelen of vaak audio-cd’s afspelen. Op een geluidskaart worden de luidsprekers aangesloten. Hoe de geluidskwaliteit uiteindelijk is, is natuurlijk mede afhankelijk van de speakers.

 Twee uitbreidingskaarten (onderop een grafische kaart, bovenop een geluidskaart).
 
   Netwerkkaart
 

Hoewel ook deze voorziening tegenwoordig vaak on board wordt aangetroffen, bestaan er nog steeds netwerkkaarten. Zo’n kaart zorgt voor de verbinding tussen de pc en het netwerk indien de pc is opgenomen in een netwerk of aangesloten op het internet.
 
   PCMCIA-kaart
 
Hoewel dit type zijn langste tijd heeft gehad, noemen we hem nog wel. De PCMCIA-kaart, ook wel PC Card geheten, is speciaal voor laptops ontwikkeld en kan aan de buitenkant in de computer worden gestoken. Er zijn onder meer kaarten verkrijgbaar die als modem werken, of als extra geheugen.

De opkomst van het draadloze netwerk, de inbouw van netwerkkaarten en het gebruik van de USB-stick hebben deze kaart overbodig gemaakt.

 
7 - De chipset      © Instruct
 
Naast de processor zijn er enkele ondersteunende chips nodig om de computer vlot te laten werken. Deze chips horen bij elkaar en worden daarom chipset genoemd. De chipset speelt een belangrijke rol in het regelen van het verkeer over de bussen.

De chipset bestaat doorgaans uit twee aparte chips: de North bridge en de South bridge.

De North bridge regelt het verkeer tussen de ‘snelle’ onderdelen van een computer: tussen de CPU en het interne geheugen en de grafische kaart.
De South bridge zorgt voor communicatie met de relatief tragere componenten: het toetsenbord, de harde schijf, het diskettestation, de USB-poort en de PCI-E-slots.
Het onderstaande schema verduidelijkt een en ander. Hierin is tevens te zien dat de Front Side Bus de verbinding vormt tussen de CPU en de chipset.
De chipset bestaat uit de North bridge en de South bridge.
 
 
8 - Jumpers      © Instruct
 
Op elk moederbord zijn jumpers aanwezig. Vroeger moest je deze schakelaartjes met de hand omzetten, bijvoorbeeld als je een snellere processor had geplaatst. Tegenwoordig herkennen moederborden doorgaans zelf een nieuwe processor. Bovendien kunnen veel instellingen in het BIOS via een setup-programma in de CMOS-EEPROM worden aangepast.

Het handmatig omzetten van jumpers is dus steeds minder noodzakelijk. Ze worden nog wel gebruikt voor het instellen van de harde schijf.

 Een jumper; door het blokje over de twee pinnetjes te schuiven zorg je ervoor dat deze met elkaar worden verbonden.
 




10-11-2009 om 20:34 geschreven door mankuiper  

0 1 2 3 4 5 - Gemiddelde waardering: 0/5 - (0 Stemmen)
Klik hier om een link te hebben waarmee u dit artikel later terug kunt lezen.Deel 2
9 - Connectors     © Instruct

Hier vind je informatie over 'pinouts' van een groot aantal connectors:
pinouts.ws

Op de systeemkast vind je een aantal aansluitingen waarop randapparaten aangesloten kunnen worden. Deze aansluitingen worden connectors genoemd. Zo zijn er connectors voor de printer, voor communicatieapparatuur, voor muis en toetsenbord, voor een microfoon, enzovoort.

 
  De USB-aansluiting (Universal Serial Bus)



Een video over USB:
www.howstuffworks.com





 USB






 USB-standaard

Hoewel de aanduiding 'Universal Serial Bus' de indruk wekt dat we met een bus te maken hebben, behoort de USB-aansluiting toch echt bij het onderwerp 'Connectors' besproken te worden. Het gaat om een platte, rechthoekige aansluiting waaraan diverse randapparaten tegelijk gekoppeld kunnen worden, zoals een printer, scanner, camera, toetsenbord of muis.

Bekend is natuurlijk ook de USB-stick of memory stick: een extra geheugenmedium dat rechtstreeks op de USB-connector kan worden aangesloten.

Een groot voordeel van USB is dat het apparaat gekoppeld kan worden zonder dat het systeem opnieuw gestart hoeft te worden, de poort is wat we noemen hot-pluggable. De USB-kabel kan het aangesloten apparaat van stroom voorzien.

Links een USB-poort; in het midden een USB-plug en rechts een USB-stick.






Lees hier meer:
www.usb.org


Artikel van Automatisering Gids: 
"USB 3.0 begin 2010 in massaopslag"


USB 2.0
De snelste uitvoering van USB is versie 2.0, die inmiddels de verouderde versie 1.1 goeddeels heeft verdrongen. USB 2.0 ondersteunt in tegenstelling tot versie 1.1 hi-speed. Hi-speed apparaten zijn bijvoorbeeld een MP3-speler, een scanner of externe harde schijf. Deze apparaten hebben regelmatig veel data te versturen of te ontvangen, en krijgen dan een groot deel van de beschikbare capaciteit op de bus toegewezen.

Als er via deze poort één byte wordt verstuurd, gaan de bits één voor één (achter elkaar oftewel in serie) door de poort. We spreken daarom van een seriële poort.

On-the-Go
USB On-the-Go is een aanvulling op USB 2.0. Dankzij deze technologie kunnen mobiele apparaten via de USB-poort verbinding maken met pc's en randapparaten. Draagbare apparaten die voorzien zijn van OTG kunnen bovendien direct data overbrengen naar een ander randapparaat zonder verbinding te hoeven maken met een pc.
 
  LPT-poort

Voor de komst van USB, halverwege de jaren negentig, diende de LPT-poort voor het aansluiten van een printer. Deze printerpoort staat ook wel bekend als parallelle poort omdat er meerdere signalen tegelijk (parallel aan elkaar) verzonden kunnen worden.

Door de parallelle poort kunnen acht bits tegelijk (naast elkaar oftewel parallel) verstuurd worden. Dit betekent dat er steeds één hele byte tegelijkertijd de printerpoort verlaat. Dat lijkt snel, maar de snelheid waarmee de bits tegenwoordig achter elkaar door een USB-aansluiting gaan ligt nog veel hoger.

Op de LPT-poort wordt een brede connector aangesloten, die 25 gaatjes bevat. Hierin passen dus 25 pinnetjes.

 
  COM-poort

Deze seriële aansluiting bestaat (aan de computerkant) meestal uit negen en soms uit 25 pinnetjes. Zij werd gebruikt voor veel verschillende randapparaten, zoals muizen, scanners, modems en zelfs voor sommige printers, maar tegenwoordig beschikken deze apparaten vrijwel allemaal over een USB-connector.

De COM-aansluiting wordt ook wel genoemd naar zijn standaard: RS-232.

Misschien vraag je je af waarom een seriële aansluiting over maar liefst 25 pinnen beschikt. Een groot aantal hiervan wordt in beslag genomen door besturingssignalen.
 
  Andere aansluitingen
 

Miniplug-connectors zijn meestal te vinden op de geluidskaart. Ze zijn bedoeld voor stekkers zoals die van een koptelefoon en luidspreker. Vaak staan er merktekens bij om aan te geven wat er in moet.

Andere connectors zijn bedoeld voor het toetsenbord en de muis (als deze niet op de USB-poort worden aangesloten), het netsnoer, een netwerkkabel en een telefoonkabel.

 
 



 



10 - De voeding     © Instruct
 
Een ander onmisbaar onderdeel van een computer is de voeding met de bijbehorende ventilator.

De voeding voorziet een pc van stroom. De voeding zit samen met de ventilator in een afgesloten kastje: de voedingseenheid. Dit kastje vind je achter in de pc, zodat het netsnoer aan de achterkant in de daarvoor bestemde connector kan worden gestoken. Bij laptops werkt het anders: hier wordt de ingebouwde batterij via een extern voedingsblok, een adapter, van stroom voorzien.

De voeding en de ventilator.
Overigens produceren de snelle processors van tegenwoordig zoveel warmte dat de standaardkoeling van de pc onvoldoende is. Er wordt daarom een extra koelvoorziening ingebouwd om te voorkomen dat de CPU oververhit raakt.

10-11-2009 om 20:33 geschreven door mankuiper  

0 1 2 3 4 5 - Gemiddelde waardering: 5/5 - (1 Stemmen)


Inhoud blog
  • M3H2
  • M3H1
  • Samenvatting Hoofdstuk 5.2
  • Samenvatting Hoofdstuk 5.1
  • Informatica voor dummies
    Zoeken in blog

    Beoordeel dit blog
      Zeer goed
      Goed
      Voldoende
      Nog wat bijwerken
      Nog veel werk aan
     
    Archief per week
  • 22/03-28/03 2010
  • 07/12-13/12 2009
  • 09/11-15/11 2009

    E-mail mij

    Druk op onderstaande knop om mij te e-mailen.


    Gastenboek

    Druk op onderstaande knop om een berichtje achter te laten in mijn gastenboek


    Blog als favoriet !


    Blog tegen de wet? Klik hier.
    Gratis blog op https://www.bloggen.be - Meer blogs