Câtă memorie RAM vede Windows 7 pe 32 de biți? Încă o dată despre Windows și patru gigaocteți

Au trecut câțiva ani de când a fost scris articolul „Patru gigaocteți de memorie este un obiectiv de neatins?”. ”, iar întrebările despre motivul pentru care Windows nu vede toți cei patru gigaocteți nu au scăzut. Numărul celor care au chestionat a inclus și proprietarii de sisteme pe 64 de biți, pe care această problemă, se pare, nu ar fi trebuit să-i afecteze. Și a devenit clar că era timpul să scriem un nou articol pe aceeași temă. Ca și până acum, vom vorbi doar despre sisteme de operare ah Windows, și în principal cele client, adică Windows XP, Windows Vista, Windows 7 și viitorul Windows 8. În unele cazuri, vor fi folosite în mod deliberat descrieri oarecum simplificate ale anumitor aspecte. Acest lucru va face posibilă concentrarea asupra subiectului acestui articol fără a intra în detalii inutile, în special, structura internă a procesoarelor și chipset-urilor pentru plăcile de bază. Vă recomandăm să citiți mai întâi articolul de mai sus, deoarece nu tot ce s-a spus în el se va repeta aici.

Deși teoretic 32- sistem de biți sunt disponibile până la 4 GB de memorie fizică (fără trucuri suplimentare), versiunile client pe 32 de biți ale Windows nu pot folosi tot acest volum din cauza faptului că unele dintre adrese sunt folosite de dispozitive computerizate. Acea parte a RAM ale cărei adrese coincid cu adresele dispozitivului trebuie dezactivată pentru a evita un conflict între RAM și memoria dispozitivului corespunzător - de exemplu, un adaptor video.

Orez. 1. Dacă memoria RAM din adresele utilizate de dispozitive nu este dezactivată, apare un conflict

RAM umple adrese începând de la zero, iar dispozitivelor li se aloca de obicei adrese în al patrulea gigabyte. Atâta timp cât dimensiunea RAM nu depășește doi sau trei gigaocteți, nu apar conflicte. De îndată ce limita superioară a memoriei instalate intră în zona în care se află adresele dispozitivului, apare o problemă: celula se află și ea la aceeași adresă memorie cu acces aleator, și celula de memorie a dispozitivului (același adaptor video). În acest caz, scrierea datelor în memorie va duce la distorsiunea imaginii de pe monitor și invers: schimbarea imaginii va distorsiona conținutul memoriei, adică codul programului sau date (de exemplu, text într-un document). Pentru a evita conflictele, sistemul de operare trebuie să refuze să folosească acea parte a RAM care se suprapune cu adresele dispozitivului.

La mijlocul anilor 90 ai secolului trecut, pentru a extinde cantitatea disponibilă de RAM, a fost dezvoltată tehnologia PAE (Physical Address Extension), crescând numărul de linii de adrese de la 32 la 36 - crescând astfel cantitatea maximă de RAM de la 4 la 64 GB. Această tehnologie a fost inițial destinată serverelor, dar mai târziu a apărut în clientul Windows XP. Unele caracteristici ale implementării acestei tehnologii în controlerele moderne de memorie fac posibilă nu numai utilizarea PAE în scopul propus, ci și „aruncarea” memoriei către alte adrese. Astfel, o parte din memorie care nu este utilizată pentru a preveni conflictele poate fi mutată la adrese mai înalte, de exemplu, la al cincilea gigaoctet - și poate deveni din nou sistem accesibil.

În discuția primului articol s-a făcut remarca că este incorect să echivalăm prezența suportului PAE în controlerul de memorie al plăcii de bază cu capacitatea plăcii de a redirecționa memoria; că acestea pot fi foarte bine lucruri fără legătură între ele. Cu toate acestea, practica arată că în hardware-ul pentru sisteme desktop aceste concepte sunt interschimbabile. De exemplu, Intel în documentația pentru chipset-ul său G35 nu spune un cuvânt despre posibilitatea redirecționării memoriei (existentă efectiv), dar subliniază suportul pentru PAE. Iar setul i945 care nu suportă PAE nu are redirecționare memorie. CU procesoare AMD 64 și ultimele modele Pe procesoarele Intel, situația este și mai simplă: au un controler de memorie încorporat în procesor, iar suportul pentru PAE (și RAM mai mare de 4 GB) implică automat suport pentru redirecționare.

Orez. 2. Redirecționare

Imaginea este destul de condiționată; redirecționarea nu este neapărat efectuată în blocuri de exact un gigaoctet; discretitatea poate fi diferită și este determinată de controlerul de memorie (care, reamintim, este fie parte a hardware-ului plăcii de bază, fie parte a procesorului). ÎN program BIOS Configurare computer De obicei, există o setare care permite sau interzice redirecționarea. Poate avea diferite nume - de exemplu, Memory remap, Memory hole, 64-bit OS și altele asemenea. Cel mai bine este să-i aflați numele în manualul plăcii de bază. Trebuie remarcat faptul că, dacă utilizați un sistem pe 32 de biți, atunci pe unele plăci de bază, de cele mai multe ori destul de vechi, redirecționarea trebuie dezactivată - în caz contrar, cantitatea de RAM disponibilă pentru sistem poate scădea.

În mod implicit, modul PAE a fost dezactivat în Windows XP, deoarece nu era nevoie reală de el (reamintim că în 2001, cantitatea tipică de memorie pe un computer desktop era de 128-256 MB). Cu toate acestea, dacă este activat, XP ar putea folosi toți cei patru gigaocteți de memorie - cu condiția, desigur, asta placa de baza ar sprijini RAE. Dar, să repetăm, nu era nevoie reală de a activa acest mod în acei ani. Dacă dorește, cititorul îl poate seta pe unul modern pentru testare. computer Windows XP sau Windows XP SP1 (desigur, nu ar trebui să faceți acest lucru pentru muncă), activați modul PAE și asigurați-vă cu ochii tăi că sistemul are patru gigaocteți de RAM disponibile.

În 2003, Microsoft a început să dezvolte un al doilea pachet de patch-uri pentru Windows XP (lansat în 2004) deoarece s-a confruntat cu nevoia de a reduce semnificativ numărul de vulnerabilități în componentele sistemului de operare. O modalitate a fost să utilizați Data Execution Prevention (DEP) - un set de tehnologii software și hardware care vă permit să efectuați verificări suplimentare asupra conținutului memoriei și, în unele cazuri, să împiedicați pornirea. cod rău intenționat. Aceste verificări sunt efectuate conform nivelul programului, și pe hardware (dacă există un procesor adecvat). AMD a numit această caracteristică a procesorului „no-execute page-protection” (NX), în timp ce Intel a folosit termenul „Execute Disable bit” (XD).

