Arbetsminnets egenskaper

Arbetsminnets egenskaper

Arbetsminnet eller RAM-minnet är en av de väsentliga delarna i en dator. Om inget minne är installerat kommer datorn att vägra starta. Det som skiljer mellan olika minnen är bland annat tekniken, hastigheten och storleken. Detta kapitel kommer att undersöka arbetsminnets funktion och egenskaper. Nästa kapitel tar sedan vid och går in på de olika varianterna.

Definitionen av arbetsminne

Det som här benämns arbetsminne har många synonyma namn vilka används mer eller mindre frekvent. Begreppen internminne, primärminne och RAM-minne (Random Access Memory) har samma betydelse. Äldre benämningar såsom RWM-minne (Read-Write Memory) förekommer också. RWM kommer av att det både går att läsa och skriva till det.

De första datorerna som kunde lagra data använde bandstationer. Där gick det endast att läsa och skriva information i en bestämd ordning. Om informationen som skulle hämtas var skriven i slutet av bandet fanns det inget annat val än att spola fram dit. Arbetsminnet behöver inte läsa allt i samma ordning utan kan gå direkt till adressen där den efterfrågade informationen finns lagrad.

Arbetsminnets uppgift

Som det beskrevs i början av datoravsnittet arbetar en dator hela tiden med olika typer av minnen. Det finns hårddiskar, arbetsminnen, cacheminnen, flashminnen, optiska lagringsmedier och många andra typer. Alla lagrar ettor och nollor men skiljer sig från varandra när det gäller hur snabba de är och på vilket sätt de lagrar informa­tionen. Hårddisken är ett lagringsmedium som är lämpligt för större mängder data. Den är relativt billig och behåller all information även när datorn stängs av. Däremot är den för långsam för att processorn ska kunna arbeta effektivt med den. Då processorn är mycket snabb på att behandla information behöver den ett snabbt minne att arbeta mot. Om processorn måste vänta på att informationen ska läsas eller lagras sjunker datorns prestanda. Arbetsminnet används för att lagra all data som processorn behöver för stunden eller inom en snar framtid.

Hårddiskens, arbetsminnets och processorns uppgifter vid uppstart av datorn.

När datorn startar hämtas operativsystemets viktigaste delar från hårddisken och läggs i arbetsminnet. På så sätt blir de lättåtkomliga. När operativsystemet sedan används för att starta ett program läggs även det in i arbetsminnet. Samma sak gäller eventuella dokument som programmet öppnar. När programmet sedan avslutas rensas det bort från arbetsminnet för att ge plats åt ny information.

Som det nämndes i ett föregående kapitel har processorn också sitt eget minne. Det används endast för den information som processorn jobbar med för ögonblicket, vilket gör att det inte behöver vara speciellt stort. Däremot måste det vara extremt snabbt; ännu snabbare än arbetsminnet.

Behovet av stort arbetsminne

Det är lätt att se vitsen med att ha en stor hårddisk då det ger mycket plats för att lagra bilder, filmer, musik och dokument. Det är inte heller många som ifrågasätter varför processorn ska vara snabb. Att ha snabbt och framförallt mycket arbetsminne är dock lika viktigt. Ju större arbetsminne datorn har, desto mer information kan den lagra temporärt med snabb åtkomst. Det innebär att fler program kan vara igång samtidigt med bibehållen prestanda.

Ofta blir datorn långsammare med tiden. Det beror inte på att datorn börjar bli utsliten, utan troligen på att den är fylld med program som körs i bakgrunden. En annan orsak kan vara att hårddisken har blivit fragmenterad (läs mer). En dator som inte ominstallerats på några år blir ofta full med applikationer som startas utan att användaren ber om det. Här följer några vanliga exempel:

  • Antivirusprogram och brandväggar
  • Synkroniseringsprogram
  • Konfigurationsprogram för ljudkort, tangentbord och möss
  • Hanterare för trådlösa anslutningar
  • Kommunikationsprogram (t.ex. Skype)
  • Mediaspelare
  • Grafikkortshanterare
  • Uppdateringstjänster

