1. 개요
computer system optimizer컴퓨터나 스마트폰의 시스템 성능 향상을 위해 최적화 작업을 수행하는 유틸리티 소프트웨어이다. 클린업 소프트웨어(cleanup software) 혹은 클리너(cleaner)라고도 지칭한다. 백신 프로그램이 이 기능을 탑재하기도 한다.
PC 클린업 프로그램들과 달리 스마트폰 클리너 앱들 중엔 실질적인 클린업 기능은 별로인데 허위 백신 프로그램과 마찬가지로 '최적화해 주는 척' 보이는 앱들이 많으니 주의해야 한다.[1] 구별법은 캐시 클리너를 돌려보고 캐시가 지워졌는지, 용량이 늘어났는지 확인해 보는 것. C클리너 앱처럼 대표적으로 최적화 시 캐시를 진짜 잡아내는 클리너 앱은 캐시 소거 기능을 사용해 보고 나면 정확히 숨은 캐시들을 잡아내 지우기 때문에 폰의 용량이 (캐시가 지워진 만큼) 늘어난다. 반대로 최적화시키는 흉내만 내고 기능이 없는 앱들은 캐시 소거 기능을 써도 실질적으로는 캐시가 극소량만 지워지거나 캐시가 전혀 지워져 있지 않는 경우가 많다.
또한 오래된 최적화 프로그램이나 옛날에 만들어진 최적화 팁은 오히려 최신 운영 체계를 더 느리고 불안정하게 만들 수 있으므로 주의해야 한다.
2. 기능
- 레지스트리 정리
- 휴지통 비움
- 페이징 파일 삭제
- 시작 프로그램 및 RAM 관리
- 복구 파티션 삭제
- 불필요한 파일 정리/ 빈 폴더 제거
- Active X 제거 / 툴바 제거
- 빈 공간 보안 삭제
- 임시 파일 삭제
3. 대표적인 프로그램
- Windows 디스크 정리
Microsoft Windows 내장 프로그램. 평소에는 별로 쓸 일이 없지만 Windows.old 파일을 제거하는 데에는 매우 효과적이다. 그 외에 Windows 업데이트 관련 파일을 압축하는 기능도 제공한다. 문제는 윈도우에 1GB를 넘는 업데이트가 됐을 때 구버전을 지우는 속도가 엄청나게 느리다는 것. 참고로 설치한 윈도우 파티션이 단일 파티션[2]일 경우 오래된 파일 압축은 필히 체크 해제할 것. 체크된 상태로 디스크 정리를 실행할 경우 BOOTMGR이 압축되었다며 부팅되지 않는다.
- EzClean(이지클린) 홈페이지
한국산 최적화 무료 프로그램. 윈도우 최적화, 레지스트리 정리, 은행 보안 앱 삭제, 악성코드 검사 , CPU GPU 온도 체크 등 최적화 외에도 많은 기능이 제공된다. 프로그램 개발자가 업데이트도 비교적 자주 하는 편이다. - 구라제거기
인터넷 뱅킹 보안 프로그램들을 지워준다[3]
- 삼성 디바이스 케어
삼성 노트북에 기본적으로 설치되어 있으며 삼성 노트북이 아니더라도 설치될 때가 있다. 다만 다른 프로그램에 비해서 최적화 성능이 뛰어나진 않다.
- CCleaner
가장 인기 있고 기능이 많은 프로그램이다. 파일 소거 기능도 제공한다. 깨끗하게 치운답시고 레지스트리까지 건드리는데, 윈도우 대규모 업데이트 시 레지스트리 구조가 바뀐 걸 반영하지 않은 채로 그냥 덮어써서 가끔 부팅이 안 되는 경우가 있으니 조심할 필요가 있다. 5.33 버전에서 해커가 CCleaner 다운로드 서버의 파일을 바꿔치기해서 악성코드가 전 세계에 배포된 적이 있으니, 해당 버전을 사용하고 있다면 반드시 삭제 후 재설치해야 한다. 2019년 10월 후반 이후엔 C클리너 돌린 후 크롬 먹통 현상이 발생하고 있다. 결국 윈도우 디펜더에서 잠재적으로 사용자가 원하지 않는 프로그램'(PUA)으로 진단되는 지경에 이르렀다. MS 정책상, 특히 윈도우 10 출시 이후로는 3자 레지스트리 정리 기능을 절대 비추하기 때문#. 어차피 윈도우 8부터는 자동 유지 관리에서 레지스트리 임싯값 정리 및 DB 물리 구조 조각 모음도 하고 있기 때문에, Windows 디스크 정리와 자동 유지 관리에서 커버하지 않는 프로그램들의 임시 파일 정리에만 쓰는 게 좋다. 또 가급적이면 공식 권장 다운로드 경로 말고 여기에서 포터블 버전을 받아서 쓰는 게 좋다[4]. 최신 버전들은 "무료 버전을 사용하면 꼭 필요한 이런저런 서비스는 안 됩니다."라며 유료화를 독촉한다. 때문에 아래 후술할 BleachBit을 대안으로 사용하는 사용자들도 꽤 있을 정도로 평판이 나쁜 편이다.
- BleachBit(블리치비트) 홈페이지
오픈소스이자 무료 프로그램으로, Linux도 공식 지원하는 크로스 플랫폼 프로그램이다. 위의 CCleaner의 대용으로도 사용 가능하며, 오픈 소스 라이선스가 적용되어 있기 때문에 개인용으로든 기업, 관공서용으로든 관계없이 무료로 사용 가능하다. 캐시와 쿠키, 임시 파일 등을 청소해서 하드 디스크의 빈 공간을 늘려준다. 파일 소거 기능도 있는데, 2016년 힐러리 클린턴의 이메일 스캔들 때 힐러리 측 직원이 문제의 이메일들을 이 프로그램으로 소거시킨 것이 알려졌다.#
- 고클린
한때 한국산 최적화 프로그램으로 쉬운 사용 방법으로 인해 컴퓨터를 잘 다룰 줄 모르는 사람들이 많이 찾는 프로그램이다.
하지만 현재로써는 무쓸모인 최적화 기능과[5] 많은 광고, 결정적으로 프로그램 업데이트가 2020년 9월부로 중단되면서 사용자가 많이 줄어들고 있다. 다만 문의 시 피드 답변은 빠르게 해주고 있다.
- Chris Tetus Tech's The Ultimate Windows Utilities 공식 홈페이지
WinGet을 통해 Microsoft Windows에 기본 설치된 필요 없는 앱들을 삭제하고 Firefox, Discord 등 원하는 앱을 설치하거나, 개인정보 보호 최적화를 하거나, 컴퓨터에 문제가 생겼을때 사용하는 도구들을 탑재한 Windows계의 스위스 아미 나이프. 커스터마이징 기능이 많이 탑재되어 Windows 10부터 블로트웨어 탑재에 지친 사용자들을 위한 최적의 도구이다. 다만 설정을 잘못 만지면 문제가 생길 수 있으니 유의.
- Bulk Crap Uninstaller (BCUninstaller) 공식 홈페이지
오픈 소스이자 무료 프로그램. Windows 환경에서 기본적으로 제어판을 통해 일부 소프트웨어를 삭제할 경우 아주 운이 나쁠 경우 찌꺼기가 남거나[6] 아예 삭제 프로그램이 실행되지 않는 경우가 종종 있는데, 이 프로그램을 통해 삭제할 경우 기존 방식을 통해 제거되지 않는 프로그램을 삭제해주거나 눈에 보이지 않는 찌꺼기들을 모두 삭제해준다. 레지스트리도 물론 삭제가 가능한데, 잠재적으로 문제가 될수 있는 레지스트리를 제외한 삭제해도 무방한 레지스트리만 표시되므로 시스템이 손상될 걱정없이 삭제할 수 있다. 위 구라제거기의 대용으로도 사용이 가능하다.
3.1. Windows 자동 유지 관리 (Windows 8 이상에서는 최우선 권장)
Windows 8부터 등장한 내장 기능으로 컴퓨터가 유휴 상태일 때 알아서 이것저것 최적화를 수행하도록 통합 정리한 기능이며, OS 자체 내장 최적화 프로그램으로 볼 수도 있다.참고로 자동 유지 관리는 가끔씩 수동으로 돌려주면 더 좋다. 시작 메뉴에 간단하게 '유지' 두 글자 입력하면 검색 기능으로 제어판의 '보안 및 유지 관리'가 맨 위에 뜨는데, 여기서 '유지 관리'를 열어서 자동 유지 관리의 '유지 관리 시작'를 눌러주면 된다.
- 유휴 상태일 때 시작되는 자동 유지 관리는 시간이 오래 걸리는 것들은 최대한 건드리지 않고 가능한 간략하게만 진행되며 이때 사용자의 작업을 방해하지 않도록 마우스나 키보드를 살짝이라도 건드리면 즉시 중단되기 때문이다. 유휴 상태로 한참을 자주 방치하는 경우가 아니라면 시스템을 장시간 켜둘 일이 생겼을 때 돌려주면 된다. 다만 컴퓨터의 성능이 중요한 작업을 할 때는 돌리지 않는 게 좋다.
수동으로 실행하면 마우스나 키보드를 건드렸다고 자동으로 멈추지도 않고 유지 보수 작업 중에 CPU와 스토리지를 많이 점유할 때가 있어서 작업이 버벅거릴 수도 있기 때문이다. 수동으로 동작 중인 유지 관리를 정지시키려면, 제어판의 보안 및 유지 관리에서 정지시키면 된다.
자동 유지 관리 끄기를 최적화 방법으로 설명하는 잘못된 정보가 많다. 이 자동 유지 관리는 일반적인 방법으로는 접근할 수 없는 Windows의 특수한 데이터들을 정리하는 것이 기본적인 역할로 자동 유지 관리는 Windows가 버벅이지 않게 방지하는 매우 중요한 기능이므로 건드리지 않는 것이 좋다. 윈도우 자체의 컴포넌트들을 점검하여 버그 방지에도 큰 기여를 한다.
다만 유저가 스스로 데이터들을 정리하는 습관이 있다면 자동 관리를 굳이 사용할 이유가 없기에 시스템 자원을 아끼기 위해[7] 꺼두는 것이 최적화의 한 방법이 된다.
자동 유지 관리가 구체적으로 무엇을 하는지는 Microsoft가 공개하지 않고 업데이트 돌리고 바이러스 검사한다고 두루뭉술하게 둘러대는데 일단 자동 유지 관리는 Windows XP 시절에도 예약된 작업에 유휴 상태를 찾아 (밀린 작업까지 합쳐서) 예약 작업을 돌리도록 개선한 것이지만 기존의 작업 예약 기능과는 좀 다른 점이 많다.
자동 유지 관리는 기존의 작업 예약처럼 Windows와 서드파티 프로그램들이 작업을 예약해 놓되 예약 시간에 작업을 돌리는 방식 대신 유휴 시간에 작업을 돌리고 데드라인이 지정된 작업만 강제로 돌리는 시스템이지만 Microsoft가 일반인은커녕 IT 전문가도 해당 분야 전문이 아니면 모르는 Windows의 회색 영역들에 서드파티 프로그램들이 접근하는 방법을 Windows 10에 추가된 컴포넌트를 API로 써서 접근하는 것으로 통합시키고 있기 때문에 해당 작업들이 자동 유지 관리를 통해 이루어진다는 점에서 상당한 차이가 있다.
안티바이러스나 각종 유틸리티 프로그램들이 자동 유지 관리 기능을 통해 악성코드 검사나 각종 최적화 작업을 예약할 수 있긴하고 Windows 내장 기능 실행을 예약할 수도 있지만 실제로는 흔히 생각하는 "그 작업들"과는 좀 다른 일들이 주로 자동 유지 관리에 예약된다.[8][9]
자동 유지 관리가 동작할 때 리소스 모니터를 열어서 디스크 활동을 살펴보면 각종 특수 데이터들에 대한 읽기/쓰기 활동을 볼 수 있는데 이것에는 NTFS 비트맵 등 파일 시스템의 특수 영역, 시스템 API 데이터, 특수 로그 파일, 드라이버 관련 구성 요소 데이터 등 일반적인 방법으로는 접근할 수 없는 것들이 있다. 또한 서드파티 프로그램들의 로그 파일들 중 Windows 구성 요소를 이용해 하는 활동에 관한 로그들을 자동 유지 관리가 정리하기도 한다. 즉 뭔가 쌓여서 떡지기 좋은데 보안상 일반적인 접근을 허용하지 않는 영역이라 사제 프로그램으론 손볼 수 없는 것들을 유지, 보수해 주는 것이 자동 유지 관리의 진정한 역할이다. 간단히 말하자면 '(주로 회색 영역의) 최적화의 자동화'란 개념이다.
또한 유휴 상태일 때 시작되는 자동 유지 관리는 사용자의 작업을 방해하지 않도록 마우스나 키보드를 살짝이라도 건드리면 즉시 중단된다. 다만 데드라인이 지정된 작업 때문에 가끔 강제로 진행되는 경우도 있다. Windows 10 이후에도 자동 유지 관리가 유저 작업을 버벅거리게 한다는 경험담은 이것 때문이 나온 것. 현재 자동 유지 관리의 유일한 문제점[10]이라고 할 수 있다. 이에 대한 해결책은 바로 상술한 설명한 것처럼 가끔 수동으로 돌려주는 것이 가장 좋다. 그게 귀찮다면 컴퓨터를 수동으로 종료하지 말고 전원 옵션을 적당히 조절해서 60~90분 정도의 유휴 시간을 가진 후 자동으로 절전 모드로 들어가게 하면 해당 유휴 시간마다 자동 관리가 실행되어 필요한 작업이 있는지 살펴보게 되므로 강제 진행을 피할 수 있다.
4. Windows 10에서의 이슈
컴퓨터 및 IT 관련 인터넷 커뮤니티를 보면 Windows Vista나 Windows 7, 심지어는 Windows XP에서 Windows 10으로 바로 올라오는 사용자들이 유독 여러 가지 호환성 문제나 시스템 불안정성에 부딪히는 경우를 심심찮게 볼 수 있다. 이를 모두 단일한 사례로 일반화할 수는 없겠으나, 유독 컴퓨터를 잘 모르는 사람들보다도 어느 정도 안다는 사람들이 이런 문제에 봉착하는 경우를 심심찮게 볼 수 있다.
이러한 상황을 의심하던 해외 MS 및 윈도우 인터넷 커뮤니티에서 매우 유력한 이론을 하나 내놓았는데, Windows 8 이전 시절의 최적화 소프트웨어 및 트윅 방법들이 문제를 일으키고 있다는 것이다.(예시) 사실 심한 경우 윈도우 XP, 심지어 2000 시절에 이미 퇴물이 된 레지스트리 트윅을 지금도 적용하는 프로그램들이 은근히 많다. 오죽하면 "레지 아무 데나 veryveryfast=1이라고 추가한다고 해서 컴퓨터가 빨라지지 않는다"는 일침까지 나왔을 지경이다.[11] 과거 지금보다 훨씬 더 느리고 저장 공간도 작은 컴퓨터를 쓰던 시절, NT 커널 구버전의 부실한 RAM 관리 및 잉여 레지스트리가 문제를 일으키면서 윈도우 파워유저들은 시스템을 안정화하기 위해 수많은 방법을 사용했다. 그런데 이 시절에 컴퓨터를 좀 안다고 트릭을 배웠던 사람들이 이후 컴퓨터에 관심을 끊으면서 윈도우 10에 들어와서도 똑같은 방식으로 최적화 프로그램들을 사용하고 있다는 것이다.
사실 이 문제는 윈도우 비스타가 나올 때부터 지적되었던 문제로, 사용 환경이 XP→Vista에서 7/8/8.1→10으로 바뀐 것에 불과하다. 더구나 윈도우 10 특유의 '기능 업데이트' 때문에 10년 넘게 잘 사용한 것을 물론 불과 몇 달 전까지만 해도 수십 대의 윈도우 10에서 정상 작동을 확인한 최적화 프로그램이 오늘은 부팅 불능을 일으킬 수도 있다.(사례 1, 사례 2) 이 문제를 피하려면 가급적 기능 업데이트를 최대한(몇 달 정도) 늦게 설치하고, 시스템을 건드릴 만한 프로그램은 윈도우 10의 해당 버전을 지원하는지 확인하고 설치하는 습관을 들이는 것이 좋다.
각 최적화별로 불필요할 뿐만 아니라 위험할 수도 있는 이유는 다음과 같다.
- 페이징 파일 삭제(가상 메모리 비활성화)
워낙에 페이징 파일을 '당연한 상수'로 두고 짜는 프로그램이 많아져서 극단적인 경우 물리 메모리는 남는데 가상 메모리가 부족해서 시스템이 느려지는(.....) 경우를 당할 수도 있다.
Windows XP~Windows 7 시절의 컴퓨터는 지금보다 저장 공간이 훨씬 적었고, SSD와 같은 플래시 메모리 기반의 빠른 저장 장치도 없었다.[12] 그래서 Temporary Internet Files 폴더 등에 저장된 페이징 파일은 많은 사용자들에게 컴퓨터의 아까운 저장 공간을 잡아먹는 원수일 뿐이었고, 주기적으로 이들을 비워주어야 컴퓨터를 원활하게 사용할 수 있었다. 하지만 오늘날 컴퓨터의 저장 공간은 기하급수적으로 늘어났기 때문에 용량이 너무 커지지 않는 이상에야 로딩 속도를 줄여주는 페이징 파일을 그대로 남겨주는 쪽이 성능에 도움이 되며, 만일에 저장 공간에 비해 페이징 파일이 너무 크다고 해도 최대 크기를 줄이는 것이 더욱 바람직하다. 더욱이 페이징 파일을 지운다고 검색 인덱싱을 지우는 경우가 더럿 있는데, 인덱싱은 시스템 파일을 목록만 확인해서 검색할 수 있도록 해 검색 속도를 향상시켜 주는 유용한 기능일 뿐만 아니라 함부로 지웠다가는 저장 공간을 계속해서 긁게 되어 오히려 시스템의 성능을 급격히 저하시킨다. 메모리 용량이 충분히 크면 디스크만 긁어대는 페이징 파일을 없애는 것이 좋다고 잘못 알려진 경우가 많은데, RAM도 결국은 저장 장치이고 사용 과정에서 단편화가 발생한다. 하지만 RAM에서 바로 조각 모음을 할 수는 없기 때문에 안 쓰는 데이터를 우선적으로 디스크에 옮긴 다음 필요하면 다시 RAM에 올리는 식으로 단편화를 제거하는데, 페이징 파일을 없애면 이 작업을 할 수 없게 되어서 성능 저하가 발생한다. 따라서 RAM 용량이 32GB 이상이라도 페이징 파일은 '시스템이 관리하는 크기'로 두어야 한다. 최근 NVMe SSD나 UFS 처럼 빠른 보조 기억 장치들이 대중화되어 주 메모리와 보조 메모리 간 병목 현상이 크게 완화되어 가상 메모리를 더욱 적극적으로 활용함으로[13] 함부로 비활성화하거나 삭제하지 말아야 한다.
가상 메모리를 비활성화하는 경우 컴퓨터를 재부팅할 때마다 오류가 발생해 가상 메모리 설정을 초기화했다는 오류 메시지가 뜨는 경우도 있다. (실제로는 초기화되지 않는다.)
- 레지스트리 정리
언인스톨이 영 안 좋게 되어 컴퓨터에 남아있는 흔적들이 너저분해 보이고 영 불안해 보이니까 지우기 시작한 것인데, 득이 될 것은 없고 오히려 해가 될 가능성이 매우 높다. Windows 10에 들어와서 이전에 비해서 개발 진척도가 빨라지고, 새 패치나 새 버전이 나올 때마다 과거보다 훨씬 더 넓은 범위의 변화가 있을 수 있는데, 레지스트리 정리 프로그램이 그걸 다 따라잡는 것은 불가능하기 때문이다. 위의 예시에서도 언급된 CCleaner 역시 페이징 파일 및 레지스트리 정리 도구로서는 메이저 중의 메이저로, OS를 망가뜨리지 않는 안정성으로 명성이 높은데도 유독 레지스트리 정리 기능만큼은 정리가 잘못되어 컴퓨터에 문제를 일으킨다는 증언이 비일비재하다. 다른 레지스트리 정리 프로그램에 비해서는 안정적인 편인데도 저렇다는 것이다. 윈도우 XP 시절에는 실제로 불필요한 레지스트리로 인한 성능 저하 및 오류가 발생하였으나, 윈도우 비스타에서 커널 구조가 바뀌면서 이런 문제는 거의 사라졌다. 그러므로 레지스트리 정리는 굳이 하지 않는 것이 좋다.
- 시작 프로그램 및 RAM 관리
Windows 8 미만을 사용하다가 Windows 10 이상으로 업그레이드한 사람들이 가장 먼저 당황하는 부분인데, 메모리 사용량이 너무 많아서 최적화에 뭔가 문제가 있는 게 아니냐는 걱정이 많다. 결론부터 말하자면 Windows 10의 메모리 사용량 자체은 의도된 것이고 당연히 정상이다. 작업 관리자에서 '사용 가능'이라고 표기된 용량만 충분하면 신경 쓸 필요 없다. 메모리 최적화는 누수가 알려진 프로그램에 한해서 개별적으로 Trim을 적용하는 것으로 충분하다. 예를 들자면 파이어폭스의 예시를 들 수 있다.[14] - Windows ME까지는 기본적인 리소스 관리 능력이 엉망이라 사용자가 메모리를 정리하지 않으면 느려지거나 심하면 블루스크린이 뜰 수도 있었다. 정리 기술 자체도 없어서 허위로 물리 메모리 할당양을 최대한 요청하다 메모리 부족으로 할당이 불가능해지면 한꺼번에 반환하는 기법을 쓰던 시기[15].
- Windows XP부터 Windows NT 계열로 통일되어 기본적인 메모리 정리는 불필요해졌지만, 하드한 작업 시 캐시[16] 관리 능력에 한계를 보였고 알만한 사람은 최고로 친 최적화 프로그램이 O&O CleverCache였다.
- Windows 8부터는 위 얘기 모두 옛말이 되었고 O&O CleverCache도 윈도우 7 지원 업데이트가 마지막 버전이다. 다만, 이와 별개로 Windows 10의 악명 높은 기능 업데이트에서 버그 문제가 터져 Intelligent standby list cleaner (ISLC)가 나왔으니, 해당 문제가 생기면 다른 이상한 짓 하지말고 ISLC를 써보자.디비전 2의 사례, 원리 설명, 19년 10월 기준 최신 버전 설명[17][18].
- 위와 별개로 개별 프로그램의 메모리 누수 문제에 대응하기 위해 윈도우의 RAM Trim API를 활용하기도 한다. 이 첫 세대 최적화 프로그램으로 유명했던 게 뷰티플 메모리이며, Windows XP 이후 정상적인 윈도우용 메모리 최적화 프로그램은 다 같은 API를 쓴다[19].
- 시작 프로그램/서비스 관리 및 정리 역시 RAM 절약 목적은 거의 의미 없어진 지 오래이고, 주로 내가 원하지 않는데 자동 시작되는 프로세스를 정리하는 목적이 강하다.
Windows 8 이상의 Windows NT 커널은 시스템의 여유 메모리 용량을 산정하여 시스템이 사용할 수 있는 서비스들을 미리 메모리에 저장해 놓고 있는데, 이 때문에 메모리 용량이 늘어날 수록 저장된 서비스도 늘어나고 각각의 서비스를 실행하는 데에 드는 시간도 줄어든다. 특히 Windows 10 버전 1511(Threshold 2) 부터는 리눅스의 zram과 같이 사용자가 사용했던 애플리케이션을 일정 기간 메모리에 압축된 상태로 저장했다가 사용자가 다시 실행할 때 빠르게 다시 불러올 수 있도록 하는 기능이 추가되어 메모리 사용량이 더욱 늘어났다. 하지만 이렇게 메모리를 많이 사용하면서도 게임이나 포토샵같이 메모리를 정말로 많이 사용하는 프로그램들을 실행할 때는 우선 순위가 낮은 서비스들을 알아서 종료하면서 메모리 관리를 해 준다. 메모리를 많이 사용하는 프로그램을 종료 후에 작업 관리자를 보면 8GB 이상의 RAM을 장착한 시스템 기준으로 평소에는 기본 3GB를 점유하던 것이 1.6GB까지 줄어드는 것을 볼 수 있다. Windows가 이렇게 변한 것은 마이크로소프트가 Windows 8과 Windows 8.1을 거치면서 저사양의 아톰 태블릿에서 Windows를 사용할 수 있도록 최적화를 진행하고 있기 때문이다. 윈도우 10의 최소 사양인 eMMC 16GB, RAM 1GB에서도 Windows를 실행하기 위해 메모리 관리가 7에 비하면 비교가 되지 않을 정도로 빡세졌고, 8.1 이후로는 더 이상 메모리 관리 트릭을 사용하지 않아도 될 정도로 발전을 했다. 그리고 어차피 읽기 캐시로 할당된 용량은 다른 프로그램에서 필요해지면 즉각 반환되기 때문에 메모리를 잔뜩 차지하고 있어도 아무 문제 없다.
- WinSxS 삭제
간혹 용량 정리 팁이라며 C:\\Windows\\WinSxS 폴더를 삭제할 것을 안내하는 팁이 있다. 하지만, 이 파일은 Windows 업데이트 이후 이전 버전의 파일을 저장해 둔 것으로, 무작정 삭제하면 오류가 발생하거나, 심하면 부팅이 되지 않기도 하므로, 무작정 삭제하지 않는 것이 좋다. 특히 윈도우 10은 6개월마다 '기능 업데이트'라고 새 버전이 나오면서 WinSxS 용량이 새 OS인 상태로 다시 시작하므로, 기존의 윈도우 8.1이나 그 이전 윈도우들처럼 5년 넘게 패치가 누적되면서 WinSxS 용량이 무지하게 커진다거나 하는 현상이 없는데 위험을 감수해 가면서 WinSxS 용량을 억지로 줄일 이유가 전혀 없다.[20] 그리고 MS에서도 청소 방법을 안내하고 있으니, 정 공간을 줄이고 싶다면 안내하는 방법대로 따라 해 보자. 단, 최적화 이전 설치한 업데이트 일부를 삭제할 수 없게 된다. 정 용량을 더 줄이고 싶다면 위험한 짓 하지 말고 공식 압축 기능(10부터 도입된 신기능)을 사용하자.#
- 사용자 계정 컨트롤(UAC) 비활성화
Windows Vista에 처음 UAC가 도입되었을 때는 느린 컴퓨터 사양과 화면 전체가 어두워지는 애니메이션[21] 등 때문에 UAC가 뜰 때마다 시스템이 느려지거나, 심지어는 멈추는 일까지 비일비재하게 일어났다.[22] Windows 7 ~ Windows 8.1 무렵에 가서는 컴퓨터 사양의 상승에 힘입어 성능적인 문제가 어느 정도 개선되었고 UAC 자체도 다소 개량되어 편의성이 향상되었으나, 사용자들이 여전히 UAC에 대해서 적응하지 못하는 문제가 남았다. 이에 UAC를 비활성화하는 방법이 널리 퍼졌던 적이 있는데, 특별한 경우가 아닌 이상 비활성화하지 않는 것이 좋다. UAC를 끄고 쓰는 것은, 밖에 쉽게 나가기 위해 현관문을 활짝 열어 둔 채 다니는 것과 같다. UAC가 활성화되어 있다면 악성 프로그램이 시스템을 건드리려 해도 차단할 수 있다. 초기에 불편을 초래했던 프로그램들도 시간이 지나면서 Windows 10이 나올 무렵이 되어서는 UAC에 적응한 경우가 대부분이므로[23], 정확한 지식을 가지고 있는 사용자라면 더 이상 끌 이유가 없다. 그리고 Windows 8 이상인 경우 UAC를 꺼도 알림창만 표시되지 않고 여전히 권한 상승을 요구하기 때문에 UAC를 끄면서 얻는 최소한의 이득[24]마저도 없다. 그래서 Windows 7까지는 UAC를 끄면 관리자 권한을 요구하는 프로그램 아이콘의 방패 모양도 같이 사라졌지만, Windows 8부터는 UAC를 꺼도 방패 모양이 사라지지 않는다. UAC가 뜰 때 컴퓨터가 너무 느려진다는 이유로 보안된 데스크톱 기능을 꺼놓고 쓰는 사람들도 있는데, 위 주석에서도 말했듯이 악성 프로그램이 UAC를 조작할 수 있기 때문에 반쪽짜리 기능이 되어버리고 만다. 사실 요즘 컴퓨터들은 UAC가 뜬다고 컴퓨터가 먹통이 된다거나 하는 일은 거의 없기 때문에 굳이 UAC를 비활성화할 이유도 없다.
- SYSTEM.ini 의 IRQ malloc 설정
그래픽 카드의 프레임 버퍼 메모리; 물리적인 VRAM을 시스템 메모리로 확장하는 팁이 있는데, 무의미하다. System.ini의 옵션은 Windows 3.x 시절 등장한 옵션으로, DOS 커널을 사용하는 OS상에서 16비트 애플리케이션을 사용할 시에 의미가 있겠지만, 32비트 애플리케이션이나 64비트 애플리케이션은 전혀 적용되지 않는 설정이다. 해당 라인을 설정하는 것 자체는 문제를 일으키지 않지만, 시스템에 아무런 변화도 일어나지 않기 때문에 설정할 이유가 전혀 없다. 특히 64비트 Windows의 경우, 16비트 어플리케이션의 실행을 지원하지 않기 때문에 더더욱 무의미한 설정이다. 현대 Windows의 VRAM 가상화는 WDDM(Windows Display Driver Model)[25]를 통해서 이루어지며, 일반 사용자 레벨에서는 설정 자체가 불가능하다. 시스템 메모리를 VRAM처럼 쓰는 기능 역시 WDDM 도입 당시부터 이미 완성되어 있으며[26], 안 쓰는 프로그램은 성능 차이 때문에 일부러 안 쓰는 거다. 참고로 PCI Express 2.2 이상에서는 IRQ 관리를 위해 message-signaled interrupts(MSI)란 인터럽트 관리 체계를 사용하는데, 지포스 드라이버가 꽤 오랫동안 이를 지원하고도 기본값 Off로 설정해 두거나 랙을 일으키는 버그가 있다거나 해서 이를 조절하는 트윅이 아름아름 사용되었으나 다 옛말이 되었다.New GeForce Driver Claims to Fix DPC Latency Issues
- 복구 파티션 삭제
Windows 10은 OS 이미지 파일을 복구 파티션에 저장해 놓고 초기화 시, 이를 불러와 시스템을 초기화시킨다. 만일 복구 파티션을 삭제한다면 불러올 이미지 파일이 없으므로, USB 부팅 디스크를 이용한 포맷 등 전통적인 방식으로 초기화해야 한다. 이 경우, 자동적으로 사용자 데이터를 구분하여 남기고 프로그램과 레지스트리만 초기화하는 방식의 초기화는 할 수 없기 때문에 수동적으로 데이터를 백업해야 하고 시간이 훨씬 더 오래 걸린다. 게다가 윈도우 10은 기능 업데이트를 할 때마다 복구 파티션이 생성되기 때문에[27], 복구 파티션을 삭제하는 행위 자체가 업데이트 한 번으로 뻘짓이 되어버린다.
- 강제 종료 임곗값 수정
과거 응답 없음이 걸린 응용 프로그램을 빠르게 강제 종료하는 방법이라며 레지스트리의 AutoEndTasks, HungAppTimeout, WaitToKillAppTimeout, WaitToKillServiceTimeout 값을 수정하는 팁이 있었는데, 이 방법은 어지간하면 사용하지 않는 것을 권장한다. 이 팁은 Windows가 응답 없음으로 인식하는 임곗값을 낮춰서 강제 종료 속도를 빠르게 하는 것인데, 컴퓨터가 느리거나 프로그램이 발적화(혹은 원래부터 무거운 작업)인 경우 이 임곗값에 쉽게 걸려서 쉽게 튕기는 일이 발생한다. 그나마 포그라운드 프로세서의 경우 응답 없음이라고 표시라도 되므로 그냥 침착하게 기다리면 되지만, 백그라운드 프로세서는 응답 없음이라고 표시조차 안 돼서 무조건 강제로 튕기게 되며, 결국 시스템이 전체적으로 불안정해지는 문제가 생긴다. 컴퓨터를 종료할 때마다 '지금 끝내기'가 뜨는 경우라 해도 문제가 있는 프로그램을 찾아내서 해결하는 것이 이로우며, 강제 종료 임곗값을 수정하는 것은 근본적인 문제를 해결하기도 힘들고 포맷도 여의치 않은 등의 상황에서 최후의 수단(last resort)으로만 사용해야 한다.
위의 고전적인 윈도우 최적화 방법 이외에도 윈도우 10 시대에 맞춰 새로 나온 최적화 툴/스크립트도 마찬가지로 문제가 되고 있다. 특히 MS가 날 감시하는게 싫다며 윈도우 텔레메트리 관련 기능을 끄게 될 경우 여기에 인터넷과 관련된 다른 기능들까지 같이 동작을 하지 않게 되는 수가 있는데 (대표적으로 로그인 화면 월페이퍼 자동 갱신 기능 같은 것들) 이런 류의 스크립트 들은 내가 뭘 켜고 껐는지 기억하기조차 쉽지 않으므로 나중에 복구할 때 골치아플 수가 있다. 되도록이면 사용을 자제할 것을 권장한다.
4.1. 결론
괜히 이상한 거 건드리지 말자. 안 그래도 윈도우가 알아서 다 해 준다.평소에 상술한 자동 유지 관리를 한 번씩 돌려주고, 시스템이 뭔가 꼬였다 싶어도 관리자 권한 명령 프롬프트(CMD, 또는 파워 쉘)에서 2+1 가지 명령어[28]를 통해 복구 후에 재부팅하면 어지간한 건 해결된다. 그래도 안 되면 설정 > 복구 > PC 초기화를 누른 후에 파일 유지만 시켜줘도 깔끔하게 고쳐진다.[29] Windows 10은 그 정도로 고도의 자동화가 이루어진 OS이다. 비록 사용자 계정 컨트롤(UAC) 등의 일부 요소들로 인해서 사용자에게 주어진 권한과 자유도는 줄어들었지만, 그 대신 시스템 관리의 전반적인 자동화가 매우 진전되어 있다. 이 때문에 윈도우 파워유저들에겐 조금 마땅찮게 느껴지기도 하지만, 매킨토시 유저들이 macOS를 다루는 듯한 그런 감각으로 접하게 된다면 자동화를 추구한 Windows 10의 장점들을 점차 접할 수 있게 된다.특히 Advanced System Care 같은 '종합' 최적화 프로그램은 오작동을 일으킬 가능성이 높으므로 사용하지 않는 것이 좋다.[30] Windows에 내장된 디스크 정리 유틸리티나, 구라제거기 같이 한 가지 주제를 확실히 파고드는 녀석은 상관없는 편.시스템 문제가 생겼거나 해서 포맷이 불가피하다 할 때, Windows 7에서는 아예 복구 DVD를 넣고 돌려야 할 판이었지만, Windows 10에서는 바이러스가 심하게 들러붙지 않은 한, 초기화만 돌려줘도 해결된다. 만약 바이러스가 심하게 걸렸다 싶어도 모든 파일 삭제로 내부 파일을 한 번 날려버리고 나머지 파티션도 같이 포맷으로 정리해 주면 어느 정도 정리되는 편이다. '모든 파일 삭제'를 선택한 초기화는 설치한 시스템 드라이버나 누적 업데이트 자체에 문제가 있는 경우가 아니라면 거의 포맷과 동일한 수준으로 정리를 해준다. #[31] 특히 Windows 10은 시스템 자체적으로 복구 기능을 지원하는데, 이 덕에 복구 미디어가 없더라도 공장 초기화가 가능해졌다.[32] Windows 10 2004 버전부터는 기존의 오프라인 초기화 기능 외에 클라우드 초기화, 즉 서버에서 설치 이미지를 받아서 초기화해 주는 기능까지 생기게 되었다.[33]
5. 여담
- Windows 9x 시절 메모리 누수 등 문제로 인해 거의 필수품이 된 적도 있었다.
- 물론 Windows 95 출시 당시에는 없었고 1997년 Memturbo를 시작으로 Rambooster와 RAM Idle과 같은 메모리 클리너들이 많이 쏟아져 나왔다.
- WinMe는 이게 있어야 정상적으로 쓸수있다.
[1] 이쪽으로 악명 높았던 허위 최적화 프로그램의 사례로 ieasysoftware의 '이지윈클리너(아카이브)'가 있다. 한동안 잘 모르는 이들이 혹했었지만, 오코리아(아카이브)라는 조잡한 포탈 홈페이지로 시작 페이지를 강제 고정시키는 것으로 악명 높았다. 참고로 이 회사가 이지윈클리너 다음에 그 악명 높은 허위백신 다잡아를 만들었다. 오코리아 사이트는 없어졌지만 다잡아는 15년 넘게 현역이다.[2] WIndows 7부터 처음 설치 시 일정 용량을 시스템 파티션으로 따로 생성한다. 이를 없애고 단일 파티션으로 잡았을 경우를 뜻한다. UEFI가 기본인 요즘 환경에서는 나올 수 없는 경우.[3] nProtect 같은 것들[4] 해당 링크는 엄연히 CCleaner 공식 홈페이지 다운로드 페이지이고 과거 프리웨어 시절에는 권장하던 페이지였다! 단지 언젠가부터 잘 안 보이는 구석에 처박아 놓고 언급을 피하는(...) 것뿐이다. 사실 없애려 들었다가 원조 팬들에게 욕을 무진장 먹고(...) 조용히 철회한 결과이다.[5] 많아 봐야 10MB 밖에 되지 않는다.[6] 예시로 라이엇 게임즈 클라이언트가 있다.[7] 누구나 알듯이 최적화에 사용되는 서비스 중 일부는 메모리에 상주하기에 ON/OFF 여부에 따라 램 공간을 아낄 수 있다. 다만 서비스를 끄기 이전에 정확히 어떤 곳에 관여하는 서비스인지 숙지할 필요가 있다.[8] DISM을 돌려서 배포 파일을 점검하는 게 마이크로소프트가 설명한 작업 내용에 그나마 부합한다.(...)[9] HDD에 일정 이상 조각난 드라이브가 있는 상태에서 돌리면 조각 모음도 한다. 그러니깐 흔히 생각하는 작업들도 일부 포함되긴 하지만 무조건 하는 게 아니라 일정 트리거를 만족해야만 작동하는 식으로 들어가 있다는 얘기.[10] 너무 자동화만 잘해 놓고 사용자에게 아무것도 알려주지 않는다. 심지어 데드라인이 지정된 작업 때문에 강제로 진행될 때에도 알림 센터에 메시지 하나 띄우지 않는다. 이게 뭔지, 왜 이러고 있는 건지 원하지 않는 변수 발생 시 어떻게 대처하는 게 정석인지를 전혀 설명해 주지 않으니 상황 파악도 못 하고 이상한 꼼수(자동 유지 관리 끄기를 최적화로 소개하는 정보라든가)만 생기는 것이다.[11] 사실 아예 안 쓰게 된 레지값이라면 차라리 낫다. 아무 의미 없는 글자 몇 개를 추가한 것에 불과하기 때문. 최소한 그거 때문에 뭔가가 망가지거나 느려질 확률은 극히 낮다.[12] SSD의 경우에는 디스크 조각 모음을 해서 얻는 이득이 거의 없기에 굳이 할 필요가 없으며, 억지로 했다가는 오히려 디스크 수명을 단축시키는 부작용이 발생한다. SSD 최적화 팁 참고.[13] 심지어 GPU에서 이런 빠른 SSD를 이용해 캐싱하기도 한다.[14] 사실 윈도우 API를 사용하는 이 Trim이 속도를 위한 RAM 캐시로 잡아놓은 데이터까지 반환해 버리는 등 상당히 공격적임에도 불구하고, 속도 관련 이슈가 그다지 없는 것 또한 사실이다. 일부 프로그램이 정말 램을 그렇게 많이 써도 되는지는 충분히 의문이 될 만하다.[15] 그래서 너무 자주 쓰면 필수적인 데이터도 정리되거나 가상 메모리로 옮겨지기 때문에 오히려 시스템이 엄청나게 느려진다. 개인용 SSD는 상상할 수도 없었고 HDD끼리 비교해도 요즘 물건에 비하면 엄청 느리던 시절이었으니...[16] L1 캐시 같은 하드웨어적인 캐시 말고 데이터를 RAM에 캐시해 놓는 기능[17] 마지막 링크 결론을 보면 알겠지만 버그는 18년도 말쯤에 해결되어 현재 원칙적으로는 필요 없다. 다만 이후에도 비슷한 증상을 ISLC로 완화/해결했다는 사례는 있어서 혹시 모르겠다 싶다면 한번 써보자.[18] 읽기 캐시로 메모리를 채워 놓은 걸 제대로 파악하지 못하고 프로그램이 지 혼자 삽질하거나, 반환 요청에 응답하는 속도가 느려서 스터터링이 생기는 문제. PUBG가 특히 악명 높았다. 읽기 캐시를 공격적으로 채워 넣기 시작한 Windows 10 Creator update부터 문제가 심해진 편. 이를 위해 DDU(Display Driver Uninstaller)로 유명한 Wagnardsoft에서 만든 게 Intelligent standby list cleaner (ISLC)다[19] 뷰티플 메모리 방식, 또는 (윈 10 버그 사례 이후) ISLC 방식, 또는 둘 다 지원(대표적으로 Process Lasso)[20] 최대한 구버전을 쓴다고 해도, 각 버전을 최대 24개월만 보안 패치를 지원하기 때문에 무한정 버틸 수도 없다. 단, LTSB는 예외.[21] '보안된 데스크톱'이라고 한다. 화면이 어두워지고 UAC 화면만 표시되게 되며, 동시에 UAC 화면이 띄워진 상태에서 다른 프로그램이 실행되지 않도록 차단하는 기능이 같이 발동하게 되기 때문에 악성 프로그램이 UAC 화면을 조작하거나 자동으로 권한 상승을 하지 못하도록 막는다. 또한 이 상태에서는 타블렛을 통한 조작이 불가능하며, 화면 캡쳐도 차단된다. 반디캠과 같은 프로그램으로 녹화를 하는 중에 UAC 창이 뜨면 녹화된 영상에 UAC 화면은 잡히지 않고 커서만 움직이는 것을 알 수 있다.[22] 지금으로선 상상하기 힘들겠지만, 당시에는 펜티엄4 3.0GHz에 DDR1 512MB도 현역으로 쓰이던 시절이었다(...).[23] 일례로 CCleaner나 AIDA64를 로그인 시마다 실행되도록 하는 옵션을 사용한다면, 초기에는 무조건 매 실행 시마다 UAC 경고 메시지를 봐야 했으나, 2017년 현재는 경고 메시지를 띄우지 않는다.[24] 편의성, 호환성 등.[25] WDDM은 Windows Vista부터 지원하는 디스플레이 드라이버를 의미하며, Windows XP 시절의 디스플레이 드라이버는 XDDM(Windows XP Display Driver Model)이라고 부른다. 그래픽 카드가 WDDM을 지원해야 Windows Aero도 사용할 수 있다.[26] dxdiag에서 "VRAM + (시스템 메모리 용량의 절반)"을 전체 용량으로 보여준다. 최신 윈도우에서는 물리 VRAM과 공유 메모리 용량이 어떻게 되는지도 따로 보여준다.[27] 내부 과정을 잘 보면 기존 윈도우를 Windows.old로 백업하고 다시 설치하는 사실상 업그레이드 과정이기 때문이다. 기능 업데이트 자체가 새로운 버전의 윈도우 10으로 업그레이드 하는 것이기 때문.[28] Dism /online /cleanup-image /restorehealth , sfc /scannow #. 그 전에 혹시라도 C:\가 있는 드라이브에 물리적, 논리적 오류가 있을 경우를 대비해 chkdsk도 해주는 게 좋다. 문제가 발견되면 시키는 대로 chkdsk /f 후 재부팅부터 하자. 윈도우 업데이트 후 구버전 파일 정리까지 합친 방법#[29] 마이크로소프트 홈페이지에서 윈도우 설치 파일을 따로 다운받아서 실행할 경우 프로그램까지 유지할 수 있다.[30] 때문에 제대로 알고 있는 컴덕들은 해당 툴을 쓰더라도 자신이 원리를 정확히 알고 있고 현재 윈도우 버전에 괜찮다고 확신하는 몇몇 기능을 GUI로 편하게 실행하는 용도로만 쓰고, 정작 해당 툴에서 주력으로 미는 기능은 전혀 안 쓰는 경우가 더 많다.[31] 시스템 드라이버는 유지되는 게 있고 초기화되는 게 있는데, 당연히 초기화되는 쪽은 문제를 해결할 수 있지만, 유지되는 쪽의 드라이버 문제이면 해당 드라이버를 언인스톨/롤백해야 된다. 어떤 이유로든 그게 불가능하면 전통적인 포맷을 하는 쪽이 빠르게 해결할 가능성이 더 높다.[32] Windows 7까지는 기능 자체가 없었으며, Windows 8.1은 복구 DVD나 USB를 꽂아야만 자동으로 초기화를 해주는 반쪽짜리 기능이었다. 물론 대기업 컴퓨터는 자체적으로 복구 파티션을 내장했기 때문에 버전 상관없이 초기화가 가능하기는 하다.[33] 시작 -> 실행 -> 관리자 권한으로 cmd 실행 후 Dism /online /cleanup-image /restorehealth 를 입력해 주면 된다.