Vista에서 DEP 기능을 아예 안쓰는 방법

윈도우 비스타에서는 기본적으로 DEP(Data Execution Prevention) 기능을 무조건 써야 한다. 조절할 수 있는 옵션은 주요 프로그램에 DEP를 사용하던가 아니면 전부 DEP 사용하고 일부 프로그램만 등록해서 사용하지 않도록 하는 것이다. DEP 기능은 소프트웨어적으로 구현이 되어 있어서 최근 CPU들이 지원하는 하드웨어적인 바이러스 보호기능이 있던 없던 상관없이 동작한다.

그런데 이 DEP 기능이 다음과 같은 증상이 자주 있을 때에 좀 없었으면 하는 생각이 든다.

- 멀쩡하게 잘 동작하던 프로그램이 가끔씩 오류를 일으키고 실행이 안될 때
- 윈도우 탐색기나 인터넷 익스플로러가 이 DEP 때문에 실행이 안될 때
- 좀 오래된 프로그램이 계속 이런 오류를 일으킬 때


만약 이런 상황이 계속된다면, 좀 뛰어난 백신(Kaspersky나 NOD32 등)을 사용한다는 전제하에 다음의 방법으로 아예 DEP 기능을 불능상태로 만들 수 있다.

UAC(User Access Control)을 사용하지 않는 경우엔 그냥 "cmd.exe"를 실행시키고, 만약 UAC를 사용하고 있다면, 윈도우 시작 메뉴에서 "cmd"만 치고(엔터는 치지 않는다) 좀 기다리면 위 쪽에 cmd가 검색되어 나타날 것이다. 여기에 마우스를 옮기고 우클릭하여 방패모양 아이콘이 있는 "관리자로 실행"(Run As Administrator)을 클릭하여 실행한다. cmd 창에서 다음 명령어를 수행하고 시스템을 리부팅하면 DEP가 완전히 불능상태로 된다.

bcdedit.exe /set {current} nx AlwaysOff


만약 다시 DEP 기능을 활성화하려면 역시 다음 명령어를 사용하고 재가동하면 된다.

bcdedit.exe /set {current} nx AlwaysOn


가능하면 제대로된 백신이 가동중인 상태에서 DEP 기능을 끄기를 바란다.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 다꺼

2007/08/02 09:45 2007/08/02 09:45
, , ,
Response
138 Trackbacks , 4 Comments
RSS :
http://9nang.net/rss/response/186

윈도우 비스타 레디부스트(ReadyBoost) 과연 빠른가??

이제 윈도우 비스타를 쓴 지도 꽤 되었다. 비스타가 지원하는 여러가지 새로운 기능 중에 레디부스트(ReadyBoost)라는 기능이 있다. 이것이 무엇을 하는 것인가 하면 USB나 SD 카드의 메모리를 캐시(cache)로 활용해서 시스템의 성능을 올려 준다는 것이다. 그리고 몇몇 사이트에서 벤치마크한 것을 보면 약간의 성능 향상은 보여주는 듯 하다. 그래서 SD 카드로 ReadyBoost 기능을 켜놓고 쓰고 있다. 그러나 최근 내가 내린 결론은 하루 종일 컴퓨터를 많이 쓰는 환경에선 ReadyBoost가 오히려 시스템을 느려지게 할 수도 있다는 것이다.

본인은 욕심(?)이 많아서 컴터에 프로그램을 많이 설치하는 편이고, 한꺼번에 많은 프로그램들을 사용하는 편이다. 이렇게 몇 시간씩 사용하다 보면 컴터가 아주 느려진다. 몇 번은 무시하거나 리부팅하면서 쓰다가 해결했으나 한 번은 그 원인을 알아보려고 컴터가 느려졌을 때 작업관리자와 리소스 모니터를 살펴보게 되었다. 이 때 화면이 바로 아래 화면이다.