Cu toate acestea, utilizarea unei astfel de protecție hardware necesită trecerea procesorului în modul PAE, deci Windows XP SP2, atunci când este detectat procesor potrivit a început să activeze acest mod în mod implicit. Și aici Microsoft s-a confruntat cu o problemă destul de serioasă: s-a dovedit că nu toți driverele pot funcționa în modul PAE. Să încercăm să explicăm această caracteristică fără a aprofunda prea mult designul procesoarelor și mecanismele de adresare.

Windows folosește ceea ce se numește un model de memorie plată. Treizeci și doi de biți ai adresei oferă acces la un spațiu de patru gigaocteți. Astfel, fiecărei celule RAM sau celulă de memorie a altui dispozitiv îi corespunde adresa specifica, și nu poate exista nicio ambiguitate aici. Când modul PAE este activat, este posibil să folosiți 36 de biți de adresă și să creșteți numărul de celule de memorie de 16 ori. Dar setul de instrucțiuni al procesorului rămâne același și poate adresa doar 4 miliarde (binari) de octeți! Și astfel, pentru a asigura posibilitatea de a accesa oricare dintre cei 64 de miliarde de octeți specificând doar 32 de biți ai adresei, procesorul include o etapă suplimentară de traducere a adresei (cei interesați de detalii se pot referi la literatura de specialitate - de exemplu, carte de Russinovici și Solomon " Organizare internă Windows"). Ca rezultat, o adresă de 32 de biți dintr-un program poate indica oricare dintre octeții din spațiul de 36 de biți.

Această caracteristică nu afectează în niciun fel programele de aplicație; acestea operează în propriile adrese virtuale. Dar șoferii care trebuie să acceseze adrese reale dispozitive specifice, trebuie rezolvate probleme suplimentare. La urma urmei, adresa pe 32 de biți generată de acest driver poate etapă suplimentară traducerea se poate dovedi a fi complet diferită, iar comanda emisă de șofer poate, de exemplu, în loc să afișeze o pictogramă pe ecran, să modifice valoarea într-una dintre celule tabele Excel. Și dacă orice date de sistem se dovedesc a fi corupte, atunci aici și până prăbușire lucrul cu ieșire ecran albastru la mana. Prin urmare, pentru a funcționa cu succes în modul PAE, driverele trebuie scrise ținând cont de caracteristicile acestui mod.

Cu toate acestea, din moment ce PAE nu a fost folosit în trecut în computerele client până în acel moment, unele companii nu au considerat că este necesar să suporte acest mod în driverele pe care le-au scris. La urma urmei, echipamentele pe care le-au produs ( plăci de sunet, de exemplu), nu a fost destinat serverelor, iar driverele nu aveau o versiune de server - așa că de ce să complicați inutil aceste drivere? Mai mult decât atât, pentru a testa funcționarea în modul PAE anterior a fost necesar să instalați un sistem de operare pentru server și să utilizați hardware pentru server (plăci de bază pentru computere desktop PAE a început să fie susținut abia recent). Așadar, a fost mai ușor și mai profitabil pentru dezvoltatorii de drivere să uite pur și simplu de acest PAE și să asigure funcționalitatea pe computerele client obișnuite cu sisteme de operare personale obișnuite, mai degrabă decât de server.

Și tocmai cu aceste drivere au apărut probleme în XP SP2. Deși numărul companiilor ai căror șoferi au încetat să funcționeze sau chiar au prăbușit sistemul a fost mic, numărul de dispozitive produse de aceste companii se ridica la milioane. În consecință, numărul de utilizatori care ar putea primi o surpriză neplăcută, s-a dovedit a fi destul de semnificativ. Drept urmare, mulți utilizatori ar refuza să instaleze singuri pachetul și i-ar da un nume prost, ceea ce i-ar afecta și pe alți utilizatori. Ei, deși fără niciun motiv convingător, ar refuza să-l instaleze.

Și Microsoft a simțit nevoia de a îmbunătăți securitatea XP foarte mult. Cu toate acestea, discuțiile despre motivul pentru care am văzut Windows XP SP2 și nu am văzut ceva de genul Windows XP Ediția a doua depășesc domeniul de aplicare al acestui articol.

Principalul lucru care ne interesează este că pentru a asigura compatibilitatea cu driverele prost scrise, funcționalitatea PAE din SP2 pentru Windows XP a fost întreruptă. Și deși acest mod în sine există și, mai mult, pe computere cu procesoare moderne este activat implicit, nu oferă nicio extindere a spațiului de adrese, pur și simplu trecând la ieșire aceleași adrese care au fost furnizate la intrare. De fapt, sistemul se comportă ca un sistem obișnuit pe 32 de biți fără PAE.

Același comportament a fost moștenit de Windows Vista și apoi transferat la Windows 7 și Windows viitoare 8. Desigur, pe 32 de biți. Motivul pentru care acest comportament nu s-a schimbat rămâne același: pentru a asigura compatibilitatea. Mai mult, nevoia de a câștiga fracțiuni de gigabyte a dispărut: cei care au nevoie de cantități mari de memorie pot folosi versiuni pe 64 de biți ale sistemului de operare.

Uneori puteți auzi întrebarea: dacă acest mod PAE trunchiat este cel care împiedică sistemul să vadă toți cei patru gigaocteți, atunci poate dezactivați-l complet, astfel încât să nu interfereze și, voila, 4 GB vor deveni disponibile pentru sistem? Din păcate, nu vor: acest lucru necesită doar prezența PAE și unul cu drepturi depline. O altă întrebare care nu se pune atât de rar este aceasta: dacă dispozitivele împiedică într-adevăr sistemul să folosească toată memoria și rezerve o parte din ea pentru propriile nevoi, atunci de ce nu au rezervat nimic când computerul avea doi gigaocteți de RAM?

Să revenim la prima poză și să privim situația mai detaliat. În primul rând, observăm că trebuie să distingem clar între două concepte: dimensiunea spațiului de adrese și cantitatea de RAM. Amestecarea acestora împiedică înțelegerea esenței problemei. Spațiul de adrese este ansamblul tuturor adreselor existente (care pot fi accesate de procesor și alte dispozitive). Pentru procesoarele din familia i386, aceasta este de 4 gigaocteți pe Mod normalși 64 GB folosind PAE. Pentru sistemele pe 64 de biți, dimensiunea spațiului de adrese este de 2 TB.

Dimensiunea spațiului de adrese nu depinde în niciun fel de cantitatea de RAM. Chiar dacă eliminați toată memoria RAM de pe computer, dimensiunea spațiului de adrese nu se va schimba nici măcar un iota.

Spațiul de adrese poate fi real, în care rulează sistemul de operare în sine, și virtual, pe care sistemul de operare îl creează pentru programele care rulează în el. Dar caracteristicile utilizării memoriei în Windows vor fi descrise într-un alt articol. Aici remarcăm doar că programele nu au acces la spațiul real de adrese - doar sistemul de operare în sine și driverele pot accesa adrese reale.

