Czytam książkę o architekturze komputera i widzę, że w x86, 32-bitowym procesorze licznik programów jest 32-bitowy.
Zatem liczba bajtów, które może adresować, wynosi 2 ^ 32 bajty lub 4 GB. Ma więc dla mnie sens, że większość 32-bitowych maszyn ogranicza ilość pamięci RAM do 4 GB (ignorując PAE).
Czy mam rację, zakładając, że 64-bitowa maszyna teoretycznie może adresować 2 ^ 64 bajty lub 16 eksabajtów pamięci RAM ?!
computer-architecture
KingNestor
źródło
źródło
Odpowiedzi:
Teoretycznie: 16,8 miliona terabajtów. W praktyce: obudowa komputera jest trochę za mała, aby zmieścić całą pamięć RAM.
http://en.wikipedia.org/wiki/64-bit#Limitations_of_practical_processors
źródło
Aby uzupełnić odpowiedź Matta Ball, obecnie największy patyk RAM, jaki mogę znaleźć w jednym sklepie internetowym, to 32 GB. Osiągnięcie 1 terabajta zajęłoby 32 z nich. Przy około pół cala na patyk daje nam to 16 cali miejsca na płycie głównej na terabajt komercyjnego barana. Aby osiągnąć 16,8 miliona terabajtów, potrzebna jest płyta główna 4242,42 mil. Odległość z LA do Nowego Jorku wynosi około 2141 mil, więc płyta główna rozciągałaby się po całym kraju iz powrotem, aby pomieścić tyle pamięci RAM.
Oczywiście jest to niepraktyczne.
Może nie umieściliśmy pamięci RAM w jednym rzędzie, jak na większości płyt głównych, ale zamiast tego umieściliśmy je obok siebie. Chcę powiedzieć, że średni kij barana ma około sześciu cali długości, więc jeśli pozwolimy na szerokość pół cala, możesz mieć kwadratową jednostkę 12 kijków barana w kwadracie 6 cali. Nazwijmy ten kwadrat kafelkiem RAM. Płytka pamięci RAM zawiera następnie 384 GB pamięci RAM. Osiągnięcie wymaganego 16,8 miliona terabajtów w 384 GB kafelków wymagałoby 44,8 miliona kafelków. Bądźmy niechlujni i użyj pierwiastka kwadratowego z tego, aby stwierdzić, że zmieści się on w kwadracie 6693 na 6694 kafelkach lub 13386 na 13 388 stóp, który jest wystarczająco blisko do 2,5 mil kwadratowych, wystarczająco, aby pokryć śródmieście Seattle w cieniu, jakby nie mieli już dość na co narzekać.
źródło
W rzeczywistości tak - procesy mogłyby teoretycznie adresować 2 ^ 64 bajtów pamięci. Ale, jak wskazałeś, istnieją sposoby na przekroczenie tego limitu.
źródło
Nie ma żadnej szczególnej stałej zależności między wielkością bitów procesora a ilością pamięci adresowalnej. Większość 8-bitowych komputerów z końca lat 70. mogła łatwo uzyskać bezpośredni dostęp do 65 536 bajtów, a 16-bitowe 8088 i 8086 miały bezpośredni dostęp do 1 048 576 bajtów. Dodatkowo można dodać sprzęt, aby umożliwić maszynom pośredni dostęp do dowolnej ilości pamięci RAM; wiele komputerów z procesorami 8-bitowymi miało 128 KB lub więcej, a jednostki rozszerzające pamięć dla komputerów opartych na 8088 miały dostęp do ponad 16 megabajtów. Chociaż Microsoft włączał taką funkcję tylko w „serwerowych” wersjach systemu Windows, możliwe było, aby 32-bitowy kod miał dostęp do pamięci poza znakiem 4GiB przy użyciu podobnych metod.
źródło
Miałbyś rację. Możesz zaadresować do 16 eksabajtów pamięci RAM. Teraz ... czy system operacyjny może to obsłużyć, byłoby innym pytaniem ....
źródło
Warto również zauważyć, że system operacyjny ma własne ograniczenia dotyczące pamięci w architekturze 64-bitowej.
Na przykład zobacz, co wikipedia mówi o systemie Windows Vista 64:
źródło
Największą zaletą 64 bitów nie jest pamięć RAM, którą można rozwiązać, ale wszystko inne. Możesz na przykład zdefiniować adres dla każdego bajtu na dysku, a zwiększenie pojemności dysku nie unieważni go przez dziesięciolecia.
źródło
Większość współczesnych procesorów ma sztuczny limit wielkości adresu. Na przykład architektura AMD64 ma 52-bitowy limit pamięci fizycznej i obecnie obsługuje tylko 48-bitową wirtualną przestrzeń adresową. (Za pośrednictwem Wikipedii). Jednak tak, fizycznie ~ 16,4 miliona terabajtów jest możliwe.
źródło
realistyczna odpowiedź fizyczna 1536 GB z 48 kartami RAM z 32 GB pojedynczymi drążkami i 4x xga lga2011
to jest na eseistyczny komputer, który ktoś może kupić bez naruszania ukrytych hardcorowych seversów, myślę, że jest tam 64gb pojedyncze stics .... 3072GB 128GB be 6144GB 256GB be 12288GB
po prostu rzucić tam, że istnieją sposoby na obejście ograniczeń systemu operacyjnego z ram, jeśli twój system operacyjny widzi tylko 4 GB RAM zamienia resztki w napęd RAM i użyj napędu RAM jako pliku strony XD XD XD XD tylko kwestia zrobienia preboot OS system kilka podobnych rzeczy zostało zrobionych już we wczesnych dniach dos / windows 3.11 itd
i mogą istnieć inne małe hacki do obejścia ograniczeń procesora
sprzęt, który widzimy, nie jest tam, tam są znacznie mocniejsze rzeczy Miałem komputer z 98 działającymi procesorami 8 i coś w rodzaju RAM 32 GB, ale to drogie, hi-endowe serwery
patrzę na serwery jako komputery stacjonarne, ponieważ mam dość komputerów dla publicznego XD
źródło