32 비트 시스템의 4GB RAM 제한도 스왑 공간에 영향을 줍니까?


11

32 비트 시스템은 최대 RAM 크기로 4GB 만 처리 할 수 ​​있다는 것이 잘 알려져 있습니다.

Linux에서이 제한은 스왑 파티션에도 적용됩니까? RAM + 스왑이 4GB를 초과하면 완전히 사용됩니까?

대답이 "아니오"인 경우 스왑에는 적용되지 않습니다. 왜 그렇습니까?


3
"물리적 주소 확장 (PAE)은 32 비트 x86 중앙 처리 장치 (CPU)가 물리적 주소 공간 (임의의 액세스 메모리 및 매핑 된 메모리 포함)에 액세스 할 수 있도록하는 기능입니다. 4 기가 바이트보다 큰 기기). " en.wikipedia.org/wiki/Physical_Address_Extension
f1assistance 11

1
@packets 더 이상 그를 혼동하지 마십시오. 그는 실제로 가상 주소 지정 및 페이징과 같은 기본 개념에 대해 먼저 알아야합니다.
David Marshall

1
문제 없습니다, 저는 학습을 두려워하지 않습니다.
Sekhemty

답변:


12

아니요, RAM이 책상과 같고 스왑 공간 / 가상 메모리가 파일 캐비닛과 같다고 상상해보십시오. 파일 캐비닛에 많은 정보를 넣을 수는 있지만 액세스하기가 어렵습니다. 사용하고자하는 모든 서류는 꺼내서 책상 위에 올려 놓아야합니다. 문제는 책상이 한 번에 너무 많은 종이를 담을 수 있다는 것입니다.

32 비트 시스템은 4GB (2 ^ 32 또는 약 40 억 바이트)의 데스크 만 가질 수 있지만 여전히 거의 무제한의 파일 캐비넷을 가질 수 있습니다. 책상이 가득 차면 서류를 "스왑"해야하며 서류 캐비넷에있는 다른 페이지를 봐야합니다.


스왑에 적용되지 않는 이유는 RAM의 내용에 액세스하거나 코드에서 코드를 실행하는 것이 작업 할 수있는 숫자의 크기로 제한되기 때문입니다. 책상 위에 40 억 개의 단어 만 넣을 수 있다고 생각하십시오. 왜냐하면 그것은 계산할 수있는만큼 높고 단어를 직접 사용해야하기 때문입니다. "3,547 단어의 철자가 잘못되었습니다. 단어 3,452,780을 'Hello'로 변경하십시오. 단어 6을 삭제하십시오."

이제 각 페이지에 4,000 개의 단어가있을 수 있습니다. 캐치 공간은 스왑 공간을 참조 할 때 단어로만 참조하지 않으며 페이지별로 만 참조합니다. 따라서 여전히 40 억까지만 계산할 수 있지만 40 억 페이지까지 계산할 수 있습니다. 40 억 페이지는 실제로 16 단어를 보유하고 있습니다.

64 비트 컴퓨터는 더 높은 수를 계산할 수 있으므로 책상이 충분히 큰 경우 모든 페이지를 한 번에 책상에 놓을 수 있습니다. 32 비트 컴퓨터에 초대형 책상을 배치하더라도 40 억까지만 계산할 수 있으므로 책상에있는 추가 단어를 모두 참조 할 방법이 없습니다.


스왑 공간이 RAM 메모리의 인덱스 역할을한다는 것입니다. 결과적으로 단일 GB의 스왑은 단일 GB의 RAM보다 훨씬 많은 메모리를 나타 냅니까? 어쨌든, 나는 왜 시스템이 4GB 이상의 RAM을 관리 할 수 ​​없는지 이해할 수 없지만 대신 스왑을 사용할 수 있습니다. 왜 우리 모두 RAM 대신 스왑을 사용하지 않습니까?
Sekhemty

1
스왑 공간은 "언로드 된"메모리와 같으며 훨씬 더 큰 청크로 참조됩니다. 1GB의 RAM은 1GB의 스왑이지만 RAM은 바이트 당 주소가 지정되고 스왑은 청크 당 주소가 지정됩니다. 땅콩 포장에 대해 생각해 볼 수도 있습니다. 손에 포장 땅콩을 몇 개나 넣을 수 있습니까? 더 많은 것을 집어 들기 전에 100이 손가락 사이에 튀어 나오게하는 것일까 요? 이제 포장용 땅콩을 상자에 넣으면 얼마나 많은 포장 땅콩을 넣을 수 있습니까? 수천? 스왑은 상자와 비슷합니다. 더 큰 청크로 데이터를 관리 할 수는 있지만 데이터 자체에는 액세스 할 수 없습니다.
Darth Android

1
@Sekhemty : 스왑을 항상 사용하는 이유에 대한 두 번째 질문-스왑 파일은 하드 디스크에 존재하며 컴퓨터가 하드 디스크의 데이터에 액세스 할 수있는 속도는 디스크의 액세스 속도 (및 그런 다음 일부). 그러나 가장 빠른 하드 디스크조차도 실제 RAM보다 훨씬 느립니다. 속도 문제입니다. 또한 현재 x86 아키텍처에서는이를 허용하지 않습니다 (RAM 없음, 스왑 만 해당). 스왑 파일은 시스템이 인식하지 못하는 OS 개념입니다.
bobbyalex

10

실제 메모리와 가상 메모리를 혼동하고 있습니다.

RAM은 실제 메모리입니다. 스왑 공간은 많은 4GB 가상 주소 공간을 포함 할 수 있습니다.

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