Să ne uităm la modul în care spațiul de adrese este utilizat pe un computer. Să subliniem imediat că distribuția sa este realizată de echipamentul informatic („hardware”) și sistemul de operare din caz general nu poate influența acest lucru. Există o singură cale: modificați setările hardware folosind tehnologia Plug&Play. S-a vorbit mult despre el la mijlocul anilor 90 ai secolului trecut, dar acum este luat de la sine înțeles, iar numărul persoanelor care nici nu au auzit de el este în creștere.

Folosind această tehnologie, puteți modifica, în anumite limite specificate de producător, adresele de memorie și numerele de porturi utilizate de dispozitiv. Acest lucru, la rândul său, face posibilă evitarea conflictelor între dispozitive care ar putea apărea dacă pe computer ar exista două dispozitive configurate să folosească aceleași adrese.

Un program de bază de pe placa de bază, numit adesea colectiv BIOS (deși nu este de fapt un BIOS (sistem de bază de intrare/ieșire)) sondajează dispozitivele atunci când computerul este pornit. Determină ce intervale de adrese poate folosi fiecare dispozitiv, apoi încearcă să aloce memorie astfel încât niciun dispozitiv să nu interfereze cu altul și apoi le spune dispozitivelor decizia sa. Dispozitivele își configurează setările conform acestor instrucțiuni și puteți începe să încărcați sistemul de operare.

În timp ce suntem la subiect, să reținem că o serie de plăci de bază au o setare numită „P&P OS”. Dacă această setare este dezactivată (Nu), placa de bază realizează distribuirea adreselor pentru toate dispozitivele. Dacă este activat (Da), atunci alocarea memoriei se efectuează numai pentru dispozitivele necesare pentru pornire, iar sistemul de operare se va ocupa de configurarea altor dispozitive. În cazul Windows XP și sistemelor de operare mai noi din această familie această setare Este recomandat să-l activați, deoarece în majoritatea Carcase Windows va efectua setările necesare cel puțin la fel de bine ca și BIOS-ul.

Din moment ce o astfel de auto-configurare distribuie adrese memorie, nu contează cât de mult RAM este instalată în computer - procesul va continua în același mod.

Atunci când o anumită cantitate de RAM este introdusă într-un computer, spațiul de adrese pentru aceasta este alocat de jos în sus, pornind de la adresa zero și apoi îndreptându-se spre adrese crescânde. Adresele dispozitivelor, dimpotrivă, sunt alocate în zona superioară (în al patrulea gigaoctet) în direcția adreselor descrescătoare, dar nu neapărat în blocurile adiacente - mai des, dimpotrivă, în cele neadiacente. De îndată ce zonele de adrese alocate pentru RAM (pe de o parte) și pentru dispozitive (pe de altă parte) se ating, devine posibil conflict adrese, iar cantitatea de RAM utilizată trebuie să fie limitată.

Deoarece schimbarea adresei la configurarea dispozitivelor se realizează cu un anumit pas determinat de caracteristicile dispozitivului specificate de producător, este imposibil să se obțină o secțiune continuă de adrese pentru dispozitive - între adrese dispozitive individuale apar spatii nefolosite. Teoretic, aceste lacune ar putea fi folosite pentru a accesa RAM, dar acest lucru ar complica munca managerului de memorie al sistemului de operare. Pentru aceasta si altele Motive Windows folosește RAM până la prima adresă de memorie, dispozitiv ocupat. RAM localizată de la această adresă și mai sus va rămâne nefolosită. Cu excepția cazului în care, desigur, controlerul de memorie organizează redirecționarea.

Uneori se pune întrebarea: este posibil să influențezi distribuția adreselor pentru a muta toate dispozitivele din spațiul de adrese cât mai sus și a face cât mai multe mai multa memorie sistem accesibil. În general, acest lucru nu se poate face fără a interfera cu designul sau firmware-ul dispozitivelor în sine. Dacă vă mai mâncărime mâinile și nu vă deranjează timpul, puteți încerca următoarea metodă: în setarea BIOS, activați setarea „PnP OS” (poate fi complet absentă sau poate avea un alt nume), astfel încât Windows distribuie adrese pentru majoritatea dispozitivelor și apoi reinstalează driverele folosind cele editate fișiere inf cu zone îndepărtate de memorie pe care le considerați prea scăzute.

Îl puteți găsi pe Internet sfaturi diferite, care ar trebui să permită sistemului să folosească toți cei patru gigaocteți, pe baza includerea forțată PAE. După cum este ușor de înțeles din cele de mai sus, acest lucru nu poate oferi niciun beneficiu, deoarece nu contează dacă PAE este pornit automat sau forțat - acest mod funcționează la fel în ambele cazuri.

Poate apărea și întrebarea: ce se va întâmpla dacă instalați un adaptor video cu patru gigaocteți de memorie. La urma urmei, atunci se dovedește că sistemul va rămâne complet fără RAM și nu va putea funcționa. De fapt, nu se va întâmpla nimic rău: adaptoarele video folosesc o porțiune de 256 MB din spațiul de adrese de ceva timp, iar accesul la întreaga cantitate de memorie a acceleratorului video se realizează printr-o fereastră de această dimensiune. Deci, adaptorul video nu va lua mai mult de 256 de megaocteți. Poate că în unele modele dimensiunea acestei ferestre este dublată sau chiar de patru ori, dar autorul încă nu a pus mâna pe ele.

64 de biți

Deci, ne-am ocupat de sisteme pe 32 de biți. Acum să trecem la 64 de biți.

Aici, s-ar părea, nu există capcanele nu ar trebui să existe. Sistemul poate folosi mult mai mult de patru gigaocteți, așa că, la prima vedere, este suficient să conectați memoria la placa de bază și să instalați sistemul. Dar se dovedește că nu totul este atât de simplu. În primul rând, observăm că nu se vor putea găsi echipamente speciale destinate doar sistemelor pe 64 de biți (vorbim despre PC-uri obișnuite). Orice placa de baza card de retea, adaptorul video etc., care rulează pe un sistem pe 64 de biți, ar trebui să funcționeze la fel de bine pe un sistem pe 32 de biți.

Aceasta înseamnă că adresele dispozitivelor trebuie să rămână în primii patru gigaocteți. Aceasta înseamnă că toate restricțiile impuse cantității de memorie disponibilă unui sistem pe 32 de biți se aplică și unui sistem pe 64 de biți - desigur, dacă placa de bază nu acceptă redirecționarea sau dacă această redirecționare este dezactivată în setări.

Plăcile de bază de pe chipset-urile Intel până la 945 inclusiv nu acceptă redirecționarea. Desigur, nu pot fi numite noi, dar computerele bazate pe ele încă există și sunt în uz. Deci, pe astfel de plăci, atât sistemele pe 64 de biți, cât și pe 32 de biți vor putea vedea aceeași cantitate de memorie și va fi mai mică de 4 GB. De ce mai puțin este descris mai sus.

