Fysieke en logische organisatie van het geheugen in computersystemen. Hoofdgeheugensysteemmodules

Tabel 9.1.
Hiërarchie van het pc-geheugensubsysteem Geheugentype 1985
2000 Bemonsteringstijd Typisch volume 2000 Bemonsteringstijd Typisch volume
1 Prijs/byte Superoperatief geheugen (registers) 0,2 5 ns $ 3 - 100 16/32 beetje 0,01 1ns $ 0,1 10
2 32/64/128 bits Snel buffergeheugen (cache) 20 100 ns ~ $ 10 8 KB - 64 KB 0,5 - 2 ns $ 0,1 - 0,5
3 32 KB 1 MB Operationeel (hoofd)geheugen ~0,5 ms $ 0,02 1 1 MB - 256 MB 2 ns 20 ns $ 0,01 0,1
4 128 MB - 4 GB Externe opslag (massageheugen) 10 - 100 ms $ 0,002 - 0,04 1MB - 1GB 5 - 20 ms $ 0,001 - 0,01

1 GB - 0,5 TB

Processorregisters vormen de context en slaan gegevens op die worden gebruikt door momenteel processorinstructies uit te voeren. Processorregisters worden in de regel benaderd via hun geheugensteuntjes in processoropdrachten. Cache gebruikt om de snelheid van de CPU en het hoofdgeheugen aan te passen. IN computersystemen ze gebruiken cache op meerdere niveaus: cache van niveau I (L1), cache van niveau II (L2), enz. IN desktopsystemen Meestal wordt op servers een cache met twee niveaus gebruikt, een cache met drie niveaus. In de cache worden instructies of gegevens opgeslagen die waarschijnlijk in de nabije toekomst door de processor zullen worden ontvangen voor verwerking. De werking van het cachegeheugen is transparant software , Daarom cache-geheugen

meestal niet programmatisch beschikbaar. RAM winkels zijn in de regel functioneel compleet softwaremodules (kern besturingssysteem

, het uitvoeren van programma's en hun bibliotheken, gebruikte apparaatstuurprogramma's, enz.) en hun gegevens die rechtstreeks betrokken zijn bij de werking van programma's, en wordt ook gebruikt om de resultaten van berekeningen of andere gegevensverwerking op te slaan voordat ze naar externe opslag worden verzonden, naar een gegevensuitvoer apparaat- of communicatie-interfaces. Elke cel een uniek adres toegewezen. Organisatorische methoden voor geheugentoewijzing bieden programmeurs de mogelijkheid om het hele computersysteem efficiënt te gebruiken. Dergelijke methoden omvatten een continu ("plat") geheugenmodel en een gesegmenteerd geheugenmodel. Bij gebruik van een plat geheugenmodel werkt het programma met een enkele continue adresruimte, een lineaire adresruimte waarin geheugencellen opeenvolgend en continu worden genummerd van 0 tot 2n-1, waarbij n de CPU-bitdiepte op het adres is. Wanneer een gesegmenteerd model voor een programma wordt gebruikt, wordt het geheugen weergegeven door een groep onafhankelijke adresblokken die segmenten worden genoemd. Om een ​​geheugenbyte te adresseren, moet een programma een logisch adres gebruiken, bestaande uit een segmentselector en een offset. Een segmentselector selecteert een specifiek segment, en een offset wijst naar een specifieke cel in de adresruimte van het geselecteerde segment.


Sinds de oprichting van de von Neumann-computer is de belangrijkste geheugen in een computersysteem is georganiseerd als lineair (eendimensionaal) adresruimte, bestaande uit een reeks woorden en latere bytes. De externe is op dezelfde manier georganiseerd. geheugen. Hoewel deze organisatie de gebruikte hardware weerspiegelt, komt deze niet overeen met de manier waarop programma's doorgaans worden geschreven. De meeste programma's zijn georganiseerd in modules, waarvan sommige onveranderlijk zijn (alleen-lezen, alleen uitvoeren), terwijl andere gegevens bevatten die kunnen worden gewijzigd.

Als besturingssysteem En hardware effectief mee kan werken gebruikersprogramma's en de gegevens die de modules leveren, levert dit een aantal voordelen op.


  1. Modules kunnen onafhankelijk van elkaar worden gemaakt en samengesteld, waarbij alle verwijzingen van de ene module naar de andere door het systeem worden opgelost terwijl het programma draait.

  2. Verschillende modules kunnen verschillende beschermingsniveaus verkrijgen (alleen-lezen, alleen-uitvoering) ten koste van een zeer bescheiden overhead.

  3. Het is mogelijk om een ​​mechanisme te gebruiken dat het delen van modules tussen verschillende processen garandeert (in het geval van samenwerking van processen bij het werken aan één taak).
Geheugen – het belangrijkstebron computersysteem dat effectief beheer vereist. Hoewel tegenwoordig geheugen de gemiddelde thuiscomputer is duizenden keren groter geheugen mainframecomputers uit de jaren zeventig groeiden programma's sneller in omvang dan ooit tevoren geheugen. Het volstaat om dat alleen maar te zeggen besturingssysteem neemt honderden MB in beslag (bijvoorbeeld Ramen 2000 – tot 30 miljoen rijen), om nog maar te zwijgen van applicatieprogramma's en databases die tientallen en honderden GB aan computersystemen in beslag kunnen nemen.

Een parafrase van de wet van Parkinson luidt: "Programma's breiden zich uit om de hoeveelheid geheugen te vullen die beschikbaar is om ze te ondersteunen." (dit werd gezegd over het besturingssysteem). Idealiter zouden programmeurs onbeperkte grootte en snelheid willen hebben geheugen, die niet-vluchtig zou zijn, d.w.z. behield de inhoud toen de stroom werd uitgeschakeld, en zou ook goedkoop zijn. In werkelijkheid bestaat zo’n herinnering echter nog niet. Tegelijkertijd zijn in elk stadium van de ontwikkeling van de productietechnologie voor geheugenapparaten de volgende redelijk stabiele relaties van toepassing:


  • hoe korter de toegangstijd, hoe duurder het bit;

  • hoe hoger de capaciteit, hoe lager de kosten per bit;

  • hoe hoger de capaciteit, hoe meer tijd toegang.
Te vinden Uitgang Op basis van de huidige situatie is het noodzakelijk om niet te vertrouwen op individuele componenten of technologie, maar om een ​​hiërarchie van opslagapparaten op te bouwen, zoals weergegeven in Fig. 6.1. Terwijl u van links naar rechts beweegt, gebeurt het volgende:

  • de kosten per bit worden verlaagd;

  • capaciteit neemt toe;

  • de toegangstijd neemt toe;

  • De frequentie van processortoegang tot geheugen neemt af.

Rijst. 6.1. Hiërarchie van het geheugen

Veronderstellen CPU heeft toegang geheugen van twee niveaus. Het eerste niveau bevat E 1-woorden en wordt gekenmerkt door een toegangstijd T 1 = 1 ns. Tot dit niveau CPU rechtstreeks contact kunt opnemen. Echter, als je nodig hebt om te krijgen woord, gelegen op het tweede niveau, moet het eerst worden overgebracht naar het eerste niveau. In dit geval niet alleen het vereiste woord, A gegevensblok die dit bevat woord. Sinds de adressen zijn geadresseerd CPU, hebben de neiging zich in groepen te verzamelen (cycli, subroutines), CPU geeft toegang tot een kleine, zich herhalende reeks opdrachten. De processor zal dus geruime tijd met het nieuw ontvangen geheugenblok werken.

Laten we met T 2 = 10 ns het tijdstip van toegang tot het tweede geheugenniveau aangeven, en met P - houding het aantal keer dat het gewenste woord in het snelgeheugen voorkomt tot het aantal alle toegangen. Laten we in ons voorbeeld P = 0,95 nemen (dat wil zeggen dat 95% van de oproepen snel zijn). geheugen, wat vrij realistisch is), en vervolgens het gemiddelde toegangstijd kan als volgt naar het geheugen worden geschreven:

T gem = 0,95*1ns + 0,05* (1ns+10ns)=1,55ns

Dit principe kan op meer dan alleen dual-level geheugen worden toegepast. Dit is feitelijk wat er gebeurt. De hoeveelheid RAM heeft een aanzienlijke invloed op de aard van het computerproces, omdat het het aantal programma's beperkt dat tegelijkertijd wordt uitgevoerd, d.w.z. multiprogrammeringsniveau. Aangenomen dat het proces een deel p van zijn tijd besteedt aan wachten op voltooiing operaties input-output, dan de belastingsgraad Z centrale verwerker(CPU) wordt idealiter uitgedrukt door de afhankelijkheid

Z = 1 - p n, waarbij n het aantal processen is.

In afb. Figuur 6.2 toont de afhankelijkheid Z=p(n) voor verschillende voltooiingswachttijden operaties I/O (20%, 50% en 80%) en aantal processen n. Een groot aantal taken vereist voor hoge belasting processor, vereist een grote hoeveelheid RAM. In omstandigheden waarin het beschikbare geheugen niet voldoende is om een ​​acceptabel niveau van multiprogrammering te garanderen, werd een methode voorgesteld voor het organiseren van een computerproces waarbij afbeeldingen van sommige processen tijdelijk geheel of gedeeltelijk worden geüpload naar schijf.

Het is duidelijk dat het zinvol is om inactieve processen die wachten op bepaalde bronnen, inclusief de volgende CPU-tijdschijf, tijdelijk te ontladen. Tegen de tijd dat het voorbij is wachtrij uitvoering van het ongeladen proces, wordt het beeld teruggestuurd van de schijf naar het operationele geheugen. Als wordt ontdekt dat er niet genoeg vrije ruimte in het RAM-geheugen is, dan schijf een ander proces wordt gelost.