보면 알겠지만, System 프로세스가 전체 CPU의 절반 이상을 사용하고 있고, 디스크 부분에선 H:\ReadyBoost.sfcache라는 파일이 분당 189,809,100 바이트 쓰고 있고, 응답시간이 무려 247 ms라고 나온다. (이 응답시간은 일반적인 하드디스크 보다 수십배에서 수백배 느린 수치이다.) 이 값을 본 순간 시스템을 느리게 하는 주범이 바로 ReadyBoost 파일이라는 생각이 들었다. 한꺼번에 많은 프로그램이 수행 중이므로 많은 메모리의 내용을 ReadyBoost 파일에 캐시로 저장하려 할 것이나 이것의 응답시간이 느려서 시스템이 전체적으로 늦어지는 현상이 발생하는 것이란 생각이 들었다. 그래서 바로 ReadyBoost 기능을 꺼 버렸다. 그리고 그 이후로 컴터를 몇 시간 사용하면 시스템이 느려지고 System 프로세스가 과도하게 사용되는 증상은 아직 발견되지 않았다.
ReadyBoost 기능을 켜고 단 하나의 프로그램을 테스트하는 것으로 시스템 성능을 향상시킬 수 있을지 모르지만, 본인처럼 여러 프로그램을 뛰워 놓고 오랬동안 사용하는 환경에선 오히려 ReadyBoost로 사용하는 외장 메모리의 속도에 병목현상이 발생해서 역효과가 나타날 수 있을 듯 하다. 혹 겁나게 빠른 외장 메모리를 사용하면 좀 나아질런지 모르겠지만 아직 그런 제품은 없는 듯 하다.

나처럼 컴터를 혹사시키면서 사용하는 사람들은 ReadyBoost 기능을 쓰지 말라고 권하고 싶다.

PS. 근데 SD 메모리 제거해서 한동안 괜찮더니 다시 위와 비슷한 증상이... 흠 뭘 또 더 해야 하나...
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 다꺼

2007/06/01 06:15 2007/06/01 06:15
, , ,
Response
357 Trackbacks , 13 Comments
RSS :
http://9nang.net/rss/response/183

Vista에서 Bluetooth 장치가 제대로 동작하지 않을 때

비스타를 사용한지는 꽤 되었지만, 최근에서야 Bluetooth 사용에 문제가 있음을 알게 되었다. 문제의 요지는 비스타에서는 기본적으로 키보드/마우스를 제외하고는 다른 bluetooth 장비에 대한 지원을 하지 않는 다는 것이다. 다른 장비(예를 들자면 가장 흔한 헤드셋)를 연결하면 자꾸 드라이버를 찾고 설치하라고 나온다.
Bluetooth라는 것이 원래 무선 통신이고 주변 장치는 미리 정해진 profile(장치의 기능)에 따른 통신만 수행하면 되므로 따로 디바이스 드라이버가 필요하지는 않다.

인터넷을 뒤져 보니 적어도 베타 버전까지는 문제가 없었는데, RC2 이후 정식버전까지 블루투스에 문제가 있음을 알게 되었다. XP에서는 거의 문제없이 쓸 수 있는 Bluetooth 주변장치가 최신 OS인 Vista에서 동작하지 않는 이상한 일이 발생하는 것이다.

이것의 원인은 디바이스 드라이버가 아니라 Bluetooth가 주변 장치와 통신하기 위한 다양한 기능들을 미리 정의한 profile을 Microsoft가 Vista 정식 버전에서 키보드/마우스만 제외하고는 전부 제거해 버린 것이다. 무슨 이유인진 알 수 없으나 MS가 또 이상한 짓거리를 한 것이다.

그래서 Vista에서 이 기능들을 제대로 쓰려면 각 Bluetooth 업체가 제공하는 최신의 Bluetooth Stack을 설치해야 한다. 현재까지 알아본 바로는 Vista에서 이런 것이 추가로 제공되는 것은 도시바와 HP 노트북이다. 혹 도시바와 HP 노트북 사용자는 아래의 URL로 가서 프로그램을 다운로드 받고 설치하면 헤드셋과 다른 Bluetooth 장치를 Vista에서 다시 사용할 수 있게 될 것이다. 내 HP 노트북(nc6220)도 다행히 아래 프로그램을 사용해서 헤드셋을 쓸 수 있게 되었다. 그러나 모든 모델들이 지원되지는 않을 수도 있으니 사전에 자신의 노트북 모델이 제대로 지원되는지 충분히 확인하고 설치하거나, 아니면 스스로의 책임하에 나처럼 일단 함 저질러 보기 바란다. 되면 좋고, 안되면 어차피 안되든 것이니 어쩔 수 없고~~~

도시바 노트북
http://aps.toshiba-tro.de/bluetooth/pages/download.php

HP 노트북
http://h10025.www1.hp.com/ewfrf/wc/sof ··· ang%3Den

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 다꺼