Cu procesoarele AMD pe 64 de biți, situația este mai simplă: controlerul lor de memorie este încorporat în procesor de ceva timp, iar redirecționarea este absentă doar la modelele mai vechi. Toate procesoarele pentru soclul cu 939 de pini și mai noi acceptă mai mult de 4 GB și, în consecință, sunt capabile să efectueze redirecționarea memoriei. Același lucru este valabil și pentru procesoarele Intel din familiile Core i3, i5, i7.

Cu toate acestea, poate exista o capcană aici: dacă liniile de adresă suplimentare nu sunt direcționate pe placa de bază, atunci nu va exista nicio modalitate de a accesa memoria redirecționată. Și unele modele mai tinere de plăci de bază sunt produse exact așa pentru a reduce costul, așa că trebuie să te uiți la descrierea plăcii de bază specifice.

Și aici avem o surpriză, similară cu cea pe care o întâlnim într-un sistem pe 32 de biți: utilizarea spațiului de adrese pentru funcționarea dispozitivului poate limita cantitatea de memorie disponibilă pentru Windows.

De exemplu, dacă o placă de bază acceptă până la 8 GB de RAM (să zicem, folosind un chipset G35) și instalează toți cei 8 GB, atunci vor fi utilizați doar ≈7-7,25 GB. Motivul este următorul: pe o astfel de placă de bază există 33 de linii de adresă, ceea ce, din punctul de vedere al producătorului, este destul de logic - de ce să complicați designul dacă placa încă nu acceptă mai mult de 8 GB? Prin urmare, chiar dacă controlerul de memorie poate transfera secțiunea neutilizată de RAM pe al nouălea gigabyte, va fi tot imposibil să-l accesezi. Acest lucru va necesita o adresă de 34 de biți, care nu poate fi generată fizic pe o adresă de 33 de biți magistrala de sistem. De asemenea, pe plăcile care acceptă 16 GB, Windows va putea folosi ≈15-15,25 GB și așa mai departe.

Există o altă nuanță puțin cunoscută asociată cu redirecționarea. Limitarea dimensiunii memoriei a fost făcută în programul msconfig(sau setările de configurare de pornire corespunzătoare) nu se referă la cantitatea de memorie în sine, ci la limita superioară a adreselor memoriei utilizate.


Orez. 3. Această setare limitează limita superioară a adreselor, nu dimensiunea memoriei

Adică, dacă setați această valoare la 4096 MB, atunci memoria situată peste această limită (redirecționată la al cincilea gigaoctet, de exemplu) nu va fi folosită și, de fapt, volumul memoriei va fi limitat la aproximativ trei gigaocteți. În unele cazuri, această caracteristică poate fi utilizată pentru a diagnostica dacă redirecționarea funcționează sau nu. De exemplu, autorul a dat peste un caz când Laptop Windows a folosit 3,75 GB din patru și nu era clar: fie redirecționarea nu funcționa, fie memoria era folosită într-un anumit scop. Bifarea casetei și limitarea dimensiunii memoriei la patru gigaocteți au dus la utilizarea doar a 3,25 GB. Din aceasta putem concluziona că redirecționarea a funcționat și, prin urmare, un sfert de gigaoctet a fost folosit pentru adaptorul video sau alt scop.

Și, în sfârșit, merită menționat că, chiar și cu redirecționare funcțională și un sistem pe 64 de biți, mai multe zeci sau chiar sute de megaocteți de memorie pot fi încă rezervați pentru echipament. Cel mai bine este să verificați cu producătorul plăcii de bază motivele acestei redundanțe, dar cel mai adesea se poate presupune că este folosită pentru adaptorul video încorporat sau controlerul RAID.

Astăzi, un computer cu 4 GB de memorie cu acces aleatoriu (RAM) sau mai mult este comun. Datorită noilor tehnologii de fabricare a modulelor de memorie, acest lucru a devenit accesibil și, cândva, nici măcar nu era posibil să visezi la o asemenea cantitate de RAM. Dar s-a întâmplat că în acel moment a fost stabilită arhitectura unui computer modern cu un procesor pe 32 de biți. Ca urmare Funcționare pe 32 de biți sisteme Windows„nu văd” mai mult de 3 gigaocteți RAM (3,25 GB și atât).

Dar totuși, dacă aveți un procesor pe 64 de biți sau unul pe 32 de biți, dar mai mare decât Pentium Pro, atunci Este posibil să utilizați toți cei 4 GB de RAM pe Windows pe 32 de biți. Chiar și fără a folosi , care, deși folosește toată memoria, unele programe nu funcționează corect pe el. Un alt caz interesant, îmi place să joc ruleta la Play Casino, câștig mai des când merg la un cazinou cu sistem de operare pe 3 biți, așa că îl sfătuiesc pe cei care fac jocuri de noroc. Mistic, dar jocul este întotdeauna un mister. Dar să revenim la întrebarea noastră și să aruncăm mai întâi o privire la unde dispare o parte din memoria RAM.

Unde dispare RAM pe un sistem de operare WINDOWS pe 32 de biți?

Să presupunem că avem instalați fizic 4 GB de RAM. Partea inferioară a spațiului de adrese de memorie este alocată proceselor - aplicațiile noastre și restul echipamentelor - de la limita superioară de 4 GB în jos. Pe vremuri, acest echipament a luat firimituri, dar odată cu apariția adaptoarelor video cu acceleratoare hardware pentru ieșirea imaginilor 3D, nevoia de RAM adaptor a crescut brusc. Tehnologia AGP a făcut posibilă, dacă este necesar (lipsa memoriei interne), utilizarea unei părți din memoria principală a computerului pentru nevoile adaptorului video, adică utilizarea spațiului de adrese RAM. Și, de obicei, 256 MB de RAM sunt rezervați, iar acest lucru nu depinde de cantitatea de memorie pe placa video în sine; chiar și apariția PCI-E nu a adus schimbări fundamentale - s-a schimbat interfata fizica, iar organizarea utilizării memoriei video a rămas aceeași. Dar restul unde este, pentru că sunt rezervați doar 256 MB. Cert este că celulele de memorie sunt rezervate începând de la adrese de peste 3,25 GB (de la adresele d000000 la dfffffff, adică 256 MB). Dacă conectați mai multe dispozitive, atunci le va fi rezervat un spațiu de adresă, dar deasupra adaptorului video și veți vedea în continuare 3,25 GB disponibile.

Cum să utilizați toți cei 4 GB de RAM pe un sistem de operare pe 32 de biți

Este necesar să activați modul PAE - Physical Address Extension - o tehnologie pentru extinderea fizică a adreselor. Folosește nu o magistrală de adresare pe 32, ci pe 36 de biți pentru spațiul de adrese și, ca rezultat, 64 GB de spațiu de adrese! Daca ai pe 64 de biți procesor (acum toate cele noi sunt așa), apoi într-un sistem de operare pe 32 de biți activăm pur și simplu modul PAE:

Start - scrieți CMD - și introduceți în fereastra liniei de comandă