Een dergelijke vervanging ( virtualisatie) RAM met schijfgeheugen stelt u in staat het niveau van multiprogrammering te verhogen, aangezien de hoeveelheid RAM nu niet zo strikt het aantal gelijktijdig uitgevoerde processen beperkt. In dit geval kan de totale hoeveelheid RAM die wordt ingenomen door procesafbeeldingen de beschikbare hoeveelheid RAM aanzienlijk overschrijden.

In dit geval wordt de applicatieprogrammeur voorzien van een virtuele operationele geheugen, waarvan de maat veel groter is dan de echte geheugen systeem en wordt alleen beperkt door de adresseringsmogelijkheden van het gebruikte proces (in pc's gebaseerd op Pentium 2 32 = 4 GB). Over het algemeen wordt virtueel (schijnbaar) genoemd bron, dat eigenschappen heeft (in dit geval een groot volume OP) die het eigenlijk niet heeft.

Virtualisatie RAM wordt uitgevoerd door een combinatie van hardware en software computersysteem (processorcircuits en besturingssysteem) automatisch zonder de deelname van een programmeur en heeft geen invloed op de logica van de applicatie.

Virtualisatie geheugen is mogelijk op basis van twee mogelijke benaderingen:


  • swappen – procesimages worden naar schijf gedownload en in hun geheel teruggestuurd naar RAM;

  • virtueel geheugen ( virtueel geheugen) – delen van afbeeldingen (segmenten, pagina's, blokken, enz.) van processen worden verplaatst tussen RAM en schijf.
Nadelen van ruilen:

  • redundantie van overgedragen gegevens en daardoor vertraging van het systeem en inefficiënt gebruik van geheugen;

  • onvermogen om een ​​proces te laden waarvan de virtuele ruimte het beschikbare vrije geheugen overschrijdt.
Voordelen van ruilen Door vergeleken met virtueel geheugen - kleiner kosten tijd om adressen in programmacodes om te zetten, aangezien dit één keer gebeurt bij het laden van schijf naar geheugen(Dit voordeel kan echter onbeduidend zijn, aangezien slechts een deel van de code wordt uitgevoerd tijdens de volgende laadbeurt en het misschien niet nodig is om de code volledig te transformeren).

Virtueel geheugen heeft deze nadelen niet, maar het voornaamste probleem is de omzetting van virtuele adressen in fysieke (waarom dit een probleem is zal later duidelijk worden, maar voor nu kunnen we de aanzienlijke kosten tijd voor dit proces, tenzij speciale maatregelen worden genomen).

Virtueel geheugenconcept

In een virtueel geheugensysteem wordt de adresruimte (AS) van een proces (procesafbeelding) opgeslagen extern geheugen De computer wordt in delen in het echte geheugen geladen, indien nodig dynamisch, in elke vrije ruimte in het ROP. Het programma weet hier echter niets van en wordt geschreven en uitgevoerd alsof het geheel in het ROP staat.

Virtueel geheugen is een simulatie van RAM in extern geheugen.

Het mechanisme voor het in kaart brengen van virtuele en echte adressen brengt een correspondentie tussen deze adressen tot stand en wordt aangeroepen dynamische adresvertaling(DPA ).

De computer hier fungeert al als logisch apparaat, in plaats van een fysieke machine met unieke kenmerken. DPA wordt ondersteund op hardware- en firmwareniveau. Intel MP ondersteunt, te beginnen met de 386-processor, virtueel geheugen.

Deze procedure wordt uitgevoerd voor EC-computers - rij 2 en hoger, voor SM-computers - 1700, voor IBM PC - I386 en hoger.

Bij het beheren van virtueel geheugen zijn aangrenzende virtuele adressen niet noodzakelijkerwijs aangrenzende echte adressen (kunstmatige nabijheid). De programmeur wordt verlost van de noodzaak om na te denken over de plaatsing van zijn procedures en gegevens in het ROP. Hij krijgt de kans om programma's op de meest natuurlijke manier te schrijven, waarbij hij alleen werkt aan de details van het algoritme en de structuur van het programma, waarbij hij de specifieke kenmerken van de hardwarestructuur negeert.

Het DPA-mechanisme omvat het bijhouden van tabellen die laten zien welke VP-cellen zich momenteel in het ROP bevinden en waar precies. Omdat individuele weergave van informatie-elementen (woord-voor-woord of byte-voor-byte) geen zin heeft (aangezien adrestoewijzingstabellen meer ROP zouden vereisen dan processen), wordt adrestoewijzing uitgevoerd op het niveau van OP-blokken.

Figuur 1. Dynamische adresvertaling

Probleem: welk deel van de processen op een bepaald moment in het OP moet blijven, waarbij sommige delen van het OP worden weggedrukt en andere worden geplaatst.

Nog een vraag die beantwoord moet worden: Hoe blokgrootte te maken?

Het vergroten van de blokgrootte leidt tot een verkleining van de bloktoewijzingstabel, maar vergroot de uitwisselingstijd en omgekeerd leidt het verkleinen van de blokgrootte tot een toename van het aantal tabellen en een afname van de uitwisselingstijd met extern geheugen.

Blokken kunnen een vast formaat (pagina's) of een variabel formaat (segmenten) hebben. In dit opzicht is er vier manieren om virtueel geheugen te organiseren:

1. Dynamische pagina-organisatie.

2. Segmentorganisatie.

3. Gecombineerde organisatie van segmentpagina's.

4. Pagina-organisatie op twee niveaus.

Virtuele adressen in pagina- en segmentsystemen bestaan ​​uit twee componenten en vertegenwoordigen een geordend paar (p,d), Waar P- het nummer van het blok (pagina of segment) waarin het element zich bevindt, en D- offset ten opzichte van het startadres van dit blok. Virtuele adresconversieV=(p,d) naar een echt geheugenadresR wordt als volgt uitgevoerd. Wanneer het volgende proces wordt geactiveerd, wordt het adres van de bloktoewijzingstabel in een speciaal processorregister geladen dit proces. Volgens bloknummer P uit de bloktoewijzingstabel wordt een regel gelezen waarin een overeenkomst wordt vastgesteld tussen het aantal virtuele en fysieke pagina's voor pagina's die in RAM zijn geladen, of er wordt een opmerking gemaakt dat virtuele pagina gedownload naar schijf. Bovendien bevat de paginatabel besturingsinformatie, zoals een paginawijzigingsindicator, een niet-paginabare indicator (het laden van sommige pagina's kan verboden zijn), een paginatoegangsindicator (gebruikt om het aantal hits per pagina te tellen). bepaalde periode tijd) en andere gegevens die worden gegenereerd en gebruikt door het virtuele geheugenmechanisme. De offsetgrootte wordt toegevoegd aan het gelezen fysieke adres van het geselecteerde blok D en het vereiste echte adres wordt berekend.

Figuur 2. Een virtueel adres omzetten naar een echt geheugenadres

Laten we eens kijken wat de strategie voor virtueel geheugenbeheer is? Net als bij ROP-beheer zijn er drie categorieën strategieën voor het beheren van VI's, met als doel het aantal paginawachttijden te verminderen en alleen gebruikte blokken in het ROP te plaatsen.

Push-strategie , die bepaalt wanneer een pagina of segment van het externe geheugen naar de OP moet worden herschreven.

A) op verzoek duwen- het systeem verwacht een link naar de pagina/segment vanuit het lopende proces (afbreken vanwege pagina-afwezigheid);

argumenten voor:


  • het pad van de programma-uitvoering kan niet met zekerheid worden voorspeld;

  • garanderen dat alleen de noodzakelijke pagina's zich in het OP bevinden;

  • de overhead bij het bepalen van de benodigde pagina's is minimaal;
argumenten tegen:

  • het wisselen van blok voor blok verhoogt de totale wachttijd.
B) anticiperend duwtje gaat ervan uit dat het systeem kan anticiperen op de noodzaak om de pagina/het segment in de toekomst te gebruiken. Als de kans op verzoeken groot is en er een vrije OP is, worden de overeenkomstige blokken herschreven in de OP.

Voordeel: kortere wachttijd.

Momenteel nemen de prestaties van apparatuur toe en leiden niet-optimale oplossingen niet tot een afname van de efficiëntie van computersystemen.

Plaatsingsstrategie, bepalen waar de binnenkomende pagina/segment moet worden geplaatst. In paginasystemen - triviaal: in elk vrij blok (de pagina heeft een vaste grootte). In segmentsystemen worden dezelfde strategieën gebruikt als voor een echt OP (naar het eerste geschikte gebied, naar het meest geschikte, naar het minst geschikte).

Push-out (vervanging) strategie bepalen welke pagina/segment uit het OP moet worden verwijderd om ruimte vrij te maken voor de inkomende pagina.

Dit is het grootste probleem" slippen", waarbij de uitgeworpen pagina het volgende moment opnieuw in het ROP moet worden geplaatst.

Laten we eens kijken naar de procedures voor het bepalen van blokken die uit het OP moeten worden geduwd.

A) een willekeurige pagina openen- V echte systemen niet van toepassing;

b) het uitwerpen van de eerste pagina die binnenkomt (FIFO- wachtrij). Om dit te implementeren, is het noodzakelijk om paginatijdstempels in te stellen.

Argument: De pagina heeft al kansen gehad om van zijn kans te profiteren.

Eigenlijk: Het is zeer waarschijnlijk dat actief gebruikte pagina's worden vervangen, omdat pagina's die lange tijd aanwezig zijn, kunnen betekenen dat deze voortdurend in gebruik zijn. De teksteditor wordt bijvoorbeeld gebruikt.

V) het uitwerpen van de langste ongebruikte pagina's.

Om dit te implementeren, is het noodzakelijk om bijwerkbare tijdstempels te implementeren. Heuristisch argument: - het recente verleden is een goede leidraad voor de toekomst.