Många av dessa program är nödvändiga, men de stjäl prestanda. Om datorn dessutom har lite arbetsminne sänks prestandan ytterligare. Det tillkommer även diverse så ­kallade snabbstartare. Det är små applikationer som gör att större program startar snabbare. Alla dessa program hamnar tillsammans med operativsystemet i arbetsminnet. Det gör även alla program som användaren manuellt väljer att starta.

Det går att se vilka program som startas automatiskt samtidigt som Windows 8. Det görs genom att gå in i Aktivitetshanteraren och välja Autostart. Där går det till och med att se hur stor inverkan de olika programmen har på datorns starttid.

Aktivitetshanteraren visar vilka program som automatiskt startar tillsammans med Windows 8.

I Windows Vista och Windows 7 finns en liknande översikt som tyvärr saknar informationen om inverkan på datorns startstid. Skriv msconfig direkt i sökfältet på Start­menyn, tryck på Enter och välj fliken Autostart för att få fram översikten.

Tänk på att inte ändra några inställningar om du inte känner dig säker på vad du gör, framförallt inte i BOOT.ini. Ändringar kan göra att systemet blir instabilt eller slutar att fungera helt och hållet. Vissa program måste starta samtidigt som Windows för att datorn ska fungera. Antivirusprogrammet ska exempelvis alltid startas samtidigt. Använd hellre programvarornas egna inställningar (för huruvida de ska starta samtidigt som Windows) när du har identifierat vilka program som berörs. Genom att inaktivera några av dem kan datorns prestanda höjas.

Dagens programvaror blir också alltmer minneskrävande. En dator från 2005 som kändes snabb då, hade också varit det idag om den varit nyinstallerad och endast använt program från samma tidsperiod. De programvaror som släpps idag är avsedda för de senaste datorerna (som har mer minne) och de upplevs därför som långsamma på äldre maskiner.

Diagrammet visar tydligt hur operativsystemen med tiden har blivit alltmer minneskrävande. Uppgifterna finns att läsa i detalj på Microsofts webbplats www.microsoft.com.
Lägsta systemkrav för Mac OS X enligt Apples officiella systemkravsdokument (undantaget 10.76)

Microsoft Windows Vista, Windows 7 och Windows 8 är operativsystem som kräver relativt mycket arbetsminne. Att installera Windows 8 på en dator som tidigare körde Windows XP brukar kräva en minnesuppgradering, eftersom Windows 8 behöver ­betydligt större arbetsminne än Windows XP för att fungera dugligt: minst 1 GB för 32-bitarsversionen respektive 2 GB för 64-bitarsversionen.

Redaktionens rekommendationer för att kunna använda Windows överhuvudtaget.
Redaktionens rekommendationer för att kunna använda Mac OS X överhuvudtaget.

Vid tidigare uppgraderingar, exempelvis från Windows 95 till -98 och från Windows 2000 till -XP, krävdes det inte stora uppgraderingar av hårdvaran. Att det blev större skillnad mellan Windows XP och Windows Vista berodde till stor del på att det gick lång tid mellan lanseringstillfällena. Windows XP lanserades ett och ett halvt år efter Windows 2000. Sedan dröjde det över fem år innan Windows Vista anlände. På så lång tid hinner det hända mycket på hårdvarusidan. Skillnaden i minneshunger var procent­uellt sett inte lika stor mellan Windows Vista och Windows 7, men gick heller inte lika lång tid mellan lanseringstillfällena. Mellan Windows 7 och Windows 8 blev det ingen skillnad alls i minneshungern.

Vid en uppgradering från Windows XP eller Windows Vista till Windows 8 är det av nämnd anledning smart att samtidigt investera i mer arbetsminne för att datorn inte ska upplevas långsam. Det är även värt att tänka på vid uppgradering till ett nytt Service Pack. Sådana uppgraderingar kan också öka behovet av arbetsminne.

Virtuellt minne