bcedit/set pae forceenable

Dacă trebuie să returnați totul înapoi, atunci introduceți bcedit / set pae forcedisable.

Dacă procesorul este pe 32 de biți.

Pentru prima dată, tehnologia PAE a fost implementată fizic în procesor Pentium Pro și senior. Dacă aveți un astfel de procesor și placa de bază acceptă PAE, atunci puteți încerca și să utilizați toată memoria RAM. Dar în astfel de procesoare, cel mai semnificativ al 36-lea bit este responsabil pentru neexecutarea codului pe pagină - protecție împotriva programelor malware (no-execute (NX) sau execute-disable (XD)). Mai întâi trebuie să dezactivați această opțiune. ÎN Linie de comanda introduceți bcdedit/set nx allwaysoff, apoi bcedit/set pae forceenable. Fă totul ca administrator!!!

După repornirea sistemului, toată memoria va fi disponibilă.

Nu este un secret pentru nimeni că a avea o cantitate mare de RAM are un efect benefic asupra vitezei multor aplicații. În acest material vom vorbi despre interacțiunea dintre RAM și sistemul Windows și vom răspunde, de asemenea, la multe întrebări frecvente pe acest subiect.

Introducere

Progresul tehnologic nu stă pe loc și în fiecare an computerele devin din ce în ce mai perfecte. În același timp, cu creșterea caracteristici tehnice, prețul componentelor scade inexorabil, iar astăzi PC-urile, care în urmă cu trei ani costau câteva mii de dolari, se vând cu câteva sute.

Această tendință nu a ocolit RAM, adică În ultima vreme pretul a scazut mult. În urmă cu aproximativ 15 ani, un modul de memorie cu o capacitate de patru megaocteți (doar gândiți-vă la asta!) costa aproximativ 100 de dolari, iar astăzi costul a patru gigaocteți de RAM (RAM - memorie cu acces aleatoriu sau memorie cu acces aleatoriu) este de doar aproximativ 700 de ruble. . Nu este un secret pentru nimeni că prezența unei cantități mari de memorie RAM are un efect benefic asupra vitezei multor aplicații, așa că acest volum este minim pentru majoritatea computerelor moderne, chiar și pentru cele entry-level. Sistemele mai avansate conțin 8, 16 sau mai mulți gigaocteți de memorie RAM.

Și totul ar fi bine, dar probabil că mulți utilizatori au întâmpinat o problemă: dacă computerul are patru sau mai mulți gigaocteți de RAM instalați, sistemul de operare Windows pe 32 de biți pur și simplu nu le vede.

În acest articol veți afla cum funcționează sistemul de operare cu RAM, ce cantități de RAM sunt diferite Ediția Windows, de ce în unele cazuri sistemul de operare nu vede toată memoria instalată, de ce se întâmplă acest lucru și dacă se poate face ceva în această situație, ce este un fișier de paginare și multe altele. Dar mai întâi, să facem o scurtă excursie în teoria organizării memoriei fizice a unui computer și, de asemenea, să ne dăm seama cum RAM afectează în general performanța sistemului.

Spațiu de adrese

Unitatea de măsură de bază a cantității de informații este pic, care poate lua doar două valori - zero și unu. În modern arhitecturi de calcul unitate minimă prelucrarea și stocarea informațiilor este octet, egal cu opt biți. În esență, memoria computerului este o gamă uriașă de octeți.

Un octet poate stoca una dintre cele 256 de valori (2 8), care, în funcție de interpretarea lor, pot fi fie numere, simboluri sau litere. De exemplu, valoarea 56 poate reprezenta fie un număr obișnuit, fie litera „V” în Codificare ASCII. În câțiva octeți, puteți stoca mult mai mult valori mari. De exemplu, trei octeți pot lua deja 16.777.216 de valori (256 3), în care un întreg cuvânt scurt poate fi codificat.

Pentru ca orice dispozitiv sau program să poată accesa un anumit octet din memorie (adresa-l) pentru a scrie acolo sau a primi date de acolo, i se atribuie un index unic numit abordare. Se apelează intervalul de adrese de la zero la maxim spatiu de adresare.

Memoria fizică și virtuală

În primele computere, dimensiunea spațiului de adrese era identic cu dimensiunea RAM instalată. Adică, dacă computerul avea 128 KB de memorie instalată, atunci cantitatea maximă de memorie pe care programul o putea folosi în timpul funcționării era de 128 KB. În acest caz, adresa oricărui obiect aplicație a fost egală cu adresa celulei fizice a dispozitivului de stocare.

Această metodă de adresare a fost foarte simplă, dar a avut câteva dezavantaje semnificative. În primul rând, memoria aplicației care rulează era limitată de RAM, care la acea vreme era foarte scumpă și era instalată pe computer în cantități foarte mici. În al doilea rând, toate programele care rulează au fost executate în același spațiu de adrese, ceea ce a condus la posibilitatea ca mai multe aplicații să scrie eronat date în aceeași celulă. Dacă apare o astfel de situație, nu este greu de ghicit consecințele.

ÎN calculatoare moderne dispozitivele și programele nu funcționează cu real ( fizic) memorie și virtual, care o imită. Acest lucru permite aplicației să presupună că mașina are instalată cantitatea maximă de RAM posibilă teoretic și, de asemenea, că este singurul program care rulează pe computer.

Astfel, spațiul de adresă al unui computer astăzi nu mai este limitat de dimensiunea memoriei sale fizice (RAM) și are maximul său dimensiune posibilă, în funcție de mediu de lucru, care este sistemul de operare.

Astăzi, sistemul de operare Windows are atât versiuni pe 32 de biți, cât și pe 64 de biți. În primul, pe baza numelui, se folosește un spațiu de adresă de 32 de biți pentru adresare, dimensiune maximă care este 2 32 = 4.294.967.296 octeți sau 4 GB (gigaocteți). Versiunea pe 64 de biți a sistemului de operare mărește dimensiunea spațiului de adrese la un incredibil 2,64 = 18,446,744,073,709,551,616 octeți - peste 18 chintilioane de octeți sau 16 EB (exabytes). Adevărat, este de remarcat faptul că sistemele de operare client moderne Windows 7 x64 datorită motive obiective acceptă un spațiu de adrese maxim de 16 TB (2 44).

În același timp, fiecărei aplicații care rulează sunt alocate volume de 4 GB și 16 TB, în funcție de sistem! Adică orice programul care rulează primește propriul spațiu de adrese, care nu se suprapune cu altele.

Influența volumului RAM asupra vitezei sistemului

Dar ce se întâmplă atunci când intrările din spațiul de adrese încep să depășească cantitatea reală de memorie fizică? În acest caz, o parte din datele temporar neutilizate este transferată din RAM în HDDîn așa-numitul fișier de schimb sau „swap”. Dacă programele au nevoie din nou de aceste date, sistemul, la cerere, le va returna înapoi de pe disc în RAM.

