Sådan klones en harddisk
I den moderne digitale tidsalder, hvor data er et værdifuldt aktiv, kan kloning af en harddisk på Windows være en afgørende proces for mange. Denne omfattende guide
CPU'er er utroligt komplekse dyr. Der er et stort antal sammenkoblede dele, som alle skal arbejde i perfekt forening for at opnå de niveauer af ydeevne, som vi ser. Hukommelsesydelse er en nøglefaktor i ydeevnen af moderne CPU'er, specifikt som en begrænsende faktor.
Hvorfor er hukommelseshastighed så vigtig?
CPU'er er utrolig hurtige, med de seneste generationer, der kører ved 5,7 GHz, når de er tilstrækkeligt afkølet. Dette giver dem mulighed for at gennemføre 5,7 milliarder operationer hvert sekund. Mange af disse handlinger udfører en handling på en eller anden type data, der skal gemmes i hukommelsen.
Hovedsystemhukommelsen, kendt som RAM, er også meget hurtig. Desværre er den meget hurtig sammenlignet med alt andet end CPU'en. Den absolutte latens på moderne high-end RAM er i størrelsesordenen 60 nanosekunder. Desværre oversættes det til omkring 342 CPU-cyklusser. For at fremskynde hukommelsesadgangen bruges en CPU-cache, der dynamisk cacher data. Denne cache er placeret på selve CPU-matricen og bruger SRAM-celler i stedet for DRAM-celler, hvilket gør det meget hurtigere. Desværre er CPU-cachen også meget mindre end system-RAM, generelt ikke engang 100 MB. Alligevel, på trods af sin lille størrelse, øger det lagdelte CPU-cache-system systemets ydeevne massivt.
Her kommer virtuel hukommelse til at ødelægge alt
Moderne computere bruger et system kaldet virtuel hukommelse. I stedet for at allokere fysiske hukommelsesadresser til processer, bruges virtuelle hukommelsesadresser. Hver proces har sit eget virtuelle hukommelsesadresserum. Dette har to fordele. For det første giver det let adskillelse mellem hukommelse, der tilhører én proces, og hukommelse, der tilhører en anden. Dette hjælper med at forhindre angreb, hvor ondsindet software læser data fra hukommelsen i anden software, hvilket potentielt får adgang til følsomme oplysninger. Det skjuler også den fysiske hukommelsesstruktur fra processen. Dette gør det muligt for CPU'en at flytte sjældent brugte stykker hukommelse til en personsøgningsfil på lageret uden nødvendigvis at afmontere den fra virtuel RAM. Dette giver computeren mulighed for forsigtigt at håndtere scenarier, hvor der kræves mere RAM, end der er fysisk til stede. Uden virtuel hukommelse,
Desværre, hvis du bruger virtuelle hukommelsesadresser, skal computeren faktisk oversætte disse virtuelle hukommelsesadresser til fysiske hukommelsesadresser for at læse dataene. Dette kræver en tabel til at gemme alle oversættelser af virtuelle hukommelsesadresser til fysiske hukommelsesadresser. Størrelsen på dette afhænger direkte af mængden af RAM i brug. Det er generelt ret lille, i det mindste sammenlignet med kapaciteten af system-RAM. Desværre, hvis du gemmer oversættelsen mellem virtuelle adresser og fysiske adresser i RAM, skal du lave to anmodninger til RAM for hver anmodning til RAM. En for at finde den fysiske adresse, der skal anmodes om, og en anden for faktisk at få adgang til den placering.
Indtast oversættelses-lookaside-bufferen
Løsningen på dette problem er at gemme oversættelsestabellen et sted hurtigere. CPU-cachen ville passe fint, i det mindste fra et hastighedsperspektiv. Problemet med det er dog, at CPU-cachen er lille, og allerede meget brugt. Ikke alene passer bordet ikke i cachen, men at gøre det ville forstyrre dens allerede præstationsdefinerende brug.
Selvfølgelig, hvis princippet om cachen allerede fungerer for hukommelsesadgang, hvorfor så ikke gentage det for oversættelsestabellen? Og det er præcis, hvad Translation Lookaside Buffer, eller TLB, er. Det er en højhastigheds-cache til nylige adresseoversættelser. Den er ikke stor nok til at opbevare hele bordet, men dens lille størrelse betyder, at den kan reagere meget hurtigt inden for en enkelt urcyklus.
Enhver hukommelsesanmodning går via TLB. Hvis der er et TLB-hit, kan det give den fysiske hukommelsesadresse for den faktiske anmodning, typisk tilføje en enkelt cyklus med latenstid. Hvis der er en TLB-miss, skal opslaget udføres fra hovedhukommelsen. Der er en lille ydeevnestraf til en TLB-miss på omkring 5 cyklusser, et tab mere end overskygget af hukommelsesadgangsforsinkelsen. Når adresseoversættelsen er hentet fra system-RAM, skubbes den ind i TLB'en, og anmodningen gentages derefter med et øjeblikkeligt TLB-hit.
Bemærk: Der er forskellige ordninger for TLB-udsættelse. Nogle kan bruge en First In, First Out eller FIFO-ordning. Andre kan bruge en Mindst hyppigt brugt eller LFU-ordning.
I det sjældne tilfælde, at der ikke er nogen indtastning i adresseoversættelsestabellen, opstår der en sidefejl, da de anmodede data ikke er i RAM. OS skal derefter håndtere fejlen og overføre data fra lager til RAM, før anmodningen kan fortsætte.
Konklusion
Translation Lookaside Buffer, eller TLB, er en højhastigheds CPU-cache, der er dedikeret til cachelagring af nylige adresseoversættelser fra sidefilen i system-RAM. Dette er nødvendigt, da virtuelle hukommelsessystemer, som implementeret i alle moderne computere, vil kræve to anmodninger til RAM for hver anmodning til RAM. En til at oversætte den virtuelle hukommelsesadresse til en fysisk hukommelsesadresse, og en anden for faktisk at få adgang til den fysiske adresse. Ved at cache nylige oversættelser kan hukommelsesforsinkelse reduceres kraftigt for TLB-hits.
Man skal sørge for, at cachelagrede oversættelser er relevante for den aktuelt aktive proces. Da hver proces har et forskelligt virtuelt adresserum, kan de ikke genbruges. Ikke strengt at begrænse dette var årsagen til Meltdown-sårbarheden.
I den moderne digitale tidsalder, hvor data er et værdifuldt aktiv, kan kloning af en harddisk på Windows være en afgørende proces for mange. Denne omfattende guide
Står du over for fejlmeddelelsen, mens du starter din computer, som siger, at driveren WUDFRd ikke kunne indlæses på din computer?
Oplever du NVIDIA GeForce-oplevelsesfejlkode 0x0003 på dit skrivebord? Hvis ja, læs bloggen for at finde ud af, hvordan du løser denne fejl hurtigt og nemt.
Lær, hvad SMPS er og betydningen af forskellige effektivitetsvurderinger, før du vælger en SMPS til din computer.
Få svar på spørgsmålet: Hvorfor tænder min Chromebook ikke? I denne nyttige vejledning til Chromebook-brugere.
Lær, hvordan du rapporterer en svindler til Google for at forhindre dem i at snyde andre med denne vejledning.
Løs et problem, hvor din Roomba robotstøvsuger stopper, sætter sig fast og bliver ved med at dreje rundt.
Steam Deck tilbyder en robust og alsidig spiloplevelse lige ved hånden. Dog for at optimere dit spil og sikre det bedst mulige
Ville dykke ned i et emne, der bliver stadig vigtigere i cybersikkerhedens verden: isolationsbaseret sikkerhed. Denne tilgang til
I dag skulle du dykke ned i et værktøj, der kan automatisere gentagne klikopgaver på din Chromebook: Auto Clicker. Dette værktøj kan spare dig tid og