Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 6. 4GB 메모리 구성 [링크 복사], [링크+제목 복사],
조회: 20605
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

분위기가 제법 무르익었나 봅니다. ^^
요즘 들어, 심심치 않게 4GB 메모리에 대한 이야기가 흘러나오는군요. 그만큼 질문이 많아졌다는 것이고, 그것은 곧 4GB 구성한 개발자들이 많아졌다는 얘기일 것입니다.

현재는, 4GB 메모리를 꽂았다고 해서 4GB 메모리 전체를 사용할 수는 없습니다.
예전 도스 시절에 640KB 메모리를 설치하고 프로그램을 배우시던 분들은 아시겠지만, 바이오스 및 비디오 램등을 640KB 이후의 영역으로 밀어내기 위해서 갖은 애를 다 쓰곤 했었지요.

즉, 4GB 메모리 영역은 물리 램만 매핑되는 것이 아니라, 그 외의 바이오스나 비디오 램 등이 같이 매핑이 되는 영역이기도 합니다.
그렇기 때문에 4GB 물리 램을 설치하게 되면, 비디오 램 등에 영역을 빼앗겨서 그 부분은 여분의 램으로 사용할 수 없게 되어 버립니다.

이러한 문제점은, 우선 메인보드 자체가 4GB 이상을 처리할 수 없기 때문에 발생합니다. 메인보드 사양을 보면 4GB 물리 램까지 지원한다고 되어 있기는 하지만, 현실적으로 비디오 램 영역까지 하면 그것이 의미가 없게 되버립니다.

최근 들어서는, 4GB 이후의 영역에 PCI 장치들의 메모리 영역을 매핑할 수 있도록 해주는 옵션이 있던 것 같은데요. 아마도 그걸 사용하게 되면 4GB 물리 램에 대한 인식 영역을 좀 더 넓힐 수 있을 것입니다.

그런데, 마더보드만 그것을 지원한다고 해서 되는 것이 아닙니다. 운영체제 자체가 32bit인 경우에는 그나마도 4GB 자체가 한계이므로, 아마도 마더보드 설정으로 4GB 이후로 밀어냈다면 시스템에 문제가 있을 지도 모릅니다. 오히려, 32bit 윈도우즈 시스템에서는 마더보드 설정을 통한 메모리 매핑을 설정하지 말고, 비디오 램 등으로 밀려진 램 영역을 사용 할 수 있도록 /PAE 옵션을 주는 것이 권장됩니다. 하지만 이 방법도 그리 좋은 해결책은 아닙니다. 왜냐하면, PAE 영역은 일반 램의 메모리 할당 API가 아닌 별도의 API를 사용해야만 사용이 가능하기 때문에, 그 부분을 사용하기 위해서는 응용 프로그램 자체가 그 영역의 램을 사용할 수 있도록 프로그래밍 되어져야 합니다.

따라서, 근본적인 해결책은 운영체제를 64bit로 설치하는 것입니다.

그럼, 정리를 해볼까요? ^^ 4GB 메모리를 완전하기 쓰기 위해서는 마더보드를 4GB 이상을 지원하는 시스템 또는 바이오스 또는 PCI 메모리 등을 4GB 이상으로 밀어낼 수 있는 옵션을 가진 것으로 구매를 해야 되고, 운영체제는 64bit 시스템으로 설치를 해야만 합니다.

참고 URL:
Windows - When 4 = 3
; http://www.kudzuworld.com/blogs/Tech/2006_08_13.aspx

Why can't I see all of the 4GB of RAM in my machine?
; http://blogs.msdn.com/oldnewthing/archive/2006/08/14/699521.aspx

-----------------------------

요즘 들어 나온 마더보드는 최대 메모리가 8GB / 16GB까지도 가는군요.
AMD CPU 마더보드 쪽의 nVIDIA nForce 570 이상의 칩셋들은 16GB 메모리를 지원하고,
Itenl CPU 마더보드 쪽의 Intel 965P 칩셋 이상에서는 8GB 메모리를 지원합니다.