Dacă computerul dvs. are o cantitate mică de RAM instalată, atunci sistemul de operare poate fi adesea nevoit să mute datele din RAM în fișierul de pagină și înapoi, în urma căruia încărcarea pe hard disk crește foarte mult, ceea ce, la rândul său, duce la o încetinire. a întregului sistem. Dacă mai multe aplicații sunt lansate simultan, se poate dovedi că sistemul începe să-și petreacă tot timpul schimbând informații între memorie și disc, în loc să execute programe. Vizual, în acest moment, sistemul „se îngheață”, adică nu mai răspunde la comenzile utilizatorului.

Cu cât cantitatea reală de memorie RAM este mai mare, cu atât mai rar este accesat hard disk-ul și, ca urmare, performanța generală calculator. De aceea, creșterea dimensiunii RAM are aproape întotdeauna un efect pozitiv asupra vitezei sistemului și, ținând cont de prețurile actuale ale memoriei, mulți utilizatori pot instala cu ușurință 8, 16 sau chiar 32 GB de RAM. O cantitate mare de memorie este deosebit de benefică atunci când lucrați cu aplicatii grafice(inclusiv jocuri 3D moderne) și programe de editare video.

Merită să știi asta versiuni diferite Sistemele de operare Windows pe 64 de biți pot accepta diferite cantități maxime de RAM. Și dacă utilizatorii edițiilor mai vechi de Vista sau 7 (Professional, Enterprise, Ultimate), care acceptă până la 192 GB de memorie, nu au de ce să-și facă griji, deoarece un astfel de volum este practic de neatins pe computerele de acasă, atunci cei care au versiuni instalate Acasă Basicși Home Premium au la ce să se gândească. Capacitățile acestor ediții sunt mult reduse, iar dacă Premium acceptă până la 16 GB de RAM, atunci Basic doar 8 GB. Cantitatea maximă disponibilă de RAM acceptată de Windows XP învechit (versiunea pe 64 de biți) este de 16 GB.

De ce sistem pe 32 de bițiWindowsnu vede 4 GB de RAM

Cu siguranță, mulți utilizatori doresc să profite de scăderea prețurilor la memorie și să crească volumul acesteia propriile calculatoare. Această procedură este simplă - puteți îndepărta benzile vechi de pe placa de sistem și puteți introduce altele noi în câteva minute fără unelte speciale. Apoi, porniți computerul și bucurați-vă în liniște când programul de autotestare afișează noul volum la încărcare RAM instalată(deși pot fi probleme și aici, dar mai multe despre asta mai jos). Apoi așteptăm pornire Windows, mergeți la proprietățile computerului și... vedem că în „ Memoria instalată„Cifra de peste trei gigaocteți se etalează, în loc, de exemplu, de cei patru instalați efectiv. Deci, ce s-a întâmplat și se poate rezolva?

După cum știm deja, teoretic, până la 4 gigaocteți de RAM (2 32) sunt disponibili pentru un sistem pe 32 de biți fără trucuri suplimentare, dar Windows nu poate folosi tot acest volum, deoarece o parte din acesta este alocată dispozitivelor computerizate.

Acum, este timpul să facem o scurtă excursie în istorie. Primele PC-uri desktop, lansate la începutul anilor 1980, aveau spațiul de adrese din memoria fizică împărțit în două părți într-un raport de cinci la trei. Prima parte a fost alocată memoriei cu acces aleatoriu (RAM), iar a doua a fost destinată să găzduiască programul de autotestare (POST), sistem de bază intrare/ieșire (BIOS) și memoria dispozitivului. În același timp, acea parte a spațiului de adrese care a fost alocată dispozitivelor nu a putut fi utilizată simultan pentru RAM-ul computerului.

Totul s-a schimbat când Intel a lansat procesorul 80386 în 1985. Apoi s-au luat simultan două decizii pentru a schimba distribuția memoriei fizice în calculatoare bazate pe noile cipuri. Distribuția adreselor în primul megabyte de memorie a fost lăsată neschimbată pentru compatibilitate cu cea veche softwareȘi modelele anterioare CALCULATOR. Pentru computerele care necesită utilizarea memoriei, a fost alocat acum un al patrulea gigaoctet. Tot spațiul rămas a fost alocat pentru RAM.

Poate că astăzi această decizie nu pare în întregime corectă pentru mulți, dar la acea vreme câțiva gigaocteți de RAM păreau pur și simplu fantastici! Și aproape nimeni nu și-a imaginat că arhitectura în sine și această ordine de distribuție a adreselor vor supraviețui atât de mulți ani. Dar până astăzi, în toate computerele moderne, RAM începe să ocupe adrese începând de la zero, iar echipamentele - începând de la marcajul de 4 GB în direcția opusă.

Acum să aruncăm o privire mai clară asupra modului în care este distribuită memoria din momentul în care computerul începe să pornească. Este important să ne amintim aici că toate programele și dispozitive informatice Nu funcționează direct cu memoria fizică, ci cu un spațiu de adrese, a cărui dimensiune nu depinde în niciun fel de cantitatea reală de RAM instalată. Adică, dacă eliminați din computer toată memoria RAM instalată în el, dimensiunea spațiului de adrese nu se va schimba nici un bit. Să ne amintim că pentru sistemele pe 32 de biți este egal cu 4 GB.

Imediat după pornirea aparatului, program special, numit BIOS, începe să acceseze dispozitivele instalate. Sarcina sa este să colecteze mai întâi informații despre intervalele de adrese pe care le poate folosi un anumit dispozitiv și apoi să distribuie memoria astfel încât să nu interfereze între ele în timpul funcționării. După ce adresele virtuale necesare pentru echipament devin rezervate în spațiul de adrese (de la al patrulea gigabyte de sus în jos), începe încărcarea sistemului de operare.


După cum am spus mai devreme, spațiul de adrese este alocat pentru RAM instalată de jos în sus - de la zero încolo. Astfel, după pornirea sistemului, memoria fizică este „proiectată” pe spațiul de adrese (de la 0 la 2 GB) iar Windows, fără a vedea niciun conflict cu adresele rezervate dispozitivelor, îți arată întreaga cantitate de RAM instalată.

Astfel, atâta timp cât cantitatea de RAM nu depășește doi sau trei gigaocteți, în cele mai multe cazuri nu apar probleme, dar de îndată ce această limită este depășită, pot apărea conflicte. În al patrulea gigabyte, este destul de probabil să apară o situație în care atât o celulă RAM, cât și o celulă de memorie a unui dispozitiv, de exemplu o placă video, vor revendica aceeași adresă. Dacă acolo sunt scrise date RAM, acest lucru va duce la distorsiunea imaginii de pe ecran, dar dacă imaginea de pe monitor se schimbă, conținutul memoriei va fi distorsionat. Pentru a preveni astfel de conflicte, sistemul de operare nu folosește pentru RAM acea parte a memoriei fizice care este alocată adreselor dispozitivelor.


