일반적인 리눅스에서 (centOS 나 fedora) 같은 것에서
32bit 인 경우에 하드웨어 메모리가 8GB 이상인 경우
이 8GB를 모두 인식하려면 어떻게 해야 하나요?
커널 빌드를 다시 해야 하나요? 아니면 64bit 로 바꾸어야 하나요?
알려주시면 감사하겠습니다.
64비트를 쓰셔야 합니다.
sudo yum install -y kernel-PAE sudo reboot
32bit에서 이 설정을 사용한다고, 64bit 운영체제 처럼 native하게 8GB 메모리를 모두 쓸 수는 있는 건가요 ?
이 설정은 그냥 눈속임(?) 아닐까요?
32bit의 '메모리 어드레스 한계'가 있는데, 단지 이 설정 하나로 어떻게 32bit 운영체제에서 '8GB 메모리 전체'를 '64bit 운영체제에서처럼 쓸 수 있다'는 건지요?
PAE를 이용하면 물리적으로 64GB까지 어드레싱이 가능합니다. OS자체가 32비트이기 때문에
한 프로세스가 갖는 주소공간은 4GB로 한정되지만, OS에서 64GB까지 인식하고 활용할 수 있습니다.
다만, 어떤 디바이스 드라이버들에서 DMA 문제(?)때문에 오류가 발생한다는 이야기를 들은
기억이 있습니다. 이부분은 저도 잘 모르겠습니다. PAE를 사용해보기도 전에 64비트로 갈아타버려서
테스트해볼 기회가 없었네요.
이 "PAE"라는 것이 혹시 예전 MS-DOS 시절의 익스텐디드 나 익스팬디드 메모리 같이 '페이징 접근 방식', 뭐 이런 것과 비슷한 원리인가요?
*한 프로세스* 내에서는 당연히 주소 공간의 한계로 인해 4G (커널 영역을 빼면 순수하게는 3G겠지만..) 이상을 사용할 수 없는 것이 사실입니다.
하지만 4G (혹은 3G) 이하의 메모리를 대부분 사용하는 프로세스 (memory hog?)가 *여러 개* 있다면 PAE를 통해 최대한 많은 물리 메모리를 확보하는 것이 시스템 성능에 도움이 될 것입니다.
첨언하자면 물론 커널도 native하게(?) 8G의 메모리를 아무런 제약없이 접근하지는 못할 것입니다. 다만 프로세스가 메모리 할당을 요청한 경우 시스템에 존재하는 4G의 이상의 물리 메모리를 프로세스에게 할당해 줄 수 있는 방법을 마련해 두는 것입니다.
별.. 쓸데없는 얘기 이긴한데... $ sudo yum install -y kernel-PAE 라고 하는건.. 단지.. 이 설정(!)이 아니라... 운영체제의 근간(커널)을 흔드는 겁니다.. ㅡㅡ;;;
64비트로 쓰시는게 좋을겁니다. 32비트 모드에서 PAE이용하면, OS는 더 넓은 메모리를 쓰지만, 어차피 어플리케이션은 동일하게 4GB로 제한되지않나요?
더불어 32비트 모드로 PAE 쓰시면, IO가 상당히 느려지는것으로 알고있습니다.
------------------------------------------ Let`s Smart Move!!http://kalstein.tistory.com/
^^
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
64비트를 쓰셔야 합니다.
64비트를 쓰셔야 합니다.
sudo yum install -y
sudo yum install -y kernel-PAE
sudo reboot
32bit에서 이 설정을 사용한다고, 64bit 운영체제 처럼 native하게 8GB 메모리를 모두 쓸 수 ?
32bit에서 이 설정을 사용한다고, 64bit 운영체제 처럼 native하게 8GB 메모리를 모두 쓸 수는 있는 건가요 ?
이 설정은 그냥 눈속임(?) 아닐까요?
32bit의 '메모리 어드레스 한계'가 있는데, 단지 이 설정 하나로 어떻게 32bit 운영체제에서 '8GB 메모리 전체'를 '64bit 운영체제에서처럼 쓸 수 있다'는 건지요?
PAE를 이용하면 물리적으로 64GB까지 어드레싱이
PAE를 이용하면 물리적으로 64GB까지 어드레싱이 가능합니다. OS자체가 32비트이기 때문에
한 프로세스가 갖는 주소공간은 4GB로 한정되지만, OS에서 64GB까지 인식하고 활용할 수 있습니다.
다만, 어떤 디바이스 드라이버들에서 DMA 문제(?)때문에 오류가 발생한다는 이야기를 들은
기억이 있습니다. 이부분은 저도 잘 모르겠습니다. PAE를 사용해보기도 전에 64비트로 갈아타버려서
테스트해볼 기회가 없었네요.
이 PAE라는 것이 혹시 예전 MS-DOS 시절의
이 "PAE"라는 것이 혹시 예전 MS-DOS 시절의 익스텐디드 나 익스팬디드 메모리 같이 '페이징 접근 방식', 뭐 이런 것과 비슷한 원리인가요?
눈속임은 아닙니다.. ;;
*한 프로세스* 내에서는 당연히 주소 공간의 한계로 인해
4G (커널 영역을 빼면 순수하게는 3G겠지만..) 이상을 사용할 수 없는 것이 사실입니다.
하지만 4G (혹은 3G) 이하의 메모리를 대부분 사용하는 프로세스 (memory hog?)가 *여러 개* 있다면
PAE를 통해 최대한 많은 물리 메모리를 확보하는 것이 시스템 성능에 도움이 될 것입니다.
첨언하자면 물론 커널도 native하게(?) 8G의 메모리를 아무런 제약없이 접근하지는 못할 것입니다.
다만 프로세스가 메모리 할당을 요청한 경우 시스템에 존재하는 4G의 이상의 물리 메모리를
프로세스에게 할당해 줄 수 있는 방법을 마련해 두는 것입니다.
별.. 쓸데없는 얘기 이긴한데...# yum
별.. 쓸데없는 얘기 이긴한데...
$ sudo yum install -y kernel-PAE
라고 하는건.. 단지.. 이 설정(!)이 아니라...
운영체제의 근간(커널)을 흔드는 겁니다.. ㅡㅡ;;;
가능하시면
64비트로 쓰시는게 좋을겁니다.
32비트 모드에서 PAE이용하면, OS는 더 넓은 메모리를 쓰지만, 어차피 어플리케이션은 동일하게 4GB로 제한되지않나요?
더불어 32비트 모드로 PAE 쓰시면, IO가 상당히 느려지는것으로 알고있습니다.
------------------------------------------
Let`s Smart Move!!
http://kalstein.tistory.com/
답변 감사드립니다.
^^
댓글 달기