Het nadeel is een aanzienlijke overhead: het voortdurend bijwerken van tijdstempels.

G) de minst gebruikte pagina's uitwerpen- gaat uit van de aanwezigheid van paginatellers (minder intensief dan bijgewerkte tijdstempels). Intuïtief gerechtvaardigd, maar misschien ook niet rationeel.

D) die niet worden gebruikt, eruit duwen de laatste tijd pagina's- het meest voorkomende algoritme met lage overhead. Geïmplementeerd door twee hardwarebits per pagina:

1. behandelingsteken 0 - was

1 - er was geen.

2. recordwijzigingsteken 0 - ongewijzigd.

1 - gewijzigd.

Mogelijk de volgende opties combinaties { 00,10,01,11). Als er geen wijzigingen op de pagina zijn aangebracht, kan de pagina eenvoudigweg worden herschreven in plaats van op schijf te worden opgeslagen.

Uw goede werk indienen bij de kennisbank is eenvoudig. Gebruik onderstaand formulier

goed werk naar de site">

Studenten, promovendi en jonge wetenschappers die de kennisbasis gebruiken in hun studie en werk zullen je zeer dankbaar zijn.

Geplaatst op http://www.allbest.ru/

1. Principes van informatie-uitwisseling tussen hiërarchische niveaus van het geheugensubsysteem.

2. Basisfuncties en belangrijkste subsystemen van een computersysteem.

3. Werkingsprincipe van associatief cachegeheugen.

4. Implementatie van interrupts van randapparatuur aangesloten via een seriële interface.

5. Wat zijn beschermringen?

6. Wat is RAM-segmentatie?

7. Belangrijkste kenmerken van videogegevens. Matrix- en grafische weergave van video-informatie.

8. Wat is een bestand? Verschillen tussen bestand en map.

9. De belangrijkste fasen van de moderne processorpijplijn.

10. Wat is het hernoemen van registers?

Vraag nr. 1. Principes van informatie-uitwisseling tussen hiërarchische niveaus van het geheugensubsysteem

De basis van de implementatie van de geheugenhiërarchie moderne computers Er zijn twee principes: het principe van de plaats van de verzoeken en de kosten-prestatieverhouding. Het principe van de lokaliteit van oproepen suggereert dat de meeste programma's gelukkig niet met dezelfde waarschijnlijkheid toegang hebben tot al hun opdrachten en gegevens, maar de voorkeur geven aan een bepaald deel van hun adresruimte.

De geheugenhiërarchie van moderne computers is op verschillende niveaus opgebouwd, waarbij het hogere niveau per byte kleiner, sneller en duurder is dan het lagere niveau. De niveaus van een hiërarchie zijn met elkaar verbonden: alle gegevens op één niveau kunnen ook op een lager niveau worden gevonden, en alle gegevens op dat lagere niveau kunnen op het volgende lagere niveau worden gevonden, enzovoort totdat we de onderkant van de hiërarchie bereiken.

De geheugenhiërarchie bestaat gewoonlijk uit vele niveaus, maar op een bepaald moment hebben we te maken met slechts twee nabijgelegen niveaus. De kleinste informatie-eenheid die al dan niet aanwezig is in een hiërarchie met twee niveaus, wordt een blok genoemd. De blokgrootte kan vast of variabel zijn. Als deze grootte vaststaat, is de geheugengrootte een veelvoud van de blokgrootte.

Een succesvolle of niet-succesvolle oproep naar een hoger niveau wordt respectievelijk een hit of een misser genoemd. Een hit is een verwijzing naar een object in het geheugen dat vaker wordt gevonden hoog niveau, terwijl een misser betekent dat het niet op dat niveau wordt gevonden. De hitrate of hitratio is het aandeel hits dat op een hoger niveau wordt gevonden. Soms wordt het weergegeven als een percentage. Het misspercentage is het percentage verzoeken dat niet op een hoger niveau wordt gevonden.

Omdat het verbeteren van de prestaties de belangrijkste reden is voor het ontstaan ​​van geheugenhiërarchieën, zijn de hit-and-miss-percentages een belangrijk kenmerk. De treffertijd is de tijd die nodig is om een ​​hoger niveau in de hiërarchie te bereiken, waaronder met name de tijd die nodig is om te bepalen of een treffer een treffer of een misser is. Miss penalty is de tijd die nodig is voordat een blok op een hoger niveau wordt vervangen door een blok op een hoger niveau. laag niveau plus de tijd om dit blok naar het gewenste apparaat (meestal de processor) te sturen. Missverliezen omvatten verder twee componenten: toegangstijd - de tijd om toegang te krijgen tot het eerste woord van een blok in geval van een misser, en overdrachtstijd - extra tijd om de resterende woorden van het blok door te sturen. De toegangstijd is gerelateerd aan de latentie van geheugen op een lager niveau, terwijl de overdrachtstijd gerelateerd is aan de kanaalbandbreedte tussen geheugenapparaten van twee aangrenzende niveaus.

Vraag nr. 2. Basisfuncties en belangrijkste subsystemen van een computersysteem

Een besturingssysteem is een reeks onderling verbonden programma's die zijn ontworpen om de efficiëntie van computerhardware te verbeteren door de bronnen rationeel te beheren, en om de gebruiker gemak te bieden door hem te voorzien van geavanceerde virtuele machine. De belangrijkste bronnen die door het besturingssysteem worden beheerd, zijn onder meer processors, hoofdgeheugen, timers, datasets, schijven, tapedrives, printers, netwerk apparaten en enkele anderen. Middelen worden gedeeld tussen processen. Om problemen met resourcebeheer op te lossen, gebruiken verschillende besturingssystemen verschillende algoritmen, waarvan de kenmerken uiteindelijk het uiterlijk van het besturingssysteem bepalen. De belangrijkste subsystemen van het besturingssysteem zijn de subsystemen voor proces-, geheugen-, bestands- en extern apparaatbeheer, evenals de subsystemen voor de gebruikersinterface, gegevensbeveiliging en beheer.

Belangrijkste functies:

* Het uitvoeren, op verzoek van programma's, van die tamelijk elementaire (low-level) acties die de meeste programma's gemeen hebben en vaak in bijna alle programma's voorkomen (gegevensinvoer en -uitvoer, andere programma's starten en stoppen, extra geheugen toewijzen en vrijmaken, enz.).

* Gestandaardiseerde toegang tot randapparatuur (invoer-/uitvoerapparaten).

* RAM-beheer (verdeling tussen processen, organisatie van virtueel geheugen).

* Controle van de toegang tot gegevens op niet-vluchtige media (zoals een harde schijf, optische schijven, enz.), georganiseerd in een bepaald bestandssysteem.

* Het verstrekken van gebruikersinterface.

* Netwerkbewerkingen, ondersteuning voor netwerkprotocolstack.

Extra functies:

* Parallelle of pseudo-parallelle uitvoering van taken (multitasking).

* Efficiënte verdeling van computersysteembronnen tussen processen.

* Differentiatie van de toegang van verschillende processen tot bronnen.

* Interactie tussen processen: gegevensuitwisseling, onderlinge synchronisatie. Een proces is een dynamisch object dat in het besturingssysteem verschijnt nadat de gebruiker of het besturingssysteem zelf besluit om “een programma uit te voeren voor uitvoering”, dat wil zeggen om een ​​nieuwe eenheid rekenwerk te creëren. Een gebruiker is een persoon of organisatie die een besturingssysteem gebruikt om een ​​specifieke functie uit te voeren. Een bestand is een benoemd gebied in het externe geheugen waarnaar kan worden geschreven en waaruit kan worden gelezen. De belangrijkste doeleinden van het gebruik van bestanden zijn: langdurig en veilige opslag het delen van informatie en gegevens.

Vraag nr. 3. Het werkingsprincipe van associatief cachegeheugen

IN associatief geheugen elementen worden niet op adres geselecteerd, maar op inhoud. Laten we het laatste concept nader toelichten. Voor adresseerbaar geheugen werd het concept van een minimaal adresseerbare eenheid (MAU) geïntroduceerd als een stukje data met een individueel adres. Laten we een soortgelijk concept introduceren voor associatief geheugen, en we zullen deze minimale opslageenheid in associatief geheugen een rij associatief geheugen (StrAP) noemen. Elke StrAP bevat twee velden: een tagveld (Engelse tag - label, label, attribuut) en een gegevensveld. Een leesverzoek aan het associatieve geheugen kan als volgt in woorden worden uitgedrukt: selecteer de regel(s) waarvan de tag(s) gelijk is aan de opgegeven waarde.

We merken vooral op dat bij een dergelijk verzoek een van de volgende drie resultaten mogelijk is:

1. er is precies één regel met de gegeven tag;

2. er zijn meerdere regels met een bepaalde tag;

3. er is geen enkele regel met de opgegeven tag.

Zoeken naar een record op attribuut is een handeling die typisch is voor toegang tot databases, en het doorzoeken van de database is vaak een associatieve zoekopdracht. Om een ​​dergelijke zoekopdracht uit te voeren, moet u alle vermeldingen bekijken en de gegeven tag vergelijken met de tag van elke vermelding. Dit kan ook worden gedaan als u gewoon adresseerbaar geheugen gebruikt om records op te slaan (en het is duidelijk dat dit behoorlijk wat tijd zal vergen - evenredig aan het aantal opgeslagen records!). We spreken van associatief geheugen wanneer het associatief ophalen van gegevens uit het geheugen wordt ondersteund door hardware. Bij het schrijven naar het associatieve geheugen wordt een data-element in de StrAP geplaatst, samen met de tag die inherent is aan dit element. Om dit te doen, kunt u elke gratis StrAP gebruiken.

