Windows Vista를 사용하는 분들 중 많은 분들이 비스타에 대해 맘에 안들어하는 부분으로 XP에 비해 참을 수 없을정도로 잦은 하드 액세싱을 꼽습니다. 운이 좋게(?) 조용한 하드디스크를 장착했다면 이에 대한 스트레스를 덜 받겠지만, 그렇지 못할 경우 하드액세싱에 의한 소음은 꽤 성가시며 특히 본체를 가까이 놓고 쓰는 노트북의 경우엔 이것이 노트북 자체를 바꾸게 하는 요인이 될 정도입니다.

대개 비스타의 이런 잦은 하드액세싱에 대한 원인으로 인덱싱 기능과 슈퍼펫칭 기능을 꼽더군요. 그리고 시간이 지나면 조용해진다는 말과 함께 말이죠.

하지만 제 경험으론 이게 딱히 시간이 지난다고 획기적으로 나아지지는 않았습니다. 1.5TB가 넘는 하드디스크를 쓰지만 인덱싱 작업이야 정말 넉넉잡아 윈도우 설치후 하루면 충분하며, 사용자의 사용습관을 토대로 캐시작업을 한다는 슈퍼펫칭 역시 제가 쓰는 어플리케이션이 대단히 한정된 관계로 금방 끝났습니다. 그럼에도 불구하고 하드 LED의 불은 계속 깜박깜박 들어오지요.

메모리가 문제인가? 그것도 아닙니다. XP까지의 Windows는 메모리를 늘리면 가상메모리를 사용하지 않기 때문에 하드액세싱이 비약적으로 줄어들었지만, 비스타의 경우는 8기가까지 메모리를 확장해도 그다지 하드액세싱이 줄어들지 않더군요. (오히려 슈퍼펫치의 캐시용량이 늘어나는 관계로 부팅후 하드액세싱은 더 많아진 느낌입니다.)

SSD

☞ SSD가 답인가? 일단 조용하잖습니까?


이럴땐 검색이 최고입니다. Windows를 사용하면서 느낀건데, 사용자가 많아서 그런지 제가 문제라고 여기는 부분은 이미 전세계 누군가가 예전에 문제제기한 상태이며, 대개 패치도 이미 나온 상태이더군요. 하지만 귀차니즘 덕분에 MS 사이트 검색이나 구글링을 하지 않고, 그냥 Wikipedia로 타협봤습니다.. :D

대개 Windows VIsta의 불편함이라는게 치명적인 버그라기보다는 새로 넣은 기능에 의해 발생되는게 대부분이라 경험했기때문이지요. 그래서 Windows Vista의 기술 항목(Technical features of Windows Vista)을 훑어보니 왠지 관련이 있을듯한 구절이 눈에 띄었습니다.

Data Redirection: Also known as data virtualization, this virtualizes the registry and certain parts of the file system for applications running in the protected user context if User Account Control is turned on, enabling legacy applications to run in non-administrator accounts. It automatically creates private copies of files that an application can use when it does not have permission to access the original files. This facilitates stronger file security and helps applications not written with the least user access principle in mind to run under stronger restrictions. Registry virtualization isolates write operations that have a global impact to a per-user location. Reads and writes in the HKLM\Software section of the Registry by user-mode applications while running as a standard user, as well as to folders such as "Program Files", are "redirected" to the user's profile. The process of reading and writing on the profile data and not on the application-intended location is completely transparent to the application.

Data Redirection: 데이터 가상화로도 알려졌는데, 이것은 UAC가 켜져 있을때 어플리케이션이 보호 유저 모드에서 돌아가게 하기 위해 파일 시스템의 일부와 레지스트리를 가상화시킴으로써, 구형 어플리케이션이 비관리자 계정에서 돌아가도록 한다.  이것은 자동으로 어플리케이션이 원래 파일에 대한 액세스 허가를 얻지 못할때 어플리케이션이 사용할수 있는 사본 파일을 자동으로 만들어낸다. 이것은 파일의 보안성을 도우며, ... (후략) 


대개 비스타 이후부터는 드라이버부터 어플리케이션까지 유저모드에서 작동을 추천하지만, XP까지는 거의 모두 관리자 모드에서 돌아가도록 디자인되었던것으로 알고 있습니다. 대략 비스타에서는 이렇게 만들어진 어플리케이션들에 대해 커널 수준에서 보안성을 획득하기 위해 가상 사본을 만들어낸다는 말인것 같은데, 이것으로써 인덱싱, 슈퍼페치로도 설명할 수 없는 하드 액세싱이 일어나는게 아닐까 싶네요.

이게 해결되려면 빨리 비스타에 최적화된 프로그램들이 개발되는걸 기다리는수밖에 없지 않을까 싶습니다. 적어도 비스타를 고려한 프로그램이라면 당연히 유저모드에서만 작동할 것이고, 이러면 굳이 보안을 위해 파일이나 레지스트리 사본을 만들어낼 이유가 없으니깐요.

P.S. 솔직히 비스타를 보고 있으면 처음에 NT커널이나 Windows라는것의 컨셉을 잘못잡은것을 무지하게 고생하면서 땜빵하고 있다는 느낌이 듭니다. 아예 처음부터 유저모드로만 작동하고 레지스트리가 없었다면 저런 뻘짓(?)이 애초부터 필요 없었겠지만, 이미 저질러놓은거 이제야 바로잡기 위해 많은 부분을 바꿨고 - 또한 구형 어플리케이션과의 호환성을 확보하기 위해 생각지도 못한 저런 방법을 쓸 정도니깐요.

뭐 엔드유저 입장에서야 왜 이런게 필요하냐라고 불평할수도 있지만 그렇다고 필요성이 없다고 못보는게, 그간 정체를 알수 없는 프로그램에 의해 윈도우 파일이나 타 어플리케이션이 손상되어 작동불능되는 일이 적어도 비스타에선 저것을 통해 상당부분 막아진다는 의의도 있지 않나 싶네요.

Posted by MaanMaan
,