Datorn har även något som kallas virtuellt minne. Det är en del av hårddisken som datorn använder för att lagra information som används, men inte behöver ligga snabb­åtkomlig i arbetsminnet. Med en lite äldre dator inträffar det ibland att den plötsligt blir mycket långsammare än den var för en stund sedan. Det kan inträffa om användaren har flera program igång samtidigt och arbetsminnet då inte räcker till. När detta sker kommer datorn att försöka lösa problemet genom en "nödlösning": den börjar arbeta alltmer aktivt med hårddisken. Sådan information som borde ligga snabbåtkomlig i arbetsminnet hamnar då istället på den långsamma hårddisken.

När arbetsminnet blir fullt används hårddisken.
Prestandajämförelse mellan hastigheten på ett arbetsminne, en vanlig hårddisk, en SSD-enhet och ett snabbt minneskort för kameror.

Diagrammet ger en förklaring till vad som händer när arbetsminnet börjar växla aktivt med hårddisken. Informationen som för tillfället används minst flyttas till det virtuella minnet för att frigöra plats i arbetsminnet. När den informationen ska användas igen måste den läsas tillbaka från hårddisken.

Om det virtuella minnet på hårddisken blir fullt, kommer det fram en dialogruta som ger förslag på åtgärder (oftast att öka storleken på det virtuella minnet). Detta fel­meddelande kan dock ses som en tydlig indikator på att datorn har för lite arbetsminne.

Superfetch

Det finns fler fördelar med mycket minne. Det kan ge förbättrad batteritid i en bärbar dator eftersom hårddisken inte behöver vara lika involverad. I Windows Vista, Windows 7 och Windows 8 finns även funktionen Superfetch som kan ge en prestandaökning. Super­fetch är en funktion som alltid försöker förbereda datorn för vad som väntar. Om ett program brukar startas upp vid ett visst tillfälle kan Superfetch ladda in delar av det i förväg och hålla det i beredskap. Det tar visserligen lite plats i arbetsminnet, men det ger samtidigt en prestandaökning eftersom inte lika mycket data behöver läsas in från hårddisken när det väl är dags att starta det berörda programmet. Observera att Superfetch inte är samma sak som snabbstartare, vilket behandlades inledningsvis i detta kapitel. I Windows XP finns inte Superfetch, men däremot en föregångare vid namn Prefetch.

Maximal storlek på arbetsminne

Det är alltid bra att ha mycket arbetsminne men det finns en övre gräns på vad som går att använda. Det kan dels finnas en begränsning på datorns moderkort för hur mycket minne det kan hålla reda på. I moderkortets manual står oftast exakt vad som gäller för den aktuella datorn. Moderna stationära datorer har sällan problem med mycket minne. Bärbara datorer kan dock fortfarande ha lågt satta gränser. Om manualen saknas finns det program som kan användas för att undersöka datorn. SiSoftware Sandra är ett populärt sådant program som finns i en gratis utvärderingsversion (se www.sisoftware.net). Minnes- och datortillverkarnas webbplatser brukar också vara bra för att få reda på informationen.

Även operativsystemet har betydelse. Ett 32-bitarssystem kan adressera upp till 4 GB minne. Att gränsen är 4 GB beror på att efter det tar minnesadresserna slut. Den längsta adressen som går att adressera med 32 bitar är nämligen:

232 = 4 294 967 296

Eftersom det ligger en byte på varje adress blir det lika många bytes. Det går lätt att räkna om det till gigabyte för att lättare kunna greppa storleken. Det går 1024 B på 1 kB, 1024 kB på en MB och 1024 MB på en GB.

4 294 967 296 / (1024 • 1024 • 1024) = 4 GB

4 GB är dock den totala mängd minne en 32-bitarsdator kan hålla ordning på. Detta gäller inklusive minnet på grafikkortet och annat minne som datorn reserverar. Därför går det normalt inte att använda mycket mer än cirka 3 GB arbetsminne. Lösningen på problemet är att byta till ett modernt 64-bitarssystem (under förutsättning att processorn klarar det, vilket i princip alla moderna modeller gör). Då blir den maximala minnesmängden som går att adressera:

264 = 18 446 744 073 709 551 616 B

