Windows 관련 특히, 하드웨어에 대해서 배우기(Mr.Learn)에게 딴지를 거시는 분들이 종종 계신데요. 동일한 내용이라도 배우기(Mr.Learn)가 작성한 글은 날나리(?)라서 신뢰성이 떨어지고, 마이크로소프트 직원이 작성한 글은 부실해도 신뢰성을 느끼시나 봅니다. 물론 마이크로소프트 엔지니어들은 Windows를 누구보다도 잘아는 분들입니다. 그러나 마이크로소프트 Windows라는 것은 우리 사용자들이 생각하는 것 이상 방대해서 여러 분야로 나뉘어져 있고 각각의 분야에 맞는 전문가들이 배치되어져 있습니다. 한 분야의 전문가라고 해도 Windows라는 것이 워낙 방대한 만큼 모든 것을 다 알 수 있다고는 생각지 않습니다. 그래서 그런지 간혹 제가 보기는 마이크로소프트 엔지니어가 작성한 글이라도 부실해 보이는 것들이 있습니다. 또 특정분야 전문가라고 해도 기술적인 설명을 자세히 하려면 시간과 노력이 필요하기 때문에 사정상 어쩔 수 없이 부실해 지는 경우도 있을 수 있다라고 생각이 됩니다. 그래서 경우에 따라서는 오히려 날리리 취급받는 배우기(Mr.Learn)가 설명한 것이 사용자들에게 휠씬 유익할 수도 있고 기술적면에서도 정확할 수 있음에도 단지, 편견 때문에 오해를 받는 경우도 있다는 생각입니다. 그래서 오늘은 이와 연관된 부분을 웹로그로 다루어 볼까 합니다.
어떤 분이 배우기(Mr.Learn) 글을 읽고 Windows에 대해서
혼자서 독학을 해서 신뢰성이 떨어진다는 분도 계십니다. 우리나라에서는
독학이라는 것을 왜그리 우습게 보는지 모르겠습니다만, 미OOO 사건 때도 뒷조사를 해서 경제를 독학으로 어쩌구 하면서 사람을 무시해 깔아 뭉개버리더군요. 우리들은 지금 정보화 시대를 넘어서
지식 기반 사회에 살고 있습니다.
지식 기반 사회라는 것은 비전문가도 쉽게 지식을 얻어서 전문가가 될 수 있는 시대입니다. 전통적인 커리큘럼에만 의존하는 시대가 아니라는 점입니다. 좀 극단적인 예가 될지 모르겠습니다만, 천재들이 피교육자로써 얻는 것보다는 스스로 독학을 해서 얻는 것이 더 많다는 생각입니다. 특히 컴퓨터 해커들은 대부분이 독학으로 실력을 쌓는 경우가 많습니다. 고로 배우기(Mr.Learn)도 똑똑하다 뭐 이런 의미는 아닙니다.^^
자! 4GB 램을 장착한 PC에서 Windows를 설치하면 사용 가능한 메모리 용량이 상당 부분 줄어 듭니다. 그래서 배우기(Mr.Learn)가 그것은 그래픽 카드 때문이라 했습니다. 하드웨어 예약 공간은 운영체제가 가동되기 위해서 필수적으로 필요한 공간이고, 가장 많은 부분을 차지하는 것이 그래픽카드이다. 그랬더니 들이대는 분들이 많더군요. 그래픽 카드가 아니고 MMIO(Memory Mapped I/O) 때문이다라고 말입니다. 넓게 보면 그래픽카드가 차지하는 공간도 MMIO라고 했더니 그것도 인정을 하지 않는 분들이 있습니다. 오로지 MMIO라는 것입니다. P모 사이트라도 국내 유명 하드웨어 커뮤니티에서 윈앤위 글을 링크하고 갑론을박이 벌어집니다. 그래서 근거로 제시하는 곳을 찾아 보니까 MS직원 분이 운영하는 블로그의 FAQ이더군요. 결국 배우기(Mr.Learn)가 해당 블로그에
짜증 섞긴 피드백을 남겼습니다.
MMIO라고 하면 그것을 사용자들이 쉽게 이해하겠느냐 WDDM를 가지고 사용자 관점에서 쉽게 설명을 하는 것이 좋다라고 했습니다. 그랬더니 그쪽 블로그의 MS 열혈팬들이 달려와서 배우기(Mr.Learn) 한테 들이대더군요. 기술에 엔지니어 관점이 어디있고 사용자 관점이 어느 있는냐라고 말입니다.
사실은 배우기(Mr.Learn)의 설명이나 MS 블로그의 설명이나 양쪽 모두 맞는 설명이고, 동일한 것입니다. 한쪽은 맞고 어느 한쪽이 틀린다라고 한다면 솔직히 까놓고 얘기해서 Windows 하수입니다. 양쪽 모두가 맞다라고 한다면 그만큼 Windows을 이해하고 있는 고수입니다. 기술적으로 세밀하진 않아도 일반 사용자들이 이해하기에는 무리가 없는 수준에서 양쪽을 모두 넉넉한 마음으로 수용을 한다면 양측 모두 인정이 되고, 그렇게 판단하는 것이 Windows 고수입니다. 단지, 사용자들이 어느 쪽을 신뢰하느냐라는 문제인데, 배우기(Mr.Learn)는 한마디로 날나리(독학)라 믿을 수 없고, MS 블로그의 글이 옳다라는 것입니다. 제가 짜증 섞인 피드백을 남긴 것은 삭제가 된 것인지는 모르지만, MS 블로그 글에 수정이 있었습니다. 제 피드백을 수용한 것인지 아닌지는 정확히 알 수 없지만 MMIO가 모호하다는 의견이 있어 추가 내용을 작성했다고 하는군요.
* 이전에 댓글에 추가로 명시 했습니다만 '장치 메모리', 혹은 'MMIO'라고만 명시 한것에 대해서 모호하다는 의견이 있어 본문 내용과 하단 부분에 함께 추가 합니다. ^^ 4GB 전체 사용하지 못하는 이슈에 영향을 끼치는 디바이스 요인으로 System BIOS, Motherboard Resources (I/OxAPIC), Memory Mapped I/O, PCI Express Configuration Space, Additional PCI Device Memory (Graphics Aperture), VGA Memory *등(헥헥헥..)이 있습니다. 그러나 말씀안드려도 이들 모두 '장치 메모리'의 범주 임을 알 수 있는 센스~!
간단한 사과 코멘트 남기려 하려다 웬걸 거기에 배우기(Mr.Learn)가 바보 취급당하는 것이 보여서 충격을 먹었습니다만, 간접적으로나마 윈앤위 블로그에 사과를 했습니다. 그리고 이제 오늘의 웹로그 주제는 아래와 같은 문제를 윈앤위와 MS 블로그가 각각 어떻게 설명을 하며, 왜 양쪽 모두 맞는 것인지 그리고 엔지니어 관점과 사용자 관점이 어떻게 다른지를 다루어 보려고 합니다. 우선 Windows 사용자가 다음과 같은 문의를 했습니다.
Q2) 4GB메모리가 전부 보이지(인식)되지 않고 3(.xx)GB 정도로 보여요, 왜 그런가요?
먼저 윈앤위 방문자님들의 경우 MS 블로그의 설명을 읽으셨다는 가정 하에 진행을 합니다.
어떻습니까? 쉽게 이해가 가는지요. 아마도 전자쪽 배경지식이 있는 분들은 쉽게 이해가 갈지 모르지만, Windows 일반 사용자들의 경우는 제가 보긴 이해가 쉽지 않습니다. 물론 MMIO가 모호하다라는 의견 반영으로 추가적인 설명이 포함되었지만, 제생각에는 여전히 Windows 사용자들이 이해하기는 어렵고, 실제 WDDM에 따른 정확한 설명은 아니라는 생각이 듭니다.
MS 블로그에서 설명한 것은 마크 루시노비치 블로그에서 장치 맵핑에 따른 메모리 주소 점유 및 변화라는 엔지니어 관점에서 접근하고 있습니다. MS 블로그 운영자가 직접 작성한 것이 아니고 아래 내용을 근거로 해서 한글화 설명을 한 것이더군요. 해당 내용에 대한 원저작작의 설명은 아래 URL에서 확인 가능합니다.
배우기(Mr.Learn)가 이미 지난 웹로그에서 다룬 내용이지만, Windows 실행 상자에서 시스템 정보 도구(msinfo32.exe)를 띄우면 왼쪽의 시스템 요약에서 하드웨어 리소스라는 것이 보입니다. 이 하드웨어 리소스를 펼쳐보시면, I/O와 메모리라는 것이 보입니다. 여기서 I/O라는 것은 장치간의 통신에 사용하고, 메모리라는 것은 장치와 운영체제간에 통신을 하는데, 이들 모두 예약된 하드웨어 리소스에 해당합니다. MS 블로그에서는 이러한 하드웨어 예약이 단순하게 대략 500MB(비디오 카드 등의 MMIO로써 디바이스 드라이버)로 보고 이것이 밀려 나고 끼어든다라고 설명을 합니다. 이 MS 블로그를 운영하는 분은 CSS 엔지니어라고 되어 있습니다. 해당 글로만을 추측을 하면 제가 보긴 담당분야가 디바이스 드라이버 개발이나 커널 디버깅 쪽의 전문가 분은 아닌 듯합니다. 또 Windows Internals 5’th Edition을 참조했다고 하는데, 이 책은
마크 루시노비치(Mark Russinovich)라는 분이 저자이며, 마이크로소프트의 소프트웨어 엔지니어이자 Windows의 NT 커널을 총괄하는 분입니다. 쉽게 얘기하면 세계에서 Windows를 가장 잘 아는 사람이라고 보면 무리가 없을 듯한데, 그렇기 때문에 Windows의 트러블슈팅이나 디버깅 전문가이기도 합니다. Windows를 심도 있게 공부하는 사람들에게는 Windows Internals은 필독서라고 할 수 있습니다. 5번째 에디션은 아니지만 배우기(Mr.Learn)도 한 번씩 이 책을 보고, 무리가 있긴 하지만 딴에는 내용을 소화한다고 해서 윈앤위 웹로그에도 이용을 합니다.(그러나 소화를 못시키고 간혹 체하기도 하지만 ..^^.)
마이크로소프트 블로그의 운영자는 위의 마크 루시노비치(Mark Russinovich)의
Windows Internals 5’th Edition을 참조했다고 하는데요. 제가 이 분이 그렸다는 이미지를 편의상 보기 좋게 편집을 했습니다.
위의 이미지를 잘 보시면 왼쪽 빨간 상자로 표기된 부분이 그래픽 카드가 점유하는 메모리 범위입니다. 끝에는 WDDM라는 것이 보이는데요. 그것은 바로 비스타 부터 도입된 Windows Display Driver Model(디플레이 드라이버 모델)이라고 합니다. 이 분이 내용을 추가하기 전까지는 MMIO로 인해서 영역이 밀려나서 Windows에서 사용할 수 있는 메모리 영역이 줄어든다고 비교적 간단한 설명을 했는데, 제가 불만이었던 것은 바로 그것을 Windows 일반 사용자들이 쉽게 이해할 수 있느냐라는 것입니다. 지금도 여전히 메모리가 밀려나서 500MB의 디바이스 메모리(비디오 카드)가 끼어 든다고 설명을 하는데, 제가 보기는 4.5GB라는 메모리 맵도 그렇고 Windows Internals 5’th Edition에 정말 저렇게 설명을 하고 있는가 의문이 듭니다.(물론 제가 Windows Internals 5’th Edition이라는 책은 보지 못했고 4’th Edition은 간혹 봅니다.) 그러나 너그럽게 보면 저런 설명으로 이해하는 것에는 크게 무리가 없다는 생각입니다.
윈앤위에서는 저런 설명 보다 더욱 자세하게 그것도 기술적인 웹로그가 있습니다.
위의 배우기(Mr.Learn)의 웹로그를 종합하면 결국 어떤 메모리 맵이 나오는냐하면 아래와 같습니다.
부팅하기 전 메모리 맵의 제일 밑부분에서 시작을 설명을 하면 ...
1. 그래픽 카드 외의 다른 장치들 맵핑은 불과 2M에서 4MB입니다.(Mark Russinovich의 Windows Internals에서 참조)
2. 그래픽 카드가 128MB, 256MB, 512MB 각각 전용 메모리만큼을 소비합니다.
3. 바이오스(BIOS)의 Aperture Memory를 설정(XP) 합니다.(vista와 Windows 7 최적 하드웨어 제외)
4. Aperture Memory 크기만큼 GART(Graphics Address Remapping Table)가 설정됩니다.
5. 4GB에서 1, 2, 3, 4번을 제외한 크기를 컴퓨터가 켜지면서 출력(POST) 합니다.
6. 부팅 하면서 공유 시스템 메모리가 설정됩니다.(보고하는 메모리는 그 만큼 사용할 수 있다는 의미)
3, 4, 5번의 경우 비스타에서 부터 도입된 WDDM(Windows Display Driver Model)에 의해서 보다 많은 부분을 그래픽 카드에 부담을 시키게 되면서 HV들은 비스타에 적합한 기술들을 적용시면서 기술적 호칭은 다르지만 3, 4, 5번이 보다 안정적으로 되도록 XP 구형 하드웨어 달리 안정성을 위해서 강제로 자동할당을 시키거나 128MB 또는 256MB이상 하드웨어 또는 그래픽 카드 전용 메모리 용량에 따라 변경되어지고, 위의 링크한 윈앤위의 그래픽 관련 웹로그에서 처럼 WDDM의 메모리 계산 방식에 따라서 메모리가 할당되게 됩니다. 물론 저렇게 자세하기 다루기 이전부터
4GB 메모리 맵을 보여주는 친절한 Windows 7 - XP/비스타/세븐 공통처럼 기회가 될 때 마다 배우기(Mr.Learn)가 강조를 해도 배우기(Mr.Learn)를 신뢰하는 경우가 상당히 드뭅니다.
그래도 나름대로 Windows 클라언트 전문 사이트로써 엄청나게 자세한 정보를 다루어도 배우기(Mr.Learn)는 날나리라 신뢰할 수 없다는 분들이 상당수 계십니다. 같은 하드웨어 예약공간을 다루면서 오히려 상세하게 다룬 쪽은 신뢰할 수 없다? 물론 간혹 배우기(Mr.Learn)도 기술적인 오류를 범하기도 하지만, 그러한 것은 대 놓고 문의를 하면 좋은데 말입니다.^^ (대한민국 Windows 관련 사이트에서 윈앤위에서 처럼 하드웨어 예약 공간을 상세하게 다룬 곳이 있는지요?)
결론적으로 모두 양쪽 옳다고 하시는 분은 고수, 일방적으로 한쪽이 옳다고 하면 하수!
무식한 것인지 용감한 것인지, 네이버 상습 펌질 및 양심불량 블로그(
blog.naver.com/spef)는 윈앤위 게시물 모두 삭제하십시오!
개인 운영 사이트라고 만만하게 생각하고 콘텐츠 복제하나본데 그러다가 큰코 다칩니다.
저작권자 동의없이 콘텐츠 복제를 금합니다. 동의를 거쳐서
이용 규칙을 준수하십시오!
작성날짜 : 2009년 10월 31일
작성시간 : AM 10시 26분 29초
퍼브리셔 :
배우기(Mr.Learn)
저작권자 : Powered by 윈앤위
코멘트는 누구에게나 열려 있습니다.
트랙백도 블로거에게 열려 있습니다.