După instalarea a 4 GB de memorie fizică, teoretic adresele acesteia vor ocupa tot spațiul de adrese disponibil pentru sistemele pe 32 de biți. Dar vor rămâne disponibile doar cele care se încadrează în zona nerezervată de dispozitive. În exemplul nostru, Windows va presupune că cantitatea de RAM instalată este de 3,5 GB.

Suficient pentru o lungă perioadă de timp Nimeni nu a fost preocupat în mod deosebit de problema celui de-al patrulea gigabyte. S-a folosit foarte puțin spațiu pentru nevoile dispozitivelor - zeci de kiloocteți pentru controlere de disc și adaptor de retea, plus câțiva megaocteți pentru memoria plăcii video. Volumele de memorie RAM în sine au fost, de asemenea, mici, ceea ce înseamnă că intersecția adreselor utilizate de RAM și dispozitive în spațiul de adrese disponibil a fost aproape imposibilă.

Primul sonerie de alarmă a sunat odată cu apariția tehnologiei AGP. La acel moment, adaptoarele video cu accelerare hardware a graficii 3D au crescut brusc nevoia de a-și folosi propria memorie RAM. Și AGP a făcut-o posibil adaptoare grafice utilizați o parte din memoria computerului pentru propriile nevoi, în caz de lipsă a propriei dvs. În acest caz, indiferent de tipul de adaptor și de cantitatea propriei memorie, sunt rezervate 256 MB de adrese, deoarece această dimensiune este stabilită nu de placa video în sine, ci de echipamentul magistralei AGP. Odată cu apariția tehnologiei PCI-Express, situația nu s-a schimbat fundamental, iar dimensiunea spațiului rezervat rămâne aceeași.

Pe lângă apetitul crescut subsisteme grafice, numărul de dispozitive integrate pe placa de bază era în continuă creștere. Au adăugat viteză mare interfețe de rețea, multicanal plăci de sunetȘi tipuri diferite controlorii. În plus, spațiul de adrese alocat dispozitivelor nu este exact. cantitatea necesară, ci prin blocuri determinate de caracteristicile acestora specificate de producatori. Din această cauză, între adrese diverse dispozitive apar goluri libere, care măresc și mai mult spațiul de memorie rezervat.

În unele cazuri, deși destul de rare, spațiul de adresă alocat dispozitivelor poate ajunge la doi gigaocteți. În majoritatea cazurilor, spațiul de la 500 MB la 1 GB este blocat.

TehnologiePAE

Deci, este încă posibil să vedeți toți cei 4 GB de memorie în Windows pe 32 de biți? Da, dacă aveți instalat un sistem de operare server, de exemplu Windows Server 2003 sau Server 2008.

La mijlocul anilor '90, a fost dezvoltată o tehnologie pentru a extinde cantitatea disponibilă de RAM, numită PAE (Physical Address Extension). A fost implementat pentru prima dată în procesoare Intel Pentium Pro, în urma căruia au putut folosi nu o magistrală de adrese pe 32, ci pe 36 de biți, ceea ce a făcut posibilă, teoretic, utilizarea a maxim nu 4, ci 64 GB de RAM.

Dar ceea ce este cel mai remarcabil este că unele caracteristici ale utilizării acestei tehnologii în controlerele de memorie oferă posibilitatea nu numai de a o utiliza în scopul propus, ci și de a transfera unele zone de memorie la alte adrese. Astfel, devine posibilă trecerea într-o zonă de peste 4 GB, de exemplu, la al cincilea gigabyte de spațiu de adresă, acea parte a RAM care a fost blocată din cauza posibilității de conflicte cu dispozitivele, după care devine din nou disponibilă. Adevărat, pentru aceasta trebuie îndeplinite două condiții.

În primul rând, procesorul trebuie instalat pe o placă de bază echipată cu un manager de memorie special care acceptă extinderea adresei fizice. De regulă, în firmware-ul de configurare a BIOS (BIOS), care rulează imediat după pornirea computerului, există cadru special, interzicând sau permițând redirecționarea. ÎN diferite modele Pe plăcile de bază, numele său poate fi diferit, de exemplu: Memory Remap, OS pe 64 de biți, Memory Hole și altele. Numele exact al acestei opțiuni poate fi găsit în manualul plăcii de bază specifice. Apropo, este posibil ca plăcile de bază mai vechi să nu accepte deloc modul de extindere a adresei (acest lucru poate fi aflat și din instrucțiuni).

În al doilea rând, modul PAE trebuie să fie activat în sistemul de operare. Deci in sisteme server ah, este activat implicit. Prin urmare, dacă aveți un Windows pe 32 de biți de acest tip și nu prea calculator vechi(nu există restricții hardware menționate mai sus), apoi datorită utilizării tehnologiei PAE, toți cei 4 GB de RAM vor fi disponibile.

Este destul de logic că această tehnologie ar putea fi utilizat în sistemele client și este utilizat, dar cu unele restricții.

Inițial, în prima versiune de Windows XP acest mod a fost dezactivat deoarece în 2001 cantitatea medie de RAM era calculatoare personale a fost 128 - 256 MB și nu a fost nevoie să-l activați. Poate că starea de lucruri ar fi rămas așa de ceva timp, dar în 2003, Microsoft a început să dezvolte un al doilea pachet de corecții pentru XP, conceput pentru a reduce semnificativ numărul de vulnerabilități din sistem. Una dintre inovațiile aduse de cel de-al doilea pachet de servicii a fost utilizarea hardware-ului și tehnologii software, împiedicând rularea codului rău intenționat verificare suplimentară continutul memoriei. La nivel hardware, această verificare este efectuată de procesor. În același timp, în Intel această funcție se numește Execute Disable bit (interdicție de execuție), iar în AMD - No-execute page-protection (protecția paginilor împotriva execuției).

Cu toate acestea, pentru ca o astfel de protecție hardware să devină posibilă, procesorul trebuie să fie comutat în modul PAE. De aceea, începând cu Windows XP SP2, acest mod, dacă există un procesor potrivit, este pornit automat. Dar cel mai important lucru este că în Windows XP pe 32 de biți cu pachete de servicii SP2 și SP3, precum și Windows Vista și Windows 7 ulterioare, extensia adresei fizice este implementată doar parțial. Aceste sisteme nu acceptă adresarea memoriei pe 36 de biți și modul PAE este activat, nu adaugă un singur octet de spațiu de adrese la dispoziția lor, ceea ce face imposibilă transferul adreselor RAM blocate în secțiunile superioare. Motivul acestei implementări este acela de a asigura compatibilitatea cu driverele de dispozitiv.