Aan het begin van de werking is het cachegeheugen leeg. Bij het uitvoeren van de eerste opdracht tijdens het bemonsteren, de code ervan, evenals nog een paar aangrenzende bytes programmacode, - wordt (langzaam) overgebracht naar een van de cacheregels en tegelijkertijd wordt het hoge deel van het adres naar de bijbehorende tag geschreven. Zo wordt de cacheregel gevuld.

Als er vanuit dit gebied verdere selecties mogelijk zijn, worden deze gemaakt vanuit de cache (snel) - "CACHEHIT". Als dat blijkt gewenst onderdeel niet in de cache, - "CACH miss". In dit geval vindt toegang tot RAM (langzaam) plaats en wordt tegelijkertijd de volgende cacheregel gevuld.

De cache is als volgt toegankelijk. Nadat het uitvoeringsadres is gevormd, worden de belangrijkste bits, die de tag vormen, hardwarematig (snel) en gelijktijdig met de tags van alle cachelijnen vergeleken. In dit geval zijn slechts twee van de drie eerder genoemde situaties mogelijk: ofwel zullen alle vergelijkingen een negatief resultaat opleveren (CACH-misser), ofwel zal een positief vergelijkingsresultaat worden geregistreerd voor precies één rij (CACH-treffer).

Als bij het lezen een cachetreffer wordt gedetecteerd, bepalen de bits van lage orde van het adres de positie in de cacheregel waaruit bytes moeten worden opgehaald, en bepaalt het type bewerking het aantal bytes. Als de lengte van een data-element groter is dan één byte, zijn er uiteraard situaties mogelijk waarin dit element zich (gedeeltelijk) in twee (of meer) verschillende cacheregels bevindt, en zal de tijd voor het ophalen van een dergelijk element toenemen. Dit kan worden tegengegaan door operanden en instructies uit te lijnen langs de grenzen van cacheregels, waarmee rekening wordt gehouden bij het ontwikkelen van optimaliserende vertalers of bij het handmatig optimaliseren van code.

Als er een cachemisser optreedt en er geen vrije regels in de cache zijn, moet u de ene cacheregel vervangen door een andere.

Het belangrijkste doel van de vervangingsstrategie is het behouden van cacheregels waarvan de kans het grootst is dat ze in de nabije toekomst zullen worden gebruikt, en het vervangen van regels die later of helemaal niet toegankelijk zullen zijn. Het is duidelijk dat het optimale algoritme er een is die de regel vervangt die later in de toekomst zal worden benaderd dan welke andere cacheregel dan ook.

Vraag nr. 4. Implementatie van interrupts van randapparatuur aangesloten via een seriële interface

Een seriële interface voor gegevensoverdracht in één richting maakt gebruik van één signaallijn, waarlangs informatiebits achtereenvolgens worden verzonden. Deze transmissiemethode bepaalt de naam van de interface en de poort die deze implementeert (seriële interface en seriële poort). Seriële gegevensoverdracht kan in synchrone en asynchrone modi worden uitgevoerd.

Bij asynchrone verzending wordt elke byte voorafgegaan door een startbit, dat de ontvanger informeert over het begin van de volgende verzending, gevolgd door databits of een pariteitsbit. Het bericht eindigt met een stopbit.

Dankzij het asynchrone verzendformaat kunt u mogelijke overdrachtsfouten identificeren.

De synchrone transmissiemodus veronderstelt een constante activiteit van het communicatiekanaal. Het verzenden begint met een synchronisatiebyte, op de voet gevolgd door een stroom informatiebits. Als de zender geen gegevens heeft om te verzenden, vult hij de pauze door continu synchronisatiebytes te verzenden. Bij het overbrengen van grote hoeveelheden gegevens zal de synchronisatieoverhead in deze modus lager zijn dan in de asynchrone modus.

Interrupt is een signaal dat de processor informeert over het optreden van een asynchrone gebeurtenis. In dit geval wordt de uitvoering van de huidige reeks opdrachten opgeschort en wordt de controle overgedragen aan de interrupthandler, die het werk van het verwerken van de gebeurtenis uitvoert en de controle teruggeeft aan de onderbroken code. Soorten onderbrekingen: Hardware (IRQ - Interrupt Request) - gebeurtenissen van randapparaten (bijvoorbeeld toetsaanslagen op het toetsenbord, muisbewegingen, timersignaal, netwerkkaart of schijfstation) -- externe onderbrekingen, of gebeurtenissen in de microprocessor - (bijvoorbeeld delen door nul) - interne interrupts; Software - geïnitieerd door het uitvoerende programma, d.w.z. al synchroon, niet asynchroon. Software-interrupts kunnen worden gebruikt om besturingssysteemservices aan te roepen.

Interrupts vereisen dat de uitvoering van de huidige stroom instructies wordt opgeschort (terwijl de status wordt opgeslagen) en dat de uitvoering van de ISR-routine (Interrupt Service Routine) wordt gestart. Deze procedure moet eerst de bron van de interrupt identificeren (en er kunnen er meerdere zijn) en vervolgens acties uitvoeren die verband houden met het reageren op de gebeurtenis. Als gebeurtenissen een actie van een toepassingsprogramma moeten veroorzaken, hoeft de interrupthandler alleen een signaal af te geven (via het besturingssysteem) dat de instructiethread start (of wakker maakt) die deze acties uitvoert. De daadwerkelijke ISR-procedure moet worden geoptimaliseerd in termen van tijdsbesteding. Het onderhouden van interrupts, vooral in de beschermde modus, op pc-compatibele computers met x86-processors gaat gepaard met aanzienlijke overhead. Om deze reden proberen ze hun aantal te verminderen. Aanzienlijke problemen worden veroorzaakt door het identificeren van de interruptbron in de architectuur PC-compatibele computers Hiervoor worden traditionele maar ineffectieve mechanismen gebruikt. In sommige gevallen worden onderbrekingen van apparaten vervangen door polling: softwaregestuurde polling van de apparaatstatus. In dit geval worden de statussen van meerdere apparaten opgevraagd met behulp van een timer-interrupt.

Vraag nr. 5. Wat zijn beschermingsringen?

Ringen van bescherming - architectuur informatiebeveiliging en functionele fouttolerantie, waarbij hardwarescheiding van systeem- en gebruikersrechtenniveaus wordt geïmplementeerd. De structuur van privileges kan worden weergegeven als verschillende concentrische cirkels. In dit geval systeemmodus(supervisormodus of ring nul, de zogenaamde “ring 0”), die maximale toegang tot bronnen biedt, is de binnenste cirkel, terwijl de gebruikersmodus met beperkte toegang- extern. Traditioneel biedt de x86-familie van microprocessors vier beschermingsringen.

Ondersteuning voor meerdere beschermingsringen was een van de revolutionaire concepten van het Multics-besturingssysteem, de voorloper van de huidige UNIX-achtige besturingssystemen.

Het originele Multics-systeem had 8 beschermingsringen, maar veel moderne systemen hebben er meestal minder. Dankzij speciale machineregisters weet de processor altijd in welke ring de code wordt uitgevoerd.

Het ringmechanisme beperkt strikt de manieren waarop de controle van de ene ring naar de andere kan worden overgedragen. Er is een instructie die de controle overdraagt ​​van een minder veilige naar een veiligere (lagere) ring. Dit mechanisme is ontworpen om de mogelijkheid van accidentele of opzettelijke inbreuken op de beveiliging te beperken.

Effectief gebruik van ringbeschermingsarchitectuur vereist nauwe interactie tussen hardware en besturingssysteem. Besturingssystemen die zijn ontworpen om op een groot aantal platforms te draaien, kunnen dat wel hebben verschillende uitvoering ringmechanisme op elk platform.

Vraag #6: Wat is RAM-segmentatie?

Segmentatie is een methode voor het organiseren van programma's waarbij de adresstructuur van het programma de inhoudelijke verdeling weerspiegelt. Bij segmentatie wordt de adresruimte van elk programma verdeeld in segmenten van verschillende lengte die qua inhoud overeenkomen verschillende onderdelen programma's. Een segment kan bijvoorbeeld een procedure of een gegevensgebied zijn. In dit geval bestaat het adres uit de segmentnaam en het adres binnen het offsetsegment. Omdat programmasegmenten op naam worden benaderd, is het bij het toewijzen van geheugen mogelijk om segmenten in niet-aangrenzende geheugengebieden te plaatsen; bovendien hoeven niet alle segmenten tegelijkertijd in het RAM te staan; sommige ervan kunnen zich in een extern geheugen bevinden; indien nodig verplaatst naar de OP.

Zoals reeds aangegeven vertegenwoordigt in een gesegmenteerd systeem elk adres een paar: s is de segmentnaam en d is de offset. Elk programma heeft een overeenkomstige segmenttabel die altijd in het geheugen aanwezig is, waarin één invoer overeenkomt met elk segment van een bepaald proces. Met behulp van deze tabel wijst het systeem zachte adressen toe aan echte OP-adressen. Het tabeladres wordt opgeslagen in een hardwareregister dat het segmenttabelregister wordt genoemd.

Adresberekening tijdens segmentatie wordt als volgt uitgevoerd. Voordat het systeem het adres kan berekenen, wordt de aanwezigheid van een segment in het OP hardwarematig gecontroleerd. Als een segment aanwezig is, wordt met behulp van het segmenttabelregister toegang verkregen tot de zesde rij van de segmenttabel, waar het adres van het segment in het geheugen wordt aangegeven. Omdat segmenten verschillende lengtes hebben, is het noodzakelijk om de segmentgrens te kennen om toegang buiten een bepaald segment te voorkomen.

Als het systeem op enig moment zijn aandacht op een ander proces wil verleggen, zal het eenvoudigweg de inhoud van het segmenttabelregister vervangen door het adres van een andere segmenttabel, waarna de typekoppelingen worden geïnterpreteerd volgens de nieuwe tabel.

