In- och utgångsenheter (I/O) är de delar av ett datorsystem, som tangentbordet eller modemet, som skickar eller tar emot information till och från datorns processorer. I minnesmappade I/O-system använder I/O-enheter en del av datorns minne som adress för att överföra meddelanden. I datorer med isolerade minnessystem har I/O och minne olika adresser.
I/O
Datorsystem kan mappa I/O till en adress i minnesbankerna eftersom processen med att skicka I/O-enheter liknar utbyte av data med datorminne. Samma buss - den elektroniska vägen för att överföra information till och från processorerna - tjänar till att komma åt både minne och in- och utenheter. En nackdel med isolerat minne är att minneskartsystem är enklare för bussen, eftersom den använder samma uppsättning adresser för I/O och minnesoperationer.
Dagens video
Minneskarta
I ett minnesmappat system blir det svårt för datorn att skilja I/O-operationer från andra programvarualternativ som får åtkomst till minne; isolerade minnessystem har inte detta problem. I/O-operationer i minnesmappade datorer använder bara en del av hela minnesadressen för att göra deras plats mer distinkt. Isolerade minnessystem är mer komplexa eftersom de, till skillnad från minnesmappade datorer, inte kan använda samma avkodnings- och kontrollsystem för minnes- och I/O-enheter. I minnesmappade datorer fungerar alla instruktioner som tar ut data ur minnet också på in- och utenheter.
Programmering
I en dator med isolerat minne är programmeringen renare: I/O har sin egen separata adress, så datorn kan använda adresserna för att identifiera om det är minne eller I/O som ett program ska arbeta med. Med minnesmapping kan dock vilken instruktion som helst som refererar till minne också användas som en instruktion till I/O-systemet. Med isolerat minne behöver program läggas till "In" och "Out" instruktioner för att extrahera eller skicka data till minne eller I/O-adresser.
Minnesutrymme
När en dator använder ett minnesmappat I/O-system, ägnas en del av utrymmet som datorn använder för minne till in- och utadresser, vilket ger mindre till faktisk minneslagring. Med minneskartläggning måste I/O-adresser skrivas så att de skiljer sig från minnesbankerna runt dem; att tilldela I/O-adresser är enklare i system med isolerat minne. Eftersom I/O-enheter tar upp mindre utrymme än minne vid en given adress, är det möjligt att en del av minnesutrymmet på I/O-adressen kommer att vara oanvänd och bortkastad.