2007/05/04 14:05 2007/05/04 14:05
, , , , ,
Response
134 Trackbacks , No Comment
RSS :
http://9nang.net/rss/response/178

Vista에서 Internal Error 2739 가 생길 때

Windows Vista에서 몇몇 프로그램을 설치할 때에 "Internal Error 2739"라는 친절한(?) 메세지와 함께 설치가 진행되지 않는 경우가 있다면 아래의 조치를 따라 하면 된다. 이것은 Vista에서 JavaScript가 제대로 등록되어 있지 않아서 발생하는 문제이다.

Vista (32-bit 버전)
Vista 설치 디렉토리의 system32로 간다. 보통의 경우엔 cmd.exe를 실행한 다음에 "cd C:\Windows\System32"로 이동한다. 그리고 그 디렉토리에서 다음의 명령어를 실행한다.

regsvr32 jscript.dll

Vista (64-bit 버전)
Vista 설치 디렉토리의 syswow64로 간다. 보통의 경우엔 cmd.exe를 실행한 다음에 "cd C:\Windows\SysWow64"로 이동한다. 그리고 그 디렉토리에서 다음의 명령어를 실행한다.

regsvr32 jscript.dll

만약 수행에 오류가 생긴다면 cmd.exe를 관리자 권한으로 실행(Run As Administrator)한 다음에 위의 과정을 실행하면 된다.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 다꺼

2007/05/01 17:09 2007/05/01 17:09
, , , ,
Response
149 Trackbacks , No Comment
RSS :
http://9nang.net/rss/response/177

"A disk read error occurred" 가 나타나는 문제

노트북을 정상적으로 쓰다가 종료를 했는데 다음 번에 부팅하면 "A disk read error occurred. Press Ctrl+Alt+Del to restart." 라는 문구를 두 번씩이나 경험했다. 한번은 Windows XP(SP2)에서 한번은 Windows Vista에서... 처음에 네이버에서 찾아보면 대부분 그 대답이 그 대답이고, 보통 실제 하드웨어적인 오류라는 글이 대부분이다. 제일 처음 이 문제에 봉착했을 때에는 그런 줄 알고 직접 HDD 제조사의 diagnostic tool을 이용해서 검사해 보기도 했으나, 아무 문제가 없었다. 그리고 그 디스크를 다른 PC에 물리면 아무 문제없이 정상적으로 읽고 쓸 수 있다. CHKDSK, 파티션 점검 등 모든 것이 이상이 없다. 다만 부팅디스크로 해서 하면 부팅이 안되는 것이 문제였다.

이 문제로 구글과 심각하게 며칠을 토론한 후에야 한가지 가능성을 찾아 내었다. 아무리 봐도 하드웨어 적인 오류인 것 같지는 않고... 그렇게 찾다가 MS 사이트에서 힌트를 얻었다. 아마 NTFS 파티션의 boot sector 내지는 파티션 테이블이 손상되었을 가능성이다.
http://support.microsoft.com/kb/153973 이 사이트에 가면 좀 고급 정보를 얻을 수 있다. 그러나 여기서 얻은 방법대로는 제대로 boot sector를 찾아내기가 힘들었다.