Det är 16 exabyte, avsevärt mycket mer än vad en hårddisk kan rymma idag. Visserligen finns det än så länge varken mjukvara eller hårdvara som kan hantera den stora minnesmängden, men man vet aldrig vad framtiden har att utvisa. Det klassiska citatet "640 k ought to be enough for anyone" (påstås ha sagts av Bill Gates 1981) visar hur svårt det är att göra förutsägelser om framtiden.

Operativsystemen har också en gräns för hur mycket minne de kan hantera. Här följer en sammanställning över operativsystem i urval7.

Alternativ lösning på problemet (PAE)

Det finns ett alternativt sätt att lösa problemet. Det är genom att ta hjälp av en teknik som heter PAE (Physical Address Extension). PAE gör att den maximala adresslängden förlängs till 36 bitar. Därmed går det i teorin att ha upp till 64 GB minne eftersom:

236 = 68 719 476 740 B

Angivet i gigabyte blir det 64 GB. Skrivbordsversionerna av Windows är dock ändå låsta till 4 GB. Detta för att förhindra att drivrutiner som används till konsument­elektronik skapar problem då dessa eventuellt inte fungerar stabilt på ett 32-bitars­system med så mycket minne. Serverversionerna klarar däremot mer, och det är framförallt i sådana sammanhang PAE används. PAE-lösningen ger inte heller de övriga fördelarna som ett renodlat 64-bitarssystem ger. Att istället satsa på ett riktigt 64-bitarssystem är därför att rekommendera.

Arbetsminnets tekniska uppbyggnad

Det finns många olika typer av minnen. Här följer en förenkling av hur ett minne som bygger på SDRAM (Synchronous Dynamic Random Access Memory) fungerar. Namnet i sig avslöjar lite om funktionaliteten. Ändelsen RAM indikerar att det är ett minne där datan inte behöver läsas in i en specifik ordning.

DRAM är dynamiskt RAM-minne. DRAM sparar sin information i celler, vilka är uppbyggda av en kondensator och en transistor. Den stora nackdelen med DRAM är att kondensatorn snabbt tappar sin laddning. Därför måste laddningen i kondensatorerna ständigt uppdateras. Fördelen med DRAM är att det är billigt att tillverka, men det är långsammare än SRAM (statiskt RAM) som används till cacheminne i processorer. SRAM behöver inte uppdateras mellan läsningarna och blir därmed mycket snabbt. Det  har dock en mer komplicerad uppbyggnad och är därför dyrare att tillverka.

Bokstaven S i SDRAM indikerar att det är ett synkront dynamiskt minne, vilket innebär att det är effektivare än ett som är asynkront.

Kondensatorn i DRAM är en komponent som kan hålla en elektrisk laddning under en stund. Informationen som lagras i minnescellen är antingen en etta eller en nolla. Vilket det ska vara bestäms genom att kondensatorn antingen laddas upp eller laddas ur. Uppladdad motsvarar den en etta och urladdad en nolla. Bokstaven A heter i binära sammanhang 01000001. Skulle den lagras i minnet hade det förenklat sett ut så här:

 

Det skulle alltså gå åt åtta minnesceller, något som motsvarar åtta bit (b) eller en byte (B).

Som tidigare nämnts måste minnet uppdateras med en hög frekvens. Detta för att kondensatorn ska kunna hålla sin laddning. Utan högfrekventa uppdateringar hade alla ettor i minnet laddats ur och blivit nollor.

Referenser

6 Apple (2011). Mac OS X Lion With 250 New Features Available in July From Mac App Store. Pressmeddelande från 2011-06-06.

7 Microsoft. Memory Limits for Windows Releases. Utvecklarartikel hämtad 2011-07-17 / 2013-01-30. msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx

Senast ändrad: 2013-04-23

Meddelande från Kjell & Company

Din webbläsare är gammal, och vi kan inte lova att innehåll visas korrekt, eller full funktionalitet. Vår rekommendation är att du uppdaterar din webbläsare nu!

Meddelande från Kjell & Company

Javascript är ej aktiverat i din webbläsare! För full funktionalitet på siten rekommenderar vi att du slår på Javascript.

Meddelande från Kjell & Company

Cookies är avslaget i din webbläsare. För att kunna använda internetbutiken måste din browser stödja cookies (mer information).

"