윈도우7

64비트 윈도우7에서 32비트용 프로그램을 돌릴 때 별 무리가 없는지요 ?

sungtg 2010. 5. 5. 13:33
운영체제를 윈도우7 64bit로 깔고 32bit용 프로그램을 사용해도 별 무리가 없는지요?
windows 7을 64bit 운영체제로 깔고, MS Office같은 경우 32bit라고 한다면,  
프로그램 동작 중 별 문제가 없는지요?

=============================================== 

아무 문제가 없습니다.
이런 질문들이 많이 있습니다.

기본적인 개념을 알아두시는 것이 좋을 것 같아서 말씀을 드리죠.
익스플로러에서 버전이 있지요. 6.0 7.0 8.0 등등
보통 버전이 높은 버전들은 하위버전에서 사용했던 기능을 모두 사용하게 됩니다.

응용 프로그램(application) 들은 운영체제와 매치를 시킬때..
운영체제의 비트 수와 응용프로그램의 비트 수를 맞추면 됩니다.
32비트 면 32비트 운영체제..
64비트 면 64비트 운영체제에서 설치를 해서 사용하면 제대로 돌아가지요..

64비트에서도 32비트 프로그램은 잘 돌아갑니다. 16비트 프로그램은 제외 하구요...
과거 윈도우95나 98에서 16비트 프로그램들을 많이 사용했던 사용자는 잘 알 겁니다. 




아래 그림은 64비트 윈도우에서 32비트 프로그램들을 어떻게 실행시키는지 보여주는 그림입니다.



그림은 보면 왼쪽은
64비트 윈도우에서 64비트 프로그램을 사용할 때 모습입니다.
일반적인 윈도우의 프로그램 수행 모습과 같습니다.


오른쪽은 32비트 프로그램을 실행할 때 모습인데..

64비트 윈도우7을 부팅시키면

wow64.dll 파일이 32비트때 사용되는 ntdll.dll 불러오고,
32비트에서 필요한 dll 파일이나 코드를 불러오게 됩니다.


64비트의 윈도우에서 32비트 프로그램들은 서로 다른 시스템과 program file 폴더, 레지스트 영역을 사용합니다.

32비트 프로그램들이 있는 폴더
c:\program file(x86)\
c:\windows\syswow64\

레지스트리
HKEY_LOCAL_MACHINE\SOFTWARE  -> HKEY_LOCAL_MACHINE\SOFTWARE\6432Node
HKEY_CURRENT_USER\Software   -> HKEY_CURRENT_USER\Software\6432Node



32비트 프로그램을 모두 사용할 수 있을 까 ?

대답은 No 입니다.
위 그림을 잘 보면 하단에 Kernel Mode 하고 User Mode 라는것이 있습니다.

주로 디바이스 즉 주변장치 드라이버들이 사용하는 영역이 커널의 영역입니다.
user 모드는 일반 사용자의 프로그램 사용 영역이라고 생각을 하세요

그림에서 보듯이 32비트 프로그램들은 직접 64비트 윈도우7의 커널 영역과 붙을 수 없습니다.
직접 64비트 윈도우의 커널 영역을 엑세스 한다면 블루스크린이나 윈도우가 먹통이 될 겁니다.
32비트와 64비트가 다루는 메모리 영역이 다르기 때문입니다.

결론적으로 32비트 프로그램을 대부분 돌릴 수는 있으나..
바이러스 프로그램들...
음악만드는 프로그램이나 그래픽, 동영상편집 같은 32비트 프로그램은
32비트 윈도우에서 사용하고 64비트는 64비트 윈도우에서 사용하세요

그 외 

가끔 엑셀데이타 파일가지고 32비트와 64비트 운영체제로 걱정하는 분들이 있는데..
데이타 파일은 응용프로그램에 귀속되어 있지.. 운영체제와는 거의 상관이 없습니다.
응용프로그램 만 있으면 운영체제하고는 문제가 안됩니다.

우선적으로 사용할 때
윈도우7에 있는 xp 모드를 적절하게 잘 사용하고..
32 와 64비트 윈도우를
멀티부팅을 이용해서 왔다갔다 하는 것도 좋은 방법이 되겠네요