După cum ne amintim, sistemul de operare și toate programele folosesc spații de adrese virtuale și, în consecință, adrese virtuale, care sunt ulterior convertite în cele fizice. Această procedură are loc în două etape când modul PAE este dezactivat și în trei etape când extensia de adresă fizică este activată. Șoferii, spre deosebire de programe regulate, lucrează direct cu adrese reale si pentru funcţionare corectăîn modul PAE trebuie să înțeleagă procedura complicată pentru traducerea adresei. La urma urmei, adresa de 32 de biți generată de driver se poate modifica după etapa suplimentară (a treia) de traducere și, pentru ca comanda pe care o emite să-și atingă scopul, acest lucru trebuie luat în considerare.

Dezvoltatorii de drivere destinate sistemelor server au luat în considerare acest lucru, dar driverele pentru client Windows instalate pe computerele obișnuite de acasă au fost în multe cazuri scrise fără a ține cont de algoritmul de lucru cu PAE activat. La urma urmei, a fost mai simplu - sa cheltuit mai puțin timp pentru programare și testare, iar șoferul în sine a ocupat mai puțin spațiu. Mai mult, până atunci, înainte Lansare Windows XP SP2, modul PAE nu a fost folosit în sistemele desktop, iar echipamentele care au fost produse pentru „dispozitive personale” nu au fost în multe cazuri destinate serverelor (de exemplu, plăci de sunet). Așadar, nu a fost nevoie urgentă de a complica driverele și producătorii nu au fost nevoiți să lanseze versiuni de server ale acestora.

Cu aceste drivere neadaptate au apărut probleme serioase în Windows cu cel de-al doilea pachet de actualizare. În ciuda faptului că numărul total de șoferi care au provocat blocări sau blocări ale sistemului nu a fost atât de mare, numărul de dispozitive care le foloseau a fost de milioane. Ca urmare o cantitate mare După instalarea celui de-al doilea pachet de servicii, utilizatorii ar putea întâmpina probleme și, ulterior, ar putea refuza să-l folosească. Așa că Microsoft a trebuit să facă un compromis.

Pentru a asigura compatibilitatea cu driverele scrise incorect, s-a decis întreruperea funcționalității PAE în Windows XP SP2. Acest lucru s-a exprimat prin faptul că la a treia etapă a traducerii adresei, aceleași adrese care au fost transmise la intrare au fost transmise la ieșire. Astfel, nu a avut loc nicio extindere a spațiului de adrese, iar sistemul a continuat să funcționeze cu aceiași patru gigaocteți.

După cum am menționat mai sus, acest mod PAE trunchiat este moștenit de toate sistemele moderne pe 32 de biți, inclusiv Windows 7 și Windows 8. Dar dacă îl instalați pe computer de dragul experimentului Windows original XP sau XP SP1 și activează modul PAE (acolo este dezactivat implicit), vei vedea cu ochii tăi că sistemul va avea acces la toți cei 4 GB de RAM.

RAM și sisteme pe 64 de bițiWindows

S-ar părea că sistemele pe 64 de biți nu ar trebui să aibă probleme cu instalarea unor cantități mari de memorie. Cât de mult RAM este instalată, atât va vedea sistemul de operare. Și totuși există capcane aici.

În ciuda faptului că Windows pe 64 de biți poate folosi spațiu de adrese și RAM, al cărui volum depășește cu mult patru gigaocteți, regula pentru plasarea adreselor dispozitivelor aici este exact aceeași ca în sistemele pe 32 de biți, adică dispozitivele ocupă celule în al patrulea concert de sus în jos. Păstrarea acestui principiu asigură din nou funcționarea normală a oricărui echipament destinat computerelor obișnuite, care ar trebui să funcționeze la fel de bine atât într-un sistem pe 32 de biți, cât și pe unul pe 64 de biți.

Se pare că toate restricțiile impuse memorie fizicăîntr-un sistem pe 32 de biți, trebuie să rămână într-un sistem pe 64 de biți, ceea ce înseamnă că cantitatea vizibilă de RAM va fi din nou incompletă dacă placa de bază nu acceptă redirecționarea sau este dezactivată în setări. Desigur, astfel de plăci de bază nu mai sunt produse, dar sunt încă folosite în multe computere.

O altă „surpriză” te poate aștepta dacă placa de baza se va seta memoria maximă acceptată. De exemplu, recent popularul chipset Intel G41 pentru soluții bugetare vă permite să instalați până la 8 GB de RAM. De regulă, în acest caz, pe placa de bază sunt direcționate 33 de linii de adresă (2 33 = 8.589.934.592 octeți = 8 GB). Din punctul de vedere al producătorului, acest lucru este destul de înțeles - de ce să faceți un autobuz cu o capacitate mai mare dacă setul de logică a sistemului încă nu acceptă cantități mari de memorie? Dar din această cauză, chiar dacă controlerul de memorie poate transfera secțiunea blocată a RAM pe al nouălea gigabyte, nu va putea face acest lucru, deoarece va necesita o magistrală pe 34 de biți și nu 33, ca în cazul nostru. Ca rezultat, doar șapte și puțini gigaocteți de RAM vor fi disponibili pentru utilizator. Același lucru este valabil și pentru plăcile care acceptă 16 și 32 GB.

În unele cazuri, chiar dacă redirecționarea funcționează pe un sistem pe 64 de biți, mai multe zeci sau sute de megaocteți pot fi încă blocați de sistem pentru hardware. Motivul pentru aceasta poate fi caracteristicile tehnologice ale plăcii de bază, care în orice situație va rezerva o anumită cantitate de memorie, de exemplu, pentru nevoile adaptorului video încorporat sau ale controlerului RAID.

Concluzie

În concluzie, să tragem câteva concluzii fundamentale pe baza tuturor celor de mai sus.

Deși sistemele Windows pe 32 de biți pot folosi teoretic până la 4 GB de RAM, o parte din aceasta este întotdeauna rezervată nevoilor dispozitivelor, după care de obicei nu sunt disponibile mai mult de 3-3,5 GB.

Cu toate acestea, această problemă a fost rezolvată în sistemele de operare server pe 32 de biți. Datorită utilizării tehnologiei Physical Address Extension (PAE), întreaga cantitate maximă de RAM instalată (4 GB) poate fi vizibilă în sistem.

În versiunile client pe 32 de biți ale Windows, modul PAE a fost redus pentru a asigura compatibilitatea cu driverele de dispozitiv, motiv pentru care în Windows XP SP2/SP3, Windows Vista, Windows 7, precum și Windows 8, este imposibil să le vezi pe toate. maximul permis de patru gigabytes de RAM și acest lucru nu poate fi corectat.

Astfel, dacă intenționați să instalați mai mult de trei gigaocteți de RAM în computer, atunci trebuie să utilizați versiuni pe 64 de biți ale sistemelor de operare care vă permit să vedeți până la 192 GB de RAM și să aveți un mod PAE netăiat. În caz contrar, restul memoriei nu va fi disponibil pentru utilizare.

De asemenea, trebuie amintit că pentru ca PAE să funcționeze, fie procesorul, fie placa de bază trebuie să aibă un controler de memorie special care să accepte tehnologia de extensie a adresei fizice.