[최초 등록일: ]
[최종 수정일: 6/28/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2008-11-24 01시18분
Pushing the Limits of Windows: Virtual Memory
; http://blogs.technet.com/markrussinovich/archive/2008/11/17/3155406.aspx

4GB 메모리를 32bit 윈도우즈에서 모두 사용하지 못하는 이유에 대해 자세히 설명하고 있습니다.
kevin25

... 106  107  108  [109]  110  111  112  113  114  115  116  117  118  119  120  ...
NoWriterDateCnt.TitleFile(s)
11200정성태5/16/201719417오류 유형: 385. WPF - 폰트가 없어 System.IO.FileNotFoundException 예외가 발생하는 경우
11199정성태5/16/201721215.NET Framework: 657. CultureInfo.GetCultures가 반환하는 값
11198정성태5/10/201722688.NET Framework: 656. Windows Forms의 오류(Exception) 처리 방법에 대한 차이점 설명
11197정성태5/8/201719620개발 환경 구성: 315. VHD 파일의 최소 크기파일 다운로드1
11196정성태5/4/201720804오류 유형: 384. Msvm_ImageManagementService WMI 객체를 사용할 때 오류 상황 정리 [1]
11195정성태5/3/201721130.NET Framework: 655. .NET Framework 4.7 릴리스
11194정성태5/3/201723276오류 유형: 383. net use 명령어로 네트워크 드라이브 연결 시 "System error 67 has occurred." 오류 발생
11193정성태5/3/201721592Windows: 141. 설치된 Windows로부터 설치 이미지를 만드는 방법
11192정성태5/2/201722157Windows: 140. unattended.xml/autounattend.xml 파일을 마련하는 방법
11191정성태5/2/201722897Windows: 139. Dell Venue 8 Pro 태블릿에 USB를 이용한 윈도우 운영체제 설치 방법
11190정성태5/2/201728242Windows: 138. Windows 운영체제의 ISO 설치 파일에 미리 Device driver를 준비하는 방법
11189정성태5/2/201720239Windows: 137. Windows 7 USB/DVD DOWNLOAD TOOL로 98%에서 실패하는 경우
11188정성태4/27/201722719VC++: 118. Win32 HANDLE 자료형의 이모저모 [1]
11187정성태4/26/201723284개발 환경 구성: 314. C# - PowerPoint 확장 Add-in 만드는 방법 [1]파일 다운로드1
11186정성태4/24/201721064VS.NET IDE: 117. Visual Studio 확장(VSIX)을 이용해 사용자 매크로를 추가하는 방법 [1]파일 다운로드1
11185정성태4/22/201718999VS.NET IDE: 116. Visual Studio 확장(VSIX)을 이용해 사용자 메뉴 추가하는 방법 (2) - 동적 메뉴 구성파일 다운로드1
11184정성태4/21/201720644VS.NET IDE: 115. Visual Studio 확장(VSIX)을 이용해 사용자 메뉴 추가하는 방법파일 다운로드1
11183정성태4/19/201719493.NET Framework: 654. UWP 앱에서 FolderPicker 사용 시 유의 사항파일 다운로드1
11182정성태4/19/201723512개발 환경 구성: 313. Nuget Facebook 라이브러리를 이용해 ASP.NET 웹 폼과 로그인 연동하는 방법
11181정성태4/18/201720406개발 환경 구성: 312. Azure Web Role의 AppPool 실행 권한을 Local System으로 바꾸는 방법
11180정성태4/16/201723443Java: 18. Java의 Memory Mapped File 자원 반환이 안 되는 문제
11179정성태4/13/201716585기타: 64. SVG Converter 스토어 앱 개인정보 보호 정책 안내
11178정성태4/10/201718800개발 환경 구성: 311. COM+ 관리자의 DCOM 구성에 나오는 기준
11177정성태4/7/201719197.NET Framework: 653. C# 7 새로운 문법(1) - 더욱 편리해진 Out 변수 사용파일 다운로드1
11176정성태4/5/201716265VC++: 117. Visual Studio - ATL COM 개체를 단위 테스트 하는 방법
11175정성태4/5/201725924.NET Framework: 652. C# 개발자를 위한 C++ COM 객체의 기본 구현 방식 설명파일 다운로드1
... 106  107  108  [109]  110  111  112  113  114  115  116  117  118  119  120  ...