Segmentatie van adresruimte heeft veel voordelen ten opzichte van absolute adressering, waarvan het belangrijkste het efficiënte gebruik van RAM is. Als er niet voldoende ruimte in het RAM-geheugen is voor alle segmenten van een bepaald programma, kunnen sommige segmenten tijdelijk in het hulpgeheugen worden geplaatst. Als een programma een nieuw segment in de OP moet introduceren, kan het systeem elk segment uit de OP verwijderen en in een hulpsegment plaatsen. Het uitgesloten segment hoeft niet te behoren tot het programma waarvoor een nieuw segment in het OP wordt geïntroduceerd. Het maakt niet uit met welke segmenttabel het verwijderde segment overeenkomt, het belangrijkste is dat wanneer het naar het hulpgeheugen wordt overgebracht, de waarde van het attribuut verandert in de overeenkomstige segmenttabel.

Vraag nr. 7. Belangrijkste kenmerken van videogegevens. Matrix- en grafische weergave van video-informatie

Video-informatie kan zowel statisch als dynamisch zijn. Statische video-informatie omvat tekst, afbeeldingen, grafieken, tekeningen, tabellen, enz. Afbeeldingen zijn ook onderverdeeld in plat - tweedimensionaal en driedimensionaal - driedimensionaal.

Dynamische video-informatie zijn videofilms en animaties die worden gebruikt om bewegende beelden over te brengen. Ze zijn gebaseerd op de opeenvolgende belichting van individuele frames op het scherm in realtime, in overeenstemming met het script.

Demonstratie van animatie- en diafilms is gebaseerd op verschillende principes. Animatiefilms worden zo vertoond dat het menselijke visuele systeem geen individuele frames kan opnemen. Om animaties van hoge kwaliteit te verkrijgen, moeten frames ongeveer 30 keer per seconde veranderen. Bij het demonstreren van diafilms wordt elk frame zo lang op het scherm weergegeven als nodig is voor een persoon om het waar te nemen (meestal van 30 seconden tot 1 minuut). Diafilms kunnen worden geclassificeerd als statische video-informatie.

Bij computers zijn er twee manieren om grafische afbeeldingen weer te geven; matrix (raster) en vector. Matrixformaten (bitmapformaten) zijn zeer geschikt voor afbeeldingen met complexe reeksen kleuren, tinten en vormen, zoals foto's, tekeningen en gescande gegevens. Vectorformaten beter geschikt voor tekeningen en afbeeldingen met eenvoudige vormen, schaduwen en kleuren.

In matrixformaten wordt een afbeelding weergegeven door een rechthoekige matrix van punten - pixels (beeldelement), waarvan de positie in de matrix overeenkomt met de coördinaten van de punten op het scherm. Naast coördinaten wordt elke pixel gekenmerkt door zijn eigen kleur, achtergrondkleur of helderheidsgradatie. Het aantal bits dat wordt toegewezen om de kleur van een pixel te specificeren, varieert afhankelijk van het formaat. In afbeeldingen van hoge kwaliteit wordt de kleur van een pixel beschreven in 24 bits, wat ongeveer 16 miljoen kleuren oplevert. Het grootste nadeel van matrix (raster) graphics is grote capaciteit geheugen dat nodig is om een ​​afbeelding op te slaan. Daarom worden er verschillende datacompressiemethoden gebruikt om afbeeldingen te beschrijven. Momenteel zijn er veel grafische bestandsformaten, die verschillen in compressie-algoritmen en methoden voor het weergeven van matrixafbeeldingen, evenals in het toepassingsgebied.

Vectorrepresentatie definieert, in tegenstelling tot matrixafbeeldingen, de beschrijving van de afbeelding niet door pixels, maar door curven - splines. Een spline is een vloeiende curve die door twee of meer controlepunten loopt die de vorm van de spline bepalen.

Het belangrijkste voordeel van vectorafbeeldingen is dat de beschrijving van een object eenvoudig is en weinig geheugen in beslag neemt. Daarnaast, vectorafbeeldingen in vergelijking met de matrix één heeft het de volgende voordelen:

Gemakkelijk beeldschalen zonder de kwaliteit in gevaar te brengen;

Onafhankelijkheid van de geheugencapaciteit die nodig is om de afbeelding van het geselecteerde kleurmodel op te slaan.

Het nadeel van vectorafbeeldingen is hun zekere kunstmatigheid, die erin bestaat dat elk beeld moet worden verdeeld in een eindige reeks van de samenstellende primitieven. Net als bij matrixafbeeldingen zijn er verschillende bestandsindelingen voor vectorafbeeldingen.

Matrix- en vectorafbeeldingen bestaan ​​niet afzonderlijk van elkaar. Dus, vectortekeningen kan ook matrixafbeeldingen bevatten. Bovendien kunnen vector- en matrixafbeeldingen in elkaar worden omgezet. Grafische formaten waarmee u matrix- en vectorbeschrijving afbeeldingen worden metabestanden genoemd. Metabestanden zorgen voor voldoende compactheid van bestanden tijdens het opslaan hoge kwaliteit afbeeldingen.

De beschouwde representatievormen van statische video-informatie worden met name gebruikt voor individuele frames die animatiefilms vormen. Wordt gebruikt voor het opslaan van animatiefilms verschillende methoden informatiecompressie, waarvan de meeste gestandaardiseerd zijn.

Vraag nr. 8. Wat is een bestand? Verschillen tussen bestand en map

computergeheugen RAM-videogegevens

Bestand (Engels bestand - map) is een concept in de computerwereld: een entiteit waarmee u toegang krijgt tot elke bron van een computersysteem en die een aantal kenmerken heeft:

Vaste naam (een reeks tekens, een nummer of iets anders dat het bestand uniek kenmerkt);

Een specifieke logische representatie en de bijbehorende lees-/schrijfbewerkingen.

Het kan van alles zijn - van een reeks bits (hoewel we het in bytes lezen, of beter gezegd in woordgroepen van bytes, elk vier, acht, zestien) tot een database met een willekeurige organisatie of een tussenliggende optie; multidimensionale database, strikt geordend.

Het eerste geval komt overeen met lees-/schrijfbewerkingen van een stream en/of array (dat wil zeggen sequentieel of met indextoegang), het tweede - DBMS-opdrachten. Tussenliggende opties - lezen en parseren van allerlei bestandsformaten.

Een bestand is een benoemde verzameling bytes van willekeurige lengte die zich op een opslagmedium bevindt, en een map is een benoemde locatie op een schijf waarop bestanden zijn opgeslagen. De volledige bestandsnaam kan mappen als C:\papka\file.txt bevatten, of niet C:\file.txt, en een map is waar de bestanden zich kunnen bevinden: C:\papka. Een map kan niet in een programma worden geopend om er informatie in te schrijven of te lezen; het is bedoeld om bestanden in zichzelf op te slaan; integendeel, het kan worden geopend en bewerkt.

Vraag nr. 9. De belangrijkste fasen van de moderne processorpijplijn

De hoofdtaak van de processor is het (en zo snel mogelijk) uitvoeren van de instructies in het programma. De gemakkelijkste manier (verhogen klok frequentie processor) raakt snel uitgeput door technologische beperkingen. Daarom moeten we op zoek gaan naar andere manieren om de productiviteit te verhogen. Het was een reeks architecturale innovaties die het mogelijk maakten om de prestaties van de Pentium te verbeteren in vergelijking met 486 processors. De belangrijkste daarvan is de transportband.

Het uitvoeren van een commando bestaat uit een aantal stappen:

1) een commando uit het geheugen lezen,

2) het bepalen van de lengte,

3) het bepalen van het adres van de geheugencel, indien gebruikt,

4) uitvoering van opdrachten,

5) het resultaat opslaan.

