Vego's geïllustreerde encyclopedie van de elektronica


vorige woord     volgende woord     index van de letter A    algemene index    

A20 handler

Een softwarematig systeem om bij de oude IBM PC's met 386 processor toegang te krijgen tot het HMA, de High Memory Area. Dit is een geheugengebied van 64 kB dat boven de 1 MB-grens ligt die de oudere processoren maximaal konden adresseren. In dit extra geheugengebied kon men device-drivers en delen van MS-DOS plaatsen.

De device-driver HIMEM.SYS stelde een gedefinieerde interface ter beschikking om deze 64kB in de real-modus te benaderen. Aangezien ook systeem-drivers als SMARTDRV.SYS of RAMDRIVE.SYS dit geheugenfragment gebruiken, kan een benadering ervan zonder HIMEM.SYS tot een botsing van gegevens leiden. Een ander probleem doet zich bij bepaalde MS-DOS-versies voor: sommige interne en niet gedocumenteerde functies vertrouwen op de wrap-around 8086/8088. In een 386 vindt deze echter nooit plaats. Men kan de i386 echter te slim af zijn, door het adreskanaal A20 met het 2le adresbit via een extern verbindingselement geforceerd op laag te zetten. Het geheugen wordt dan benaderd alsof er sprake is van een wrap-around bij een adres boven 1 MB.

De besturing van het verbindingselement voor het activeren of deactiveren van het adreskanaal A20 verloopt bij de AT via de toetsenbord controller. Naast een aantal andere taken is HIMEM.SYS er ook voor verantwoordelijk dat kanaal A20 alleen bij een gewenste benadering van de eerste 64 kB van het extended geheugen wordt geactiveerd en dat in andere gevallen door een deactivering van A20 een wrap-around in de processor wordt geëmuleerd. SMARTDRV.SYS en RAMDRIVE.SYS gebruiken de protected-modus om toegang te krijgen tot het extended geheugen.
Dat mag echter niet tot een botsing met gegevens in de eerste 64 kB (de high memory area) leiden. In de protected-modus zijn alle 32 adreskanalen van de adresbus onbeperkt beschikbaar. Met bepaalde functies van HIMEM.SYS kan tevens het extended memory in de protected-modus worden benaderd. De adresberekening in de real-modus is bij de 386 op nog een ander punt verschillend van de 8086 of diens opvolger de 80286. Met het 32 bit offsetregister kan de 386 met behulp van adresprefixen eigenlijk 32 bit adressen genereren. Wordt de inhoud van een 32 bit offsetregister als adres gebruikt en ligt de waarde van het berekende effectieve adres boven de FFFFhex, dan genereert de 386 een zogenaamde pseudo protection exception zonder foutcode, die een interrupt 12 of 13 tot gevo]g heeft.

Interessante elektronica links
Klik hier ... Kattenschrikdraad installatie houdt katten in of uit uw tuin
Klik hier ... Boeken voor de elektronicus
Klik hier ... Software voor schema tekenen, print ontwerpen en simulatie
Klik hier ... Goedkope digitale oscilloscopen, via USB aan te sluiten op uw PC
Klik hier ... Goedkope meetapparatuur voor het testen van uw onderdelen
Klik hier ... Draadloze elektronica in uw huis
Klik hier ... Inbraakalarm van Marmitek en KlikAanKlikUit
Klik hier ... Bespaar energie met PowerSafer
Klik hier ... Goedkope dataloggers voor t, RH, CO, V en I
Klik hier ... Educatieve producten voor het basisonderwijs