64 비트 머신이 이론적으로 해결할 수있는 최대 램 양은 얼마입니까?


21

컴퓨터 아키텍처 책을 읽고 있는데 x86, 32 비트 CPU에서 프로그램 카운터가 32 비트임을 알 수 있습니다.

따라서 주소를 지정할 수있는 바이트 수는 2 ^ 32 바이트 또는 4GB입니다. 따라서 대부분의 32 비트 시스템은 램의 양을 4gb (PAE 무시)로 제한합니다.

64 비트 시스템이 이론적으로 2 ^ 64 바이트 또는 16 엑사 바이트 의 램을 처리 할 수 ​​있다고 가정합니까 ?!


4
기존 x86 64 비트 프로세서는 실제로이 작업을 수행 할 수 없습니다. 캐시에는 충분한 태그 비트가없고 주소 버스의 너비가 충분하지 않습니다. 많은 최신 x86 CPU의 경우 46 비트 (8TB)가 최대입니다.
David Schwartz

4
이론적으로는 제한이 없습니다. 32 비트 CPU조차도 4GiB 이상의 주소 공간을 가질 수 있습니다. 메모리 관리 시스템이 하드웨어 에서 구현 되는 방식에 따라 달라지며 일반적 으로 CPU의 워드 길이와 무관합니다. 프로그램의 포인터는 항상 단어 길이이지만, 어쨌든 가상 주소이며 실제 주소는 아니므로 다른 주소 공간에 더 매핑됩니다.
혁신적인

이것은 오래된 답변이있는 오래된 질문이지만이 질문에 가장 많이 찬성 된 답변은 매우 오해의 소지가 있으며 64 비트 너비의 주소 버스 주소를 가진 시스템이 얼마나 많은 RAM을 사용할 수 있는지에 대한 답변 입니다 . David와 Breakthrough가 위에서 지적했듯이 아키텍처 의 "비트 니스" 는 주소 버스의 크기가 아니라 기본 레지스터의 크기를 반영합니다.
Sebi

PAE를 왜 무시 하시겠습니까?
Jamie Hanrahan

답변:


28

이론적으로 : 1,680 만 테라 바이트. 실제로 : 컴퓨터 케이스는 너무 작아서 모든 RAM에 맞지 않습니다.

http://en.wikipedia.org/wiki/64-bit#Limitations_of_practical_processors


13
너무 작습니다 .... 오늘 !!!!
snicker

2
16.777216 백만 테비 바이트. 당신이 정확하고 싶다면.
totymedli

다른 소스에서 프로세서가 메모리에 액세스하기 위해 모든 비트를 사용할 수 없다는 것을 읽었습니다. 이것이 귀하의 답변에서 고려되고 있습니까?
Andrey

17

Matt Ball의 답변을 보완하기 위해 특정 온라인 소매 업체에서 찾을 수있는 현재 가장 큰 RAM은 32GB입니다. 1 테라 바이트에 도달하려면 32 개가 필요합니다. 스틱 당 약 0.5 인치로 마더 보드에 테라 바이트 단위의 상업용 램을위한 16 인치의 공간을 제공합니다. 1,680 만 테라 바이트에 도달하려면 4,242.42 마일의 마더 보드가 필요합니다. LA에서 NYC까지의 거리는 약 2141 마일이므로 마더 보드는 전국으로 확장되어 많은 RAM을 수용 할 수 있습니다.

분명히 이것은 비현실적입니다.

RAM을 대부분의 마더 보드처럼 한 줄에 넣지 않고 대신 나란히 배치하는 것은 어떻습니까. 램의 평균 스틱의 길이는 약 6 인치라고 말하고 싶습니다. 너비를 0.5 인치로 허용하면 6 인치의 사각형에 12 스틱의 램을 제곱 단위로 사용할 수 있습니다. 이 사각형을 RAM 타일이라고하겠습니다. RAM 타일은 384GB의 RAM을 보유합니다. 384GB 타일에서 필요한 1,680 만 테라 바이트에 도달하려면 4,480 만 타일이 필요합니다. 지저분 해 보시고, 제곱근을 사용하여 마치 6693 x 6694 타일의 제곱 또는 13,383 x 13,388 피트로 2.5 마일에 가깝고 시애틀 시내를 그림자처럼 덮을 수있을 정도로 충분합니다. 그들은 이미 불평하기에 충분하지 않았습니다.


