3-lagen model: verschil tussen versies
Geen bewerkingssamenvatting |
|||
(12 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
Regel 43: | Regel 43: | ||
==== Betrouwbaarheid ==== | ==== Betrouwbaarheid ==== | ||
Fysische onderdelen zijn niet volledig betrouwbaar. Toch kun je een digitaal systeem zeer betrouwbaar maken. | Fysische onderdelen zijn niet volledig betrouwbaar. Toch kun je een digitaal systeem zeer betrouwbaar maken. Dit kan door middel van redundantie: je voegt | ||
Voor fysische onderdelen kun je het statistisch gedrag bepalen; bovendien is dit voor fysische onderdelen redelijk eenvoudig (bijvoorbeeld: een standaardverdeling).Dit is ook wat je gebruikt als je een brug ontwerpt, of een vliegtuig. | |||
De regels voor fysische processen en materialen zijn vaak continu: dit betekent dat je kunt werken met interpolatie en soms met extrapolatie. Als het werkt voor waarde A, en het werkt voor waarde B, dan werkt het ook voor de waarden tussen A en B. | |||
: Voor logische processen gaat dit niet op. | |||
Betrouwbaarheid kun je lokaal wel in grote mate bereiken. Deze wordt aanzienlijk minder als je systemen moet koppelen, en als je grote afstanden moet overbruggen. (Je kunt het ook anders zeggen: de kosten van betrouwbaarheid worden dan onaanvaardbaar groot, bijvoorbeeld doordat de snelheid sterk afneemt, en een minimale snelheid niet meer gegarandeerd kan worden.) | Betrouwbaarheid kun je lokaal wel in grote mate bereiken. Deze wordt aanzienlijk minder als je systemen moet koppelen, en als je grote afstanden moet overbruggen. (Je kunt het ook anders zeggen: de kosten van betrouwbaarheid worden dan onaanvaardbaar groot, bijvoorbeeld doordat de snelheid sterk afneemt, en een minimale snelheid niet meer gegarandeerd kan worden.) | ||
==== Informatie als vorm ==== | |||
Je kunt informatie beschouwen als vorm(en) - zonder in te gaan op de mogelijke betekenis. Dit is de aanpak in de Informatietheorie. | |||
Je kunt deze vormen altijd voorstellen als bits, zonder dat je daarmee aan algemeenheid verliest. Op deze bits kun je statistische analyses loslaten. Je kunt er ook logische bewerkingen op toepassen, bijvoorbeeld in de vorm van codering. | |||
Ook in de fysieke laag ben je alleen in de vorm (bits) geïnteresseerd. Wat deze vorm voorstelt is voor de fysieke laag niet relevant. | |||
Zie: | |||
* [[Vorm en betekenis]] | |||
==== De fysieke laag is universeel ==== | |||
De fysieke laag bewerkt, bewaart, en transporteert bits. Het maakt voor de fysieke laag niet uit wat deze bits voorstellen. Daarmee is de fysieke laag universeel. | |||
===== Verschil met klassieke informatiedragers ===== | |||
Voordat er sprake was van computers, hadden we met allerlei verschillende soorten informatiedragers te maken. Deze zijn veel minder universeel dan de digitale informatiedragers: | |||
* een boek bevat geschreven tekst, en mogelijk illustraties; | |||
* een | |||
In principe is een boek ook universeel: je kunt muziek of beeld ook in letters coderen. Maar in de praktijk heb je daar niets aan: (i) je hebt geen mogelijkheden om de letters in het boek om te rekenen in beeld of geluid; (ii) je hebt veel meer letters nodig dan er passen in een hanteerbaar boek. | |||
Een audio-CD is zou je ook als een universele drager kunnen zien, maar deze is daarvoor niet zo handig: het is een lange reeks van bits, met nauwelijks mogelijkheden voor adressering. Pas door het toevoegen van de mogelijkheden voor adressering, en voor het opslaan van meta-data (in de vorm van een filesysteem) is de CD een bruikbare universele informatiedrager geworden. | |||
===== Universeel gebruik van het internet ===== | |||
* [[Net neutraility]] - ofwel, tegen discriminatie van bits. | |||
=== Evolutie en variatie === | === Evolutie en variatie === | ||
Regel 60: | Regel 96: | ||
* Javascript is de "machinetaal" van het web: andere programmeertalen worden vertaald naar Javascript, zodat je deze talen kunt gebruiken in web-toepassingen. | * Javascript is de "machinetaal" van het web: andere programmeertalen worden vertaald naar Javascript, zodat je deze talen kunt gebruiken in web-toepassingen. | ||
== Vragen == | |||
* dit 3-lagen model is vooral een ICT-model (technologie en toepassingen). Welke relatie is er tot de wiskundige modellen? | |||
** voorbeelden van wiskundige modellen: Turing-machine; eindige automaat; | |||
* hoe verhoudt dit 3-lagen model zich tot: talen, machines, (het Franse model) | |||
[[Category: Concepten]] | [[Category: Concepten]] | ||
[[Category: Separation of concerns]] | [[Category: Separation of concerns]] | ||
[[Category: Denkwijzen]] |
Huidige versie van 11 nov 2014 om 09:41
Het 3-lagen model
Bij een ICT-systeem is er vaak sprake van een opbouw in lagen, waarbij deze lagen gescheiden worden door interfaces. In het bijzonder kunnen we de volgende lagen onderscheiden (van "top" naar "bottom"):
- toepassingen-laag (application layer)
- logische laag (logical layer), ook wel systeemsoftware
- fysieke laag (physical layer): hardware
Elementen van de toepassingen-laag zijn bijvoorbeeld:
- tekstverwerkers (Word, Google Doc, LaTeX);
- spreadsheet-programma's
- games
- apps
- browser
Elementen van de logische laag zijn bijvoorbeeld:
- operating system (Windows, Linux, OS X, iOS, Android)
- file systeem, resources, beveiliging, gebruikers, gebruikersinterface
- programmeertalen, compilers, en libraries
- database management systemen
- netwerksoftware (lokaal netwerk, internet, web)
Elementen van de fysieke laag zijn bijvoorbeeld:
- computer-hardware
- netwerk-hardware
- randapparaten (beeldscherm, toetsenbord, USB-stick, printer)
Logische laag en fysieke laag zijn universeel
De interface tussen de logische laag en de toepassingen zorgt ervoor dat de logische laag universeel is - en daarmee ook de fysieke laag.
Fysieke laag
Informatie heeft een fysieke representatie nodig; informatie-processen hebben fysieke resources nodig. Door deze in een aparte laag onder te brengen, kun je in de software abstraheren van veel eigenschappen van deze fysieke laag.
Je kunt niet van alle aspecten van de fysieke laag abstraheren. Zo moet je bijvoorbeeld rekening houden met:
- de beperkte snelheid van het datatransport - uitgedrukt in latency en throughput.
- de beperkte snelheid van rekenen van een enkele processor.
- de beperkte snelheid van data-opslag: wegschrijven en teruglezen
- geheugen-hiërarchie
- de energie die nodig is voor rekenen, opslag, en transport van data.
Betrouwbaarheid
Fysische onderdelen zijn niet volledig betrouwbaar. Toch kun je een digitaal systeem zeer betrouwbaar maken. Dit kan door middel van redundantie: je voegt
Voor fysische onderdelen kun je het statistisch gedrag bepalen; bovendien is dit voor fysische onderdelen redelijk eenvoudig (bijvoorbeeld: een standaardverdeling).Dit is ook wat je gebruikt als je een brug ontwerpt, of een vliegtuig.
De regels voor fysische processen en materialen zijn vaak continu: dit betekent dat je kunt werken met interpolatie en soms met extrapolatie. Als het werkt voor waarde A, en het werkt voor waarde B, dan werkt het ook voor de waarden tussen A en B.
- Voor logische processen gaat dit niet op.
Betrouwbaarheid kun je lokaal wel in grote mate bereiken. Deze wordt aanzienlijk minder als je systemen moet koppelen, en als je grote afstanden moet overbruggen. (Je kunt het ook anders zeggen: de kosten van betrouwbaarheid worden dan onaanvaardbaar groot, bijvoorbeeld doordat de snelheid sterk afneemt, en een minimale snelheid niet meer gegarandeerd kan worden.)
Informatie als vorm
Je kunt informatie beschouwen als vorm(en) - zonder in te gaan op de mogelijke betekenis. Dit is de aanpak in de Informatietheorie.
Je kunt deze vormen altijd voorstellen als bits, zonder dat je daarmee aan algemeenheid verliest. Op deze bits kun je statistische analyses loslaten. Je kunt er ook logische bewerkingen op toepassen, bijvoorbeeld in de vorm van codering.
Ook in de fysieke laag ben je alleen in de vorm (bits) geïnteresseerd. Wat deze vorm voorstelt is voor de fysieke laag niet relevant.
Zie:
De fysieke laag is universeel
De fysieke laag bewerkt, bewaart, en transporteert bits. Het maakt voor de fysieke laag niet uit wat deze bits voorstellen. Daarmee is de fysieke laag universeel.
Verschil met klassieke informatiedragers
Voordat er sprake was van computers, hadden we met allerlei verschillende soorten informatiedragers te maken. Deze zijn veel minder universeel dan de digitale informatiedragers:
- een boek bevat geschreven tekst, en mogelijk illustraties;
- een
In principe is een boek ook universeel: je kunt muziek of beeld ook in letters coderen. Maar in de praktijk heb je daar niets aan: (i) je hebt geen mogelijkheden om de letters in het boek om te rekenen in beeld of geluid; (ii) je hebt veel meer letters nodig dan er passen in een hanteerbaar boek.
Een audio-CD is zou je ook als een universele drager kunnen zien, maar deze is daarvoor niet zo handig: het is een lange reeks van bits, met nauwelijks mogelijkheden voor adressering. Pas door het toevoegen van de mogelijkheden voor adressering, en voor het opslaan van meta-data (in de vorm van een filesysteem) is de CD een bruikbare universele informatiedrager geworden.
Universeel gebruik van het internet
- Net neutraility - ofwel, tegen discriminatie van bits.
Evolutie en variatie
De interface tussen de fysieke laag en de logische laag zorgt ervoor dat de evolutie en variatie aan de kant de van de hardware onafhankelijk is van de evolutie en variatie aan de kant van de software. Dit betekent bijvoorbeeld dat de
Browser als platform voor toepassingen
De grens tussen de logische laag en de toepassingen verschuift regelmatig. Onderdelen die in veel toepassingen gebruikt worden, verschuiven naar het Operating System. Voor bestaande toepassingen is dit geen probleem, omdat het een uitbreiding van een interface betreft.
Een speciaal voorbeeld is de browser. Oorspronkelijk is dit een toepassing, waarmee je als gebruiker toegang krijgt tot de documenten in het web. Maar de browser wordt steeds meer het platform voor toepassingen in het web (web-applications). Hiermee wordt de browser onderdeel van de logische laag van web-toepassingen.
- Javascript is de "machinetaal" van het web: andere programmeertalen worden vertaald naar Javascript, zodat je deze talen kunt gebruiken in web-toepassingen.
Vragen
- dit 3-lagen model is vooral een ICT-model (technologie en toepassingen). Welke relatie is er tot de wiskundige modellen?
- voorbeelden van wiskundige modellen: Turing-machine; eindige automaat;
- hoe verhoudt dit 3-lagen model zich tot: talen, machines, (het Franse model)