그래서 또다시 구글과 대화를 하다가 TestDisk 라는 툴을 알게 되었다.(
http://www.cgsecurity.org/wiki/TestDisk) 이 툴은 친절하게도 boot sector의 위치를 자동으로 찾아서 NTFS의 경우 두 개의 boot sector가 일치하는 지 확인해서 일치하지 않으면 정상적인 boot sector를 손상된 boot sector로 복사하는 기능을 제공해 준다. 어렵게 DOS로 부팅해서 손상된 디스크를 검사해 보려 하자 이제 DOS에서 LBA28의 한계인 128GB를 초과하는 디스크에 대해서는 제대로 진행되지 않는 것이었다. 그래서 LBA48을 지원하는 OS에서 돌아가게 만드려다 CD로 Windows 를 부팅하고 사용하게 만드는 툴인 BartPE(http://www.nu2.nu/pebuilder/)를 알게 되었다. 이것을 이용해서 CD로 Windows XP를 구동해서 TestDisk를 수행한 결과 두 개의 boot sector에는 이상이 없음을 알게 되었다.

이제 짱구를 마구 굴리는 순간이 왔다. 1년 가까이 쓰던 노트북에 이런 증상이 발견된 시기는 노트북의 디스크를 160GB로 바꾼 이후였다. 그래서 얼핏 하나의 생각이 스쳐지나갔다. 아무리 모두 개선되었다고 할지라도 BIOS나 OS의 어떤 부분은 여전히 128GB이상의 디스크를 Windows 시동디스크로 쓰는 것에 대한 대비가 안되어 있을 지도 모른다는 생각이 들었다. 그래서 파티션 resizing tool(예전엔 Partition Magic 뿐이었지만, 이제는 상용에서 공개툴까지 아주 다양하고 많은 툴들이 있다)을 이용해서 디스크를 128GB 이하로 줄인 다음에 부팅해 보았다.

아하 부팅이 되었다. 그냥 BIOS 화면 지나자 마자 "A disk read error occurred"라고 나타나던 놈이 일단 부팅을 한다. 엄청난 발전을 한 것이다. 여전히 윈도우 시작은 제대로 되지 않았으나 이것은 OS 설치 미디어의 recovery로 간단히 해결되었다. 그리고 그 후에 다시 디스크를 원래 크기인 160GB로 재수정하여 문제없이 쓰게 되었다.

그래서 내린 결론은 다음과 같다.
Windows 시동(부팅) 파티션의 크기가 128GB이상이고 정상적인 종료 후 재가동하면서 "A disk read error occurred. Press Ctrl+Alt+Del to restart." 라는 오류가 나고, 실제 디스크를 검사하면 아무런 H/W적인 S/W적인 오류가 없는 경우 다음의 과정을 생각해 볼 수 있다.

1. 일단 시스템의 BIOS를 최신 버전으로 업데이트한다. 이것은 혹시나 있을 BIOS 상의 문제점을 없애기 위함이다.
2. 위에서 언급한 TestDisk나 기타 tool을 이용해서 boot sector에 이상이 없는지 확인한다.
3. 2번에서 이상이 없으면 partition resizing tool을 이용해서 시동(부팅) 파티션의 크기를 128GB이하로 줄여서 부팅하고 복구한 다음에 파티션 크기를 원상복구한다.


참고로 이번일을 겪으면서 알게된 사이트 중 하나가 Ultimate Boot CD (http://www.ultimatebootcd.com/) 사이트로, 컴터로 문제가 생겼을 경우 이 CD 하나로 거의 모든 문제를 해결할 수 있게 해주는 아주 유용한, 없는게 없는 모든 util의 종합선물세트를 한 장의 CD 이미지로 제공해 준다. 이런 문제를 자주 겪거나 서비스를 제공하는 사람들은 한번 쯤은 살펴보고 활용을 생각해 봄 직하다.

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 다꺼

2007/03/28 23:56 2007/03/28 23:56

플리커에 올려진 사진으로 블로그 작성하기

최근에 플리커 서비스를 사용하기 시작했다. 이 잘 나가는 서비스를 따라잡으려고 구글이 피카사웹 서비스를 하고 있지만, 아직 플리커가 여러 면으로 편한것 같다. 특히나 올려진 사잔에 대한 단일한 참조 URL을 사용할 수 있다는 점은 아주 편한 점인것 같다.
사진의 트래픽을 다른 곳으로 유도하고 시스템상으로 백업이 지원되는 곳에 저장해서 쓴다는 의미로 새로운 블로그들은 플리커에 올린 사진들을 참조해서 쓰기 시작했다. 내가 이미지에 대해서 Lightbox 플러그인을 쓰는 관계로 그림을 참조할 때마다 기존의 포맷을 참고해서 수정해야 한다. 예를 들면 편집할 때 마다 아래와 같은 문구를 복사해서 사용하고 있다.

<div class="imageblock center" style="text-align: center; clear: both"><a href="http://static.flickr.com/ooooooo.jpg" rel="lightbox" target="_blank"><img src="http://static.flickr.com/ooooooo.jpg" alt="치간칫솔" style="cursor: pointer" title="치간칫솔" border="0" height="250" width="500"/></a><p class="cap1" style="margin-top: 8px">치간칫솔 생긴 모양</p><p class="cap1" style="margin-top: 8px; text-align: left"></p><p class="cap1" style="margin-top: 8px; text-align: left"></p></div>

시간을 내어서 편집창에서 위의 것을 편하게 조작할 것을 만들었으면 한다. 그런데 잘 할 수 있으려나?
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 다꺼

2006/09/24 21:22 2006/09/24 21:22
, , , ,
Response
171 Trackbacks , 2 Comments
RSS :
http://9nang.net/rss/response/143