In vroege processors werden al deze stappen bij elke instructie volledig uitgevoerd. De pijplijn maakte het mogelijk om het proces te versnellen: nadat het team een ​​van de fasen had doorlopen en naar de volgende was gegaan, begon de verwerking van het volgende commando. Deze oplossing verscheen in de nieuwste 486's (bijvoorbeeld in AMD 5x86-133). De Pentium introduceerde voor het eerst dubbele pijpleidingen. Commando's konden parallel worden uitgevoerd (behalve zwevende reken- en sprongcommando's). Dit verhoogde de productiviteit met ongeveer 30-35%.

Vraag nr. 10. Wat is het hernoemen van registers?

Het hernoemen van registers is een methode om de onderlinge afhankelijkheid van instructies te verzwakken, die wordt gebruikt in processors die de uitvoering ervan buiten de juiste volgorde uitvoeren.

Als het, in overeenstemming met twee of meer instructies, nodig is om gegevens naar één register te schrijven, wordt de correcte uitvoering ervan buiten de juiste volgorde onmogelijk, zelfs als er geen gegevensafhankelijkheid is. Dergelijke onderlinge afhankelijkheden worden vaak vals genoemd.

Omdat het aantal architectuurregisters doorgaans beperkt is, is de kans op het optreden van valse afhankelijkheden vrij groot, wat kan leiden tot verminderde processorprestaties.

Het hernoemen van registers is de conversie van softwarereferenties naar architecturale registers naar verwijzingen naar fysieke registers en kan de impact van valse afhankelijkheden verminderen door gebruik te maken van grote hoeveelheid fysieke registers in plaats van een beperkt aantal architectonische registers. In dit geval controleert de processor welke fysieke registerstatus overeenkomt met de architectonische status, en worden de resultaten uitgevoerd in de volgorde die door het programma wordt aangegeven.

Bronnen

Internetbron - http://www.chinapads.ru/

Ryazantsev OI, Nedzelsky DO, Guseva SV Architecturale en structurele organisatie van computersystemen. Hoofd assistent. - Loegansk: Uitzicht. SNU im. V. Dalia, 2008.

Internetbron - http://studopedia.net/

Internetbron - http://proc.ucoz.ru/load/ustrojstvo_processora/1-1-0-2

E. Tannenbaum. Computerarchitectuur, 4e druk. Sint-Petersburg Petrus 2006.

Internetbron - http://193.108.240.69/moodle/file.php/5/navch_pos_OS.doc

Internetbron - http://znanija.com/task/1788585

Geplaatst op Allbest.ru

Soortgelijke documenten

    Classificatie van computergeheugen. Gebruik van RAM, statisch en dynamisch RAM. Werkingsprincipe van DDR SDRAM. Magnetische schijven formatteren. Het grootste probleem is synchronisatie. Theorie van computationele processen. Geheugenadressering.

    cursuswerk, toegevoegd op 28/05/2016

    Geschiedenis van het uiterlijk en de ontwikkeling van RAM. Algemene kenmerken De meest populaire moderne typen RAM zijn SRAM en DRAM. Faseveranderingsgeheugen (PRAM). Thyristor willekeurig toegankelijk geheugen, de bijzonderheden ervan.

    cursuswerk, toegevoegd op 21/11/2014

    Het eenvoudigste schema van interactie van RAM met de CPU. De structuur en principes van het functioneren van RAM. De evolutie van dynamisch geheugen. Geheugenmodule EDO-DRAM BEDO (Burst EDO) - burst EDO RAM. Geheugenmodule SDRAM, DDR SDRAM, SDRAM II.

    samenvatting, toegevoegd op 13-12-2009

    Concept, typen en hoofdfuncties van computergeheugen - onderdelen computer, een fysiek apparaat voor het opslaan van gegevens die voor een bepaalde tijd bij computers worden gebruikt. Schematisch diagram RAM. Flexibele magnetische schijven.

    presentatie, toegevoegd op 18-03-2012

    Geheugen voor computersystemen, de creatie ervan en de kenmerken van de functies ervan. Creatie van geheugenapparaten en fundamentele operationele kenmerken. Functionele diagrammen en een werkwijze voor het organiseren van een matrix van opslagelementen. Soorten magnetisch en flash-geheugen.

    presentatie, toegevoegd 01/12/2009

    Opslag diverse informatie als hoofddoel van het geheugen. Kenmerken van soorten geheugen. Geheugentypen SRAM en DRAM. Cachegeheugen of ultra-random access memory, de specifieke kenmerken en toepassingsgebieden ervan. De laatste ontwikkelingen op het gebied van RAM.

    presentatie, toegevoegd 12/01/2014

    Generalisatie van de belangrijkste typen en doeleinden van computer-RAM. Vluchtig en niet-vluchtig geheugen. SRAM en DRAM. Triggers, dynamisch RAM en de wijzigingen ervan. Cache-geheugen. Alleen-lezen opslagapparaat. Flash-geheugen. Soorten extern geheugen.

    cursuswerk, toegevoegd op 17-06-2013

    Verbetering van de geheugenmoduleparameters. Werking en interactie van het besturingssysteem met RAM. Analyse van de belangrijkste typen en parameters van RAM. Softwaregedeelte met verwerking van opdrachtuitvoering en plaatsing in RAM.

    cursuswerk, toegevoegd op 12/02/2009

    Algemene structuur van de microprocessor. Structuur van het 64-bit geheugensubsysteem. Selectie van invoer-/uitvoerpoorten. Kenmerken van de interface van microprocessorsystemen. Ontwerp van een geheugensubsysteem gebaseerd op Itanium 2. Berekening van informatie-inhoud en vereiste volumes.

    cursuswerk, toegevoegd op 12/05/2012

    Het concept en de functionele kenmerken van computeropslagapparaten, hun classificatie en typen, vergelijkende kenmerken: ROM, DRAM en SRAM. Beoordeling van de voor- en nadelen van elk type RAM, aanwijzingen en manieren om ze te gebruiken.

Hoofdgeheugen

Hoofdgeheugen is een opslagapparaat dat rechtstreeks op de processor is aangesloten en is ontworpen om uitvoerbare programma's en gegevens op te slaan die rechtstreeks bij bewerkingen betrokken zijn. Het heeft voldoende snelheid, maar een beperkt volume. Het hoofdgeheugen is onderverdeeld in verschillende soorten, waarvan de belangrijkste het Random Access Memory (RAM) en het Read Only Memory (ROM) zijn (Fig. 1).

RAM is ontworpen om informatie (programma's en gegevens) op te slaan die direct betrokken is bij het computerproces in de huidige bedrijfsfase.

RAM wordt gebruikt om informatie te ontvangen, op te slaan en uit te voeren. Daarin "neemt" de processor programma's en initiële gegevens voor verwerking, en schrijft de verkregen resultaten erin. Dit geheugen wordt "RAM" genoemd omdat het zeer snel werkt, waardoor de processor praktisch niet hoeft te wachten bij het lezen van gegevens uit het geheugen en het schrijven naar het geheugen. De daarin opgeslagen gegevens worden echter alleen opgeslagen als de computer is ingeschakeld. Wanneer u de computer uitzet, wordt de inhoud van het RAM-geheugen gewist. RAM is dus vluchtig geheugen.

Rijst. 1. Belangrijkste typen hoofdgeheugen

Vaak wordt voor RAM de aanduiding RAM (Random Access Memory, d.w.z. Random Access Memory) gebruikt. Willekeurige toegang betekent de mogelijkheid om direct toegang te krijgen tot alle (willekeurige) gegeven cel geheugen, en de toegangstijd voor elke cel is hetzelfde.

RAM is gebaseerd op grote geïntegreerde schakelingen die matrices van halfgeleideropslagelementen (flip-flops) bevatten. De opslagelementen bevinden zich op de kruising van de verticale en horizontale bussen van de matrix; het opnemen en lezen van informatie wordt uitgevoerd door elektrische impulsen toe te passen via de matrixkanalen die zijn verbonden met de elementen die tot de geselecteerde geheugencel behoren.

Niet alleen de mogelijkheid om met hulpbronintensieve programma's te werken, maar ook de prestaties ervan zijn afhankelijk van de hoeveelheid RAM die op de computer is geïnstalleerd, want als er een tekort aan geheugen is, wordt dit gebruikt als logische uitbreiding harde schijf, waarvan de toegangstijd onvergelijkbaar hoger is. Naast het RAM-volume worden de computerprestaties ook beïnvloed door de snelheid en de methode die wordt gebruikt om gegevens uit te wisselen tussen de microprocessor en het geheugen.

De OP is geïmplementeerd op DRAM-chips (dynamische RAM), die, vergeleken met andere soorten geheugen, worden gekenmerkt door lage kosten en hoge specifieke capaciteit, maar een hoger stroomverbruik en lagere prestaties. Elke informatiebyte (0 en 1) in DRAM wordt opgeslagen als condensatorlading. Vanwege de aanwezigheid van lekstromen moet de condensatorlading met bepaalde tussenpozen worden vernieuwd. Vanwege de voortdurende behoefte aan updates wordt dergelijk geheugen dynamisch genoemd. Het regenereren van de geheugeninhoud vergt extra tijd, en het schrijven van informatie naar het geheugen tijdens het regenereren is niet toegestaan.

De kosten van RAM zijn onlangs scherp gedaald (van de zomer van 1995 tot de zomer van 1996 - meer dan vier keer), dus de grote eisen van veel programma's en besturingssystemen aan RAM zijn vanuit financieel oogpunt minder belastend geworden.

Om de toegang tot RAM op snelle computers te versnellen, wordt een stabiel, ultrasnel cachegeheugen gebruikt, dat zich als het ware “tussen” de microprocessor en RAM bevindt en kopieën opslaat van de meest gebruikte delen van RAM. Wanneer de microprocessor toegang krijgt tot het geheugen, zoekt deze eerst naar de benodigde gegevens in het cachegeheugen. Omdat de toegangstijd tot het cachegeheugen verscheidene malen korter is dan die tot conventioneel geheugen, en in de meeste gevallen de door de microprocessor benodigde gegevens al in het cachegeheugen zijn opgeslagen, wordt de gemiddelde geheugentoegangstijd verkort. Het cachegeheugen is geïmplementeerd op een SRAM-chip (statisch RAM).

Voor computers gebaseerd op Intel-386DX of 80386SX is een cachegrootte van 64 KB voldoende, en 128 KB is ruim voldoende. Computers op basis van Intel-80486DX, DX2, DX4 en Pentium zijn meestal uitgerust met een cachegeheugen van 256 KB.

De microprocessors uit de 486- en Pentium-serie bevatten een klein intern cachegeheugen. Omwille van de duidelijkheid van de terminologie wordt in de technische literatuur het cachegeheugen op de systeemkaart soms L2-cachegeheugen genoemd.

In de Pentium Pro-microprocessor bevindt het cachegeheugen op het tweede niveau zich in één pakket met de processor zelf (je zou kunnen zeggen dat het in de microprocessor is ingebouwd).

Het is niet nodig om al het geheugen te hebben, de informatie waarin moet veranderen. Een deel van het meeste belangrijke informatie Het is beter om het permanent in het geheugen van de computer op te slaan. Dit geheugen wordt permanent genoemd. De gegevens worden tijdens de vervaardiging ervan in een permanent geheugen opgeslagen. In de regel kunnen deze gegevens niet worden gewijzigd; programma's die op de computer draaien, kunnen deze alleen lezen. Dit type geheugen wordt gewoonlijk ROM (alleen-lezen geheugen) of ROM (alleen-lezen geheugen) genoemd.

Een IBM PC-compatibele computer slaat programma's op in het permanente geheugen om de hardware en de computer te testen, het laden van het besturingssysteem (OS) te initiëren en uit te voeren basisfuncties voor het onderhoud van computerapparatuur. Omdat meest deze programma's zijn gekoppeld aan I/O-services, vaak de inhoud permanente herinnering genaamd BIOS (Basic Input - output System, of basissysteem invoer-uitvoer).

Veel computers hebben een op FLASH gebaseerd BIOS. Dergelijk geheugen kan worden gewijzigd door programma's, waarmee u het BIOS kunt bijwerken met speciale programma's, zonder het moederbord of de BIOS-chip te vervangen.

Op alle, behalve zeer oude computers, bevat het BIOS ook een computerconfiguratie-installatieprogramma (SETUP). Hiermee kunt u bepaalde kenmerken van computerapparaten instellen (types videocontroller, harde schijven en diskettestations, sommige ook bedieningsmodi met RAM, vragen om een ​​wachtwoord bij het opstarten, enz.). Normaal gesproken wordt het configuratieprogramma aangeroepen als de gebruiker tijdens het opstarten op een specifieke toets of toetsencombinatie drukt (meestal de Del-toets).

FLASH-geheugencapaciteit van 32 KB tot 2 MB, leestoegangstijd 0,06 μs, schrijftijd per byte ongeveer 10 μs; FLASH-geheugen is een niet-vluchtig geheugen.

Naast normaal RAM en ROM heeft de computer een kleine hoeveelheid geheugen voor het opslaan van computerconfiguratie-instellingen. Het wordt vaak CMOS-geheugen genoemd omdat dit geheugen meestal wordt gemaakt met behulp van CMOS-technologie (complementary metal-oxide semiconductor), die een laag stroomverbruik heeft. De inhoud van het CMOS-geheugen verandert niet wanneer de computer wordt uitgeschakeld, omdat deze een speciale batterij gebruikt om de computer van stroom te voorzien.

De hoofdgeheugencapaciteit bestaat dus uit miljoenen individuele cellen geheugencapaciteit van elk 1 byte. De totale hoofdgeheugencapaciteit van moderne pc's varieert doorgaans van 1 tot 4 GB. De capaciteit van RAM is één tot twee ordes van grootte groter dan de capaciteit van ROM: ROM neemt maximaal 2 MB in beslag op nieuwe moederborden), de rest is RAM.

ORGANISATIE VAN HET GEHEUGEN IN COMPUTINGMACHINES

Doel, belangrijkste parameters en

Classificatie van soorten geheugen

Geheugenapparaten (opslagapparaten) VM zijn ontworpen voor het opnemen, opslaan en lezen van informatie die in digitale vorm wordt gepresenteerd /2,3/. Geheugenapparaten, zoals processors, werken met twee soorten informatie: programma's en gegevens, dus geheugenkenmerken bepalen grotendeels de prestaties en prestaties functionaliteit VM.

Geheugenapparaten werken in twee modi: toegang tot geheugen En opslag. In de geheugentoegangsmodus wordt informatie geschreven of informatie uit het geheugen gelezen. Als het geheugen niet wordt benaderd, gaat het naar de opslagmodus.

De belangrijkste parameters die geheugenapparaten kenmerken zijn informatiecapaciteit (volume), prestaties, energieverbruik en kosten (2,5,8/).

Informatiecapaciteit (volume) Een geheugenapparaat wordt bepaald door de maximale hoeveelheid opgeslagen informatie en wordt gemeten in bytes, KB, MB, GB en TB.

1 KB = 2 10 bytes; 1MB = 2 20 bytes; 1GB = 2 30 bytes en 1TB = 2 40 bytes.

Geheugenprestaties worden gekenmerkt door de volgende hoofdparameters:

bemonsteringstijd (toegang) t V, een bepaald tijdsinterval tussen de momenten van het bemonsteringssignaal (het begin van de leescyclus) en de ontvangst van de gelezen gegevens aan de geheugenuitgang;

duur van de circulatiecyclus t C, die wordt bepaald door het minimaal toegestane tijdsinterval tussen opeenvolgende geheugentoegangen. Gezien het feit dat toegang tot het geheugen schrijven of lezen betekent, is het soms verdeeld duur van de leescyclus t C.CHT. En duur van de opnamecyclus t Ts.ZP. voor typen geheugen waarvoor deze cycluslengten verschillend zijn, d.w.z. t C.CHT. ≠ t Ts.ZP .

IN algemeen geval de toegangscyclus bestaat daarom uit een ophaalfase (toegangsfase) en een geheugenregeneratiefase (herstelfase). t C > t V.

De geheugensnelheid kan ook worden gekarakteriseerd door de overdrachtsnelheid van gegevens die worden geschreven of gelezen en gemeten in MB/sec.

Het stroomverbruik voor veel soorten geheugen in de toegangsmodus is aanzienlijk hoger dan in de opslagmodus. Niet-vluchtig geheugen in de opslagmodus verbruikt helemaal geen elektriciteit. Maar een aantal soorten geheugen, bijvoorbeeld elektronisch dynamisch geheugen, vereisen regeneratiecycli in de opslagmodus, dus het stroomverbruik in deze modus is vergelijkbaar met het stroomverbruik in de toegangsmodus.

Om verschillende soorten geheugen te vergelijken, is het handig om het energieverbruik en de kosten van geheugenapparaten te gebruiken die zijn teruggebracht tot één cel (d.w.z. specifiek).

Een belangrijke parameter geheugen is dat ook breedte van geheugendatabus, het definiëren van het aantal bytes dat tegelijkertijd kan worden gelezen of geschreven.

VM-geheugenapparaten kunnen worden geclassificeerd op basis van verschillende criteria: fysieke principe werk, per functioneel doel, per organisatiemethode, de behoefte aan stroomvoorziening in opslagmodus, enz.

Volgens het fysieke werkingsprincipe wordt het geheugen geclassificeerd in elektronisch, magnetisch, optisch en magnetisch-optisch.

Elektronisch geheugen uitgevoerd op halfgeleiderelementen en geïmplementeerd in de vorm van LSI. Elektronisch geheugen is onderverdeeld in statisch En dynamisch.

IN BIS statisch geheugen Statische triggers op bipolaire of veldeffecttransistors worden gebruikt als elementaire geheugencellen. Zoals bekend is het aantal stabiele toestanden van een trigger twee, waardoor deze kan worden gebruikt om een ​​informatie-eenheid op te slaan - een beetje. Geheugencellen voor het opslaan van bytes en woorden gebruiken respectievelijk 8 en 16 flip-flops.

In dynamische geheugen-LSI's worden de volgende gebruikt als elementaire geheugencellen: elektrische condensatoren. De aanwezigheid van een lading komt overeen met de opslag van een logische “1”, de afwezigheid van een lading – met de opslag van een logische “0”. Als opslagcondensatoren worden ofwel de interelektrodecapaciteiten van MOS-transistors, ofwel speciaal gemaakte MOS-condensatoren in het LSI-kristal gebruikt. Fragment blokdiagram dynamisch geheugen met twee cellen 1 en 2 wordt getoond in figuur 6.1.

Elke elementaire geheugencel bevat een MOS-opslagcondensator C (tienden van een pF) en een transistorschakelaar T die deze condensator verbindt met de databus. De poort van de transistor-MOS-schakelaar is verbonden met de overeenkomstige uitgang van de adresdecoder. Wanneer een cel wordt geselecteerd, gaat schakelaar T open en wordt condensator C met de databus verbonden. Verder worden, afhankelijk van het type commando: schrijven (WR) of lezen (RD), invoergegevens geschreven (DI) of uitvoergegevens gelezen (DO) via de overeenkomstige versterker.

Dynamisch geheugen is vergeleken met statisch geheugen veel eenvoudiger, goedkoper en biedt zeer veel hoge graad integratie, d.w.z. hogere specifieke capaciteit. Maar vergeleken met statisch dynamisch geheugen heeft lagere prestaties en vereist periodieke regeneratie (herstel) van informatie in elementaire cellen. Met andere woorden, het is noodzakelijk om periodiek de lading van de opslagcondensatoren C te herstellen, die zichzelf in de loop van de tijd ontladen, d.w.z. informatie ‘verliezen’. Om dit te doen, wordt elke paar milliseconden (msec) de informatie uit de geheugencellen gelezen en vervolgens wordt de informatie herschreven, waardoor de lading op de opslagcondensatoren C kan worden hersteld. De noodzaak om periodieke vernieuwingscycli te organiseren maakt dynamisch geheugen beheer iets ingewikkelder.

Voor typische elektronische geheugenmodules: toegangstijd t V varieert van eenheden tot tientallen nanoseconden ( Nsec), en de informatiecapaciteit is tientallen - honderden MB.

Statisch en dynamisch elektronisch geheugen wel vluchtig, d.w.z. Wanneer de stroomvoorziening wordt uitgeschakeld, wordt de informatie in de cellen niet opgeslagen. Er is ook niet-vluchtig elektronisch geheugen – alleen-lezen geheugenapparaten (ROM), waarvan informatie alleen kan worden gelezen tijdens de werking van de VM. ROM-geheugencellen zullen hieronder worden besproken.

Magnetisch geheugen is gebaseerd op de aanwezigheid in een aantal magnetische materialen (bijvoorbeeld ijzeroxide) van twee stabiele toestanden van remanente magnetisatie van het tegenovergestelde teken. Dergelijke magnetische materialen worden gekenmerkt door een rechthoekige hysteresislus B = f(H), en daaruit wordt een werkende magnetische laag gemaakt, aangebracht op het oppervlak van verschillende bewegende media - magnetische schijven. Voor het schrijven en lezen van informatie worden magneetkoppen gebruikt, dit zijn miniatuurinductorspoelen die met een opening op een magnetische kern zijn gewikkeld. Bij het registreren magnetiseert de magneetkop het gedeelte van de magnetische laag dat onder de werkspleet doorgaat in de richting die wordt bepaald door de richting van de vloeiende stroom. Bij het lezen passeren gemagnetiseerde delen van het oppervlak de inductieve leeskop en induceren daarin emf-pulsen. Geheugenapparaten die dit principe gebruiken, hebben zeer lage specifieke kosten voor het opslaan van informatie, zijn niet-vluchtig, maar omdat ze elektromechanisch zijn, zijn ze aanzienlijk inferieur aan elektronisch geheugen in termen van snelheid, betrouwbaarheid en energieverbruik. Voor HDD's bereikt de gegevensoverdrachtsnelheid tientallen MB/sec, en de informatiecapaciteit honderden GB.



IN optisch geheugen Om informatie op te slaan, wordt gebruik gemaakt van een verandering in de optische eigenschappen (voornamelijk de mate van reflectie) van het media-oppervlak. De optische media zijn gemaakt in de vorm van een schijf (Compact Disk - CD), waarvan de reflecterende laag (metaalcoating) is bedekt met een laag organische kleurstof. Bij het opnemen wordt de laserstraal gemoduleerd door de stroom opgenomen bits en worden op bepaalde plaatsen in het spoor gaten in de kleurstoflaag gebrand. Vanwege het verschil in de reflectiecoëfficiënt van de putjes en onverbrande gebieden van het oppervlak tijdens het lezen, vindt er een modulatie van de helderheid van de gereflecteerde straal plaats, die de van de CD gelezen informatie codeert. Geproduceerd verschillende soorten optische CD-schijven: CD-ROM (Read Only Memory) - waardoor alleen informatie kan worden gelezen die is opgenomen in een matrixmethode, CD-R (Recordable) - waardoor ten minste één keer naar de schijf kan worden geschreven en herhaald kan worden gelezen, CD-RW (ReWritable) - waardoor herhaaldelijk herschrijven op schijf mogelijk is (en natuurlijk lezen). Optische schijven Ze zijn goedkoop en hebben een aanzienlijke informatiecapaciteit (tot één GB), zijn niet-vluchtig en gemakkelijk vervangbaar, maar qua snelheid, betrouwbaarheid en energieverbruik zijn ze, net als magnetische schijven, aanzienlijk inferieur aan elektronisch geheugen.

Op basis van hun functionele doel kunnen geheugenapparaten worden geclassificeerd in willekeurig toegankelijk geheugen (SRAM), willekeurig toegankelijk geheugen (RAM), alleen-lezen geheugen (ROM) en extern opslagapparaat (ESM).

RAM bedoeld voor het opslaan van programma's (systeem, applicatie) en gegevens die rechtstreeks door de CPU worden gebruikt huidige tijd. De duur van de lees- en schrijfcycli voor RAM is meestal hetzelfde. Normaal gesproken wordt dynamisch geheugen tot een paar GB gebruikt als RAM, afhankelijk van het doel en de omvang van het MS.

SRAM of cache-geheugen- dit is een klein, snel geheugen waarvan de toegangcyclustijd tC korter is dan de duur van de processormachinecyclus. Daarom is het bij het benaderen van cachegeheugen niet nodig om processorwachtcycli te introduceren in de toegangscycli van het machinegeheugen. Cachegeheugen is een buffergeheugen tussen RAM en CPU en draait op statisch geheugen. De cache slaat kopieën op van blokken (pagina's) van programma's en gegevens uit de RAM-gebieden die het laatst zijn geopend, evenals een map - een lijst met hun huidige correspondentie met RAM-gebieden. Elke keer dat er RAM-toegang wordt verkregen, controleert de directorycachecontroller of er een geldige kopie van het opgevraagde blok (pagina) in de cache aanwezig is. Als er een kopie aanwezig is, dan is dit het geval cachehits, en alleen het cachegeheugen is toegankelijk voor gegevens of code. Als daar geen geldig exemplaar aanwezig is, dan is dit het geval cache gemist, en het vereiste blok (pagina) uit RAM wordt naar de cache geschreven, en het schrijven wordt uitgevoerd in plaats van het minst relevante blok (pagina) dat eerder uit de cache in RAM is verwijderd, d.w.z. informatieblok, waarvan het aantal toegangen het kleinst was. Vanwege de fundamentele eigenschappen die inherent zijn aan programma's en gegevens, zoals ruimtelijk En tijdelijke plaats/2,7,13/ het aantal cache-hits is vele malen groter dan het aantal cache-missers, zelfs met kleine (eenheden - tientallen KB) cachegeheugengroottes. Daarom verbetert het gebruik van cachegeheugen de VM-prestaties aanzienlijk. Normaal gesproken wordt de cache geïmplementeerd volgens een schema op drie niveaus: een primaire cache (L1 Cache), met een capaciteit van tientallen KB, en een secundaire cache (L2 Cache), met een capaciteit van honderden KB, gelegen in de MP-kristal, een cache op het derde niveau (L3 Cache), MB-eenheden worden geïnstalleerd op het moederbord of in het MP-gebouw.

ROM is een elektronisch niet-vluchtig geheugen dat wordt gebruikt om informatie op te slaan die onveranderlijk is of zelden wordt gewijzigd tijdens de werking van een VM: systeemsoftware (BIOS), applicatiesoftware voor embedded en on-board VM's, tabellensets, configuratieparameters van verschillende systemen, enz. De belangrijkste werkingsmodus van ROM is lezen, wat hiervoor een andere algemene naam bepaalt ROM-geheugen(Alleen-lezen geheugen). Het schrijven van informatie naar ROM, ook wel programmeren genoemd, is doorgaans veel moeilijker en vergt meer tijd en energie dan het lezen ervan.

VZU ontworpen voor niet-vluchtige opslag grote volumes gestructureerde informatie op een bepaalde manier: bestanden, databases, archieven. Karakteristiek kenmerk extern geheugen is dat de apparaten werken met informatieblokken, en niet met bytes of woorden, zoals RAM toestaat. Bovendien heeft de processor alleen via RAM toegang tot het VRAM. Schijfstations (HDD's, CD's) worden meestal gebruikt als VRAM, waardoor honderden GB aan informatie kan worden opgeslagen.

Buffer elektronisch geheugen opgenomen in controllers van verschillende externe apparaten, probleemoplossers weergave en invoer van informatie, communicatietaken, signaalconversie, enz. Dankzij de aanwezigheid van buffergeheugen kunt u aanzienlijk verschillende informatieoverdrachtsnelheden coördineren systeem bus en externe apparaten, verkort de tijd dat elk extern apparaat de systeembus gebruikt en verhoog de VM-prestaties.

De methode voor het organiseren van het geheugen wordt bepaald door de methode voor het plaatsen en zoeken naar informatie in het geheugen. Op basis van deze functie maken ze onderscheid tussen adres-, associatieve en stapelgeheugenorganisatie.

IN adres geheugen om toegang te krijgen tot geheugencellen die ze gebruiken adressen, wat verwijst naar de codes van geheugencelnummers. Door de adresorganisatie van het geheugen kunt u toegang krijgen tot geheugencellen op basis van hun adressen in elke volgorde, en de duur van de toegangcyclus is voor alle cellen hetzelfde, ongeacht het adres. Daarom wordt de term "random access memory" of RAM (Random Access Memory) ook gebruikt om dergelijk geheugen te noemen. RAM en ROM hebben bijvoorbeeld een adresseerbare geheugenorganisatie.

IN associatief geheugen(AMU)-informatie wordt niet gezocht op basis van de adressen van geheugencellen, maar op basis van hun inhoud of een deel daarvan. In het algemene geval wordt een verzoek aan het associatieve geheugen uitgevoerd door het specificeren van een lijst met bits die gebruikt moeten worden om naar een geheugencel te zoeken, en door het specificeren van de inhoud van de toegewezen bits. De lijst met bits waarnaar moet worden gezocht, wordt gespecificeerd in register-masker. Dit register heeft dezelfde bitbreedte als de geheugencel van het RAM, en bevat alleen bits in de bits die worden doorzocht. IN register-context de inhoud van deze bits is gespecificeerd en de bitdiepte ervan is gelijk aan de bitbreedte van het maskerregister.

Als een cel met een bepaalde combinatie van nullen en enen wordt gevonden, genereert de ACU een positief antwoord dat het adres van de gevonden cel aangeeft. Vervolgens wordt het adres overgebracht naar de adresdecoder en kan de volledige inhoud van zo'n cel worden gelezen of kan er nieuwe inhoud naar worden geschreven. Anders genereert de ACU een negatief antwoord op het verzoek.

Het zoeken naar informatie op context in het RAM gebeurt gelijktijdig over alle geheugencellen heen, waardoor het RAM vele malen sneller is dan het RAM, maar ook veel meer kost. In moderne computersystemen worden RAM's bijvoorbeeld gebruikt als onderdeel van het cachegeheugen.

Stapel geheugen(Stack) is, net als associatief, adresloos. Een stapel kan worden gezien als een verzameling cellen die een eendimensionale array vormen waarin aangrenzende cellen met elkaar zijn verbonden door bitwoordoverdrachtscircuits. In dit geheugen wordt geschreven en gelezen volgens de regel “Last Input First Output (LIFO)”. Dat is de reden waarom de stapel "opslag" -geheugen wordt genoemd in omgekeerde volgorde lezing. Meestal is de stapel georganiseerd in RAM. Het aantal woorden op de stapel wordt bepaald door het stapelwijzerregister SP, en het schrijven naar en lezen van de stapel wordt uitgevoerd met behulp van respectievelijk de PUSH- en POP-opdrachten. Stapelgeheugen wordt, zoals hierboven besproken, veel gebruikt bij het verwerken van interrupts en het aanroepen van subroutines.

Naast het stapelgeheugen is het ‘tijdschrift’-geheugen met een hoge leesvolgorde wijdverspreid geworden, d.w.z. "eerste geschreven eerst lezen" of "Eerste invoer, eerste uitvoer (FIFO)". Dit geheugen wordt buffergeheugen genoemd en is, net als de stapel, georganiseerd in RAM.