2
너무 큰. 왜 평평하게 누워 있습니까? 100 '큐브에서 모두 얻을 수 있습니다. 그래도 시원하게 유지하려면 액체 질소가 필요할 것입니다!
Loren Pechtel

1
시애틀
콘래드

하나의 가능한 수정. 타일이 6 "x 6"이므로 타일 수의 두 배인 인용 된 13,386이 아니라 면적 3346.5 x 3347 피트 (타일 수의 절반)가 아닙니다. 또한 아무도 언급하지 않은 다른 문제가 있습니다. 가장 좋은 배치를 가정하십시오. 원, 필요한 영역을 둘러싸려면 반경이 약 1,890 피트 여야합니다. Grace Hopper가 지적한 것처럼 Adm, 구리를 통한 전송 대기 시간은 약 나노초 / 피트입니다. 즉, 외부 링으로의 왕복 지연 시간은 ~ 3.78 마이크로 초입니다. 메인 메모리의 경우 느린 편입니다. 이모.
dgnuff

4

사실상, 예-프로세스는 이론적으로 2 ^ 64 바이트의 메모리를 처리 할 수 ​​있습니다. 그러나 지적 했듯이이 한계를 극복 할 수있는 방법이 있습니다.


3

프로세서의 비트 크기와 주소 지정 가능한 메모리 양 사이에는 특별한 고정 관계가 없습니다. 1970 년대 후반의 대부분의 8 비트 시스템은 65,536 바이트에 직접 액세스 할 수 있었고 16 비트 8088 및 8086은 1,048,576 바이트에 직접 액세스 할 수있었습니다. 또한 기계가 임의의 양의 RAM에 간접적으로 액세스 할 수 있도록 하드웨어를 추가 할 수 있습니다. 8 비트 프로세서가 장착 된 많은 컴퓨터에는 128K 이상이 있으며 8088 기반 PC 용 메모리 확장 장치는 16 메가 이상에 액세스 할 수 있습니다. Microsoft는 "서버"버전의 Windows에서만 이러한 기능을 사용하도록 설정했지만 32 비트 코드는 유사한 접근 방식을 사용하여 4GiB 마크 이상의 메모리에 액세스 할 수있었습니다.


2

당신은 맞을 것입니다. 최대 16 엑사 바이트의 RAM을 처리 할 수 ​​있습니다. 운영 체제가 처리 할 수 ​​있는지 여부는 또 다른 질문이 될 것입니다 ....


2

또한 운영 체제에는 64 비트 아키텍처의 메모리에 대한 자체 제한이 있습니다.

예를 들어, Windows Vista 64에 대한 위키 백과의 차이점을 확인하십시오 .

모든 64 비트 버전의 Microsoft 운영 체제는 현재 주소 공간에 16TB 제한을 적용합니다. 64 비트 버전의 Windows Vista에서 생성 된 프로세스는 사용자 프로세스 용 가상 메모리에 8TB를, 커널 프로세스 용 16TB에 16TB의 가상 메모리를 만들 수 있습니다. [29] 물리적 메모리 측면에서 Windows Vista 64-Bit Basic은 최대 8GB의 RAM을 지원하고 Windows Vista 64-Bit Home Premium은 최대 16GB의 RAM을 지원하며 Windows Vista 64-Bit Business / Enterprise / Ultimate는 최대 128GB를 지원합니다 RAM의. [8]



1

64 비트의 가장 큰 장점은 처리 할 수있는 RAM이 아니라 다른 모든 것입니다. 예를 들어 디스크의 모든 바이트에 대한 주소를 정의 할 수 있으며 디스크 용량을 늘려도 수십 년 동안이 주소가 무효화되지는 않습니다.


물론 현재의 CPU는이 주소 공간이 인위적으로 제한되어 있기 때문에 디스크의 모든 바이트를 더 이상 처리하기에 충분한 비트가 없을 때까지 10 년이 걸릴 수 있습니다. 이 단계에서 SSD가 진행되는 방식에 따라 한계가 높아져 전체 디스크가 메모리 섹션으로 나타나 성능이 크게 향상 될 수 있기를 바랍니다. SATA 케이블 대신 RAM 슬롯에 SSD를 연결해도 상관 없습니다!
Malvineous December

@ Malvineous 63 비트로 자신을 제한하더라도 9223372 TB를 직접 지정할 수 있다고해도 더 근본적인 것에 대해 이야기하고있었습니다. RAM 슬롯에 SSD가 이미 존재합니다 ( Sandisk 참조) .
Mark Ransom

나는 당신과 의견이 맞지 않았다. 나는 단지 현재의 기술로 당신이 제안하는 것에 인공적인 한계가 있다고 지적하고 있었다 (예를 들어, 주소의 48 또는 51 비트 만이 물리적 버스로 가져온다). 이러한 DIMM-SSD가 걸리면 이러한 인위적인 제한을 높이거나 제거 할 수 없다면 제안한 것보다 빨리 메모리 주소가 부족할 수 있습니다. 전체 64 비트를 사용할 수 있다면 문제가되기까지 수십 년이 걸릴 것이라고 동의합니다.
Malvineous

기록을 위해 SanDisk UlltraDIMM 링크를 보았지만 슬프게도 이것은 기술적으로 SSD as RAM이 아닙니다. DDR3 대 SATA 어댑터가 장착 된 6Gbps SATA SSD로 마치 메모리처럼 액세스 할 수 있습니다. 메모리 요청을 SATA 프로토콜로 추가 변환하면 약간의 대기 시간이 발생하고 약간 혼란스러워 보입니다. 바라건대 누군가는 이것의 이점을보고 곧 불필요한 어댑터없이 플래시를위한 진정한 메모리 인터페이스를 곧 출시 할 것입니다!
Malvineous December

0

오늘날의 현재 프로세서의 대부분은 주소 크기에 인공적인 한계가 있습니다. 예를 들어 AMD64 아키텍처에는 물리적 메모리에 대한 52 비트 제한이 있으며 현재 48 비트 가상 주소 공간 만 지원합니다. (Via Wikipedia). 그러나 물리적으로 ~ 1,640 만 테라 바이트가 가능합니다.


-1

32GB 단일 스틱 및 4x lga2011 제온을 실행하는 48 개의 램 카드가 장착 된 실제 물리적 응답 1536GB

이것은 숨겨진 하드 코어 서버를 침해하지 않고 구매할 수있는 esayist PC를위한 것입니다.

ur가 4GB 램 만 남은 것을 램 드라이브로 바꾸고 램 드라이브를 페이지 파일로 사용하는 경우 램으로 OS 제한을 극복 할 수있는 방법이 있다는 것을 버릴 것입니다 .XD XD XD XD는 사전 부팅 OS를 만드는 문제입니다 시스템 같은 초기 작업은 dos / windows 3.11 등의 초기에 다시 수행되었습니다.

CPU 제한을 극복하기위한 다른 작은 해킹이있을 수 있습니다

기어 우리는 거기에 더 강력한 물건을 볼 수있는 방법이 더 강력한 물건을 가지고 있습니다 .98 개의 8 프로세서를 실행하고 32GB 램과 같은 것에서 pc를 가지고 있었지만 이것은 고가의 하이 엔드 서버입니다.

공개 XD의 컴퓨터가 아프기 때문에 서버를 데스크탑으로 조사합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.