8년 전, 중학교 3학년의 나는 공부는 안 하고 게임을 좋아하는 대한민국 부모님들의 흔한 골칫덩어리였다. 그나마 나는 특이점이 하나 있었는데, 게임뿐만 아니라 게임을 열심히 돌리는 주체인 컴퓨터 자체를 좋아했다. 초등학교 3학년, 내 첫 컴퓨터는 펜티엄3에 512MB 램을 가진 엄청나게 느린 컴퓨터였는데, 폴더 하나도 힘겹게 열어내는 이 컴퓨터를 위해서 나는 하루에 몇 시간이고 '컴퓨터 빠르게 하는 방법' 등을 인터넷에서 찾아보며 다양한 방법을 시도했다. 이때 컴퓨터를 좋아하게 됐고 다재다능한 컴퓨터에 대한 전반적인 이해도가 높아졌던 것 같다.
지금이야 대한민국의 자랑 삼성전자가 일본의 경쟁자들을 모두 따돌리고 정상에 있지만 내가 어릴 때까지만 해도 '기술'하면 일본을 제일 먼저 떠올렸다. 아버지는 이런저런 이유로 일본을 한해 최소 두 번씩은 방문했는데, 항상 재밌는 기념품을 사오셨다. 라디오 주파수로 시간을 동기화하는 여행용 시계, 전기모터로 작동하는 지우개, 심이 필요 없는 스테이플러 등 우리나라에서는 보기 힘든 것들이었다. 새로운 물건들을 학교에 가져가면 항상 이목이 쏠렸고 즐거웠다.
아버지는 특히나 일본제 전자제품에 관심이 많았다. 과거 소니에서는 얼리어답터들의 가슴을 뛰게 만드는 것들을 많이 만들었는데, 소니는 엄청나게 작은 폼팩터에 고성능의 프로세서를 넣고 아주 예쁜 섀시로 감싸는 것을 기가 막히게 해냈다. 그런 소니의 최전성기의 기술력을 대표하던 바이오(VAIO) TR 시리즈, P 시리즈, UX 시리즈가 우리집에 모두 있었다. 이렇듯 나의 얼리어답터 기질은 아버지로부터 물려받은 것인데, 나는 이런 신기한 컴퓨터들을 보며 자라왔고 아버지는 공수력에 비해 컴퓨터를 능숙하게 다루지는 못해서 나에게 자주 도움을 요청했다. 나는 펜티엄3 컴퓨터로 하루 몇 시간씩 제어판의 기능 하나하나를 뜯어보며 전반적인 흐름을 알게 되었고 아버지의 도움에 능숙하게 응할 수 있었다.
윈도우 10으로 대표되는 요즘 운영체제와 달리, 2000년대를 주름잡던 과거 윈도우 XP는 시스템 권한을 마음껏 열어주었고, 개발자들이 운영체제의 전반을 휘저으며 레지스트리를 멋대로 바꾸고 파일을 군데군데 심어놓을 수 있게 해주었다. 거기에 지금에야 운영체제는 SSD에 설치하고 하드디스크가 자료 저장용으로 쓰이지만, 과거에는 하드디스크밖에 없었다. 구닥다리 운영체제와 하드디스크의 조합으로 컴퓨터는 쉽게 엉망이 되고 제 기능을 하지 못했다. 특히나 내가 컴퓨터로 이런저런 프로그램을 멋대로 깔고 건들고 하다보니 우리 집 컴퓨터들은 성할 날이 더더욱 없었다. 덕분에 내 주요 업무 중 하나는 집에 있는 다양한 컴퓨터에 윈도우를 다시 설치하는 것이었다.
어쩌다 보니 동네 사람들에게 소문이 나서 초등학교 6학년의 나는 나는 출장 AS기사가 되어 이곳저곳 컴퓨터를 고쳐주거나 윈도우를 다시 설치해줬다. 후술하겠지만, 오리지널 윈도우 XP는 다양한 문제점이 있었는데 그 때문에 다양한 해적판 윈도우 XP가 우후죽순으로 생겨났다. 중학교 1학년의 나는 윈도우를 새로 설치하는 작업을 수없이 반복하며, 그 해적판 윈도우 XP에 강하게 매료되었다. 곧 나만의 해적판 윈도우를 만들고 싶었다. 그렇게 중학교 1학년의 나는 소박한 '해적판 윈도우 XP 만들기' 프로젝트를 고등학교 입학 전까지 진행하게 된다.
내가 디미고(한국디지털미디어고등학교)에 지원할 당시 일반전형은 최소 상위 15%는 되어야 경쟁이 가능하다고 여겨졌었다. 그런데 내 중학교 내신 성적은 상위 50%였다. 디미고에 지원하기에는 터무니 없는 내신이었다. 나중에야 알았지만, 내 중학교 성적은 합격생들 사이에서 상위 95% 즉, 하위 5%이었다. 그만큼 중학교 성적은 도저히 디미고의 문턱을 넘기에 불가능해보였다. 사실 애초에 나는 집 근처 인문계 고등학교에 진학할 예정이었고 공부에 큰 흥미가 없었고 동기부여도 없었다. 나는 디미고라는 학교가 존재하는지조차 몰랐다. 그런데 디미고 원서접수 한 달 전, 한 친구가 내가 컴퓨터에 관심이 크다는 것을 알고 나에게 디미고에 대해서 알려줬다. 검색을 해보니 웬걸, 왜 이런 학교를 이제서야 알았는지 개탄스러웠다. 이 학교에 미치도록 진학하고 싶었다. 그 날, 저녁식사를 하며 내가 '디미고'라는 학교에 진학하고 싶다고 말하자, 아버지는 오늘은 늦었다며 대신 바로 그 다음날 아침에 차를 끌고 나에게 직접 그 학교를 보여주셨다.
하지만 나는 내신 성적이 엉망이었고 프로그래밍 대회 입상 경력도 없었다. 공부를 더 열심히 할걸. 경시대회라도 준비할걸. 후회가 가득했지만 결국 내게 남은 것은 15명 남짓을 선발하는 바늘구멍, 자기추천자 전형뿐이었다. 그래도 다행히 나에게는 나만의 윈도우 XP가 있었다. 나는 최선을 다해 작업중이던 버전을 완성시켰고, SSD에 관련한 칼럼과 함께 실적물로 제출했다.
연관글
아래는 내가 디미고 입학 지원 대표 실적물로 제출한 것. 떨리는 마음으로 면접장에 들어갔다. 솔직히 나를 포함해 주변 사람들 모두 반신반의했다. 성적도 성적이거니와 내 실적물은 너무 특이했다. 모두들 자신이 프로그래밍 언어로 개발한 작품을 실적물로 제출했는데 내가 만든 것은 엄밀히 말하면 정밀한 도구로 만든 것이 아닌 내가 좋아하는 것을 좇아 만든 무언가 다른 것이기 때문이었다. 지금에서야 머리가 조금 커서 당시 심사위원이었던 선생님들의 심정을 조금 이해할 수 있을 것 같다. 그들은 내 작품을 온전히 이해하지 못했을 것이다. 중학생의 나는 내 작품을 제대로 설명할 재간이 없었고 심사위원들은 내가 작업한 것들이 정확히 무엇을 의미하는지 몰랐을 것이다. 하지만 내가 정말로 이 분야를 좋아하고 있다는 것 쯤은 쉽게 깨달았을 것이다. 누가 봐도 내가 만든 것은 수공예 작품이었다. 내가 이 분야를 진정으로 대한다는 것. 이게 가장 중요한 가치였다.
세 명이 한 조로 면접을 봤는데, 나에게만 질문세례가 쏟아졌다. 질문의 요지는 전부 '네가 이걸 직접 만든 게 맞나?'였다. 당연히 내가 만들었으니 질문을 수월하게 답했다.
그리고 디미고에서 나는 후회없는 3년을 보냈다.
Windows XP CM Edition 소개
목차
I. CM Edition 제작 동기
II. CM Edition 제작 과정
III. CM Edition 유틸리티 설치 프로그램
IV. CM Edition 오토플레이 런쳐
V. CM Edition
VI. CM Edition 포럼
VII. 결론
I. CM Edition 제작 동기
Windows XP를 설치할 때에는 불편한 점이 많이 있습니다.
- 설치 과정 중간중간마다 불쑥 나타나는 설치 설정 옵션 창이 있습니다.
- Windows XP는 2001년에 출시되었습니다. 따라서 핫픽스 보안 업데이트를 설치시 상당히 오래 설치해야하고 설치시 랜 드라이버와 무선 랜 드라이버가 잡히질 않습니다.
- 오래된 운영체제이다보니 S-ATA 인터페이스 하드디스크에 설치시 블루스크린이 나옵니다.
- 운영체제 설치 완료 후 설치해야할 프로그램들이 너무 많습니다.
이러한 문제점이 있었습니다. 이 문제들은 사실 해외 툴을 사용해서 해결 할 수 있는 문제가 대부분이지만, 일반 사용자들이 하기에는 너무 버거운 분량이었습니다. 따라서 몇몇 사용자들은 이런 문제들을 해결한 것을 미리 적용시킨 Windows XP 수정판을 내놓게 되었고 인기를 끌었습니다. 하지만, 이런 수정판을 사용할 때마다 아쉬운 점이 느껴지게 되었고 한편으로는 제가 직접 만들어서 더 나은 수정판을 만들어 보고 싶었습니다. 그래서 관련 툴 사용법을 익히게 되었고, 제가 만들게 되었습니다. 다른 수정판들과 다른 것을 꾀하고 싶어서 커뮤니티를 설립하여 사용자들의 의견을 반영하는 수정본을 만들었습니다. 그 결과 3년의 수정/보완 작업을 거쳐 CM(Change the Mind of XP) Edition을 만들 수 있게 되었습니다.
II. CM Edition 개발 과정
Windows XP CM Edition은 2009년 3월부터 개발되어 2011년 1월까지 개발되었습니다.
그중에 최신버전인 Windows XP CM Edition 5100을 소개합니다.
CM Edition 5100은 윈도우 구성요소 다이어트 정도에 따라 R1, R2, R3 세가지 버전으로 분류됩니다.
(nLite라는 윈도우 구성요소 편집 툴을 이용해 다이어트 시켰습니다)
CM Edition은 다음과 같이 구성됩니다. (빨간 부분은 CM Edition에서 새로이 추가된 부분)
Windows XP(OS 부분) + Masstorage 드라이버(S-ATA 드라이버) + 핫픽스(윈도우 업데이트) + 트윅 및 테마 + 유틸리티 설치 |
각 부분별 작업 과정을 나열하겠습니다.
Windows XP | nLite를 이용한 다이어트 작업, WINNT.SIF로 무인설치 작업 |
Masstorage 드라이버 | Driverpacks를 이용한 통합작업 |
핫픽스 | 핫픽스 통합 패키지를 이용한 통합작업 |
트윅 및 테마 | 제조사 배포폴더($OEM$)를 이용한 자동설치 |
유틸리티 설치 | WGET과 Autoplay Media Studio를 통한 유틸리티 자동설치 |
① Windows XP CD의 구성요소를 제거/추가 할 수 있는 nLite 프로그램을 이용한 다이어트 작업을 수행하였습니다. 원본 폴더를 선택하고 지우고자하는 구성요소를 선택하면 됩니다. 이 과정은 자칫하면 운영체제 구성을 망칠 수 있으므로 가장 경량화된 버전인 R3에만 적용시키고 그 다음으로 경량화된 버전인 R2는 nLite를 이용한 구성요소 제거가 아닌, 운영체제 구성에 전혀 관여하지 않는(예: MSN 메신저) 프로그램들을 수작업으로 제거했습니다. R1은 구성요소를 전혀 제거하지 않았습니다.
② Windows XP는 설치하면서 중간중간마다 설치 과정에 대해 묻는 과정이 나타납니다. 이 것을 WINNT.SIF (무인 설치 응답 파일)파일의 추가로 모두 자동으로 입력되게 설정하여 무인설치가 이루어지게 했습니다. 무인설치 응답 파일은 여러 국내외 무인설치 포럼(Unattended Windows)을 참고해가며 제작했습니다.
③ DriverPacks이란 툴을 이용한 드라이버 통합 과정을 수행하였습니다. 기본적으로 Windows XP에는 S-ATA 인터페이스를 지원하지 않기 때문에 이 과정을 수행하지 않으면 S-ATA 인터페이스 하드디스크에서 Windows XP를 설치할 수 없습니다. 이 DriverPacks를 이용해서 오프라인 Lan, WLan 설치 드라이버를 만들어 CD안에 포함시켰습니다.
④ 핫픽스(HotFix) 란, 마이크로소프트에서 제공하는 중요한 윈도우 업데이트입니다. 핫픽스 slipstream 툴을 이용해서 핫픽스를 통합했습니다. 핫픽스 슬립스트림 툴은 WinFix(http://cafe.naver.com/winfix)에서 제작한 툴을 사용하여 통합하였습니다. 이 과정에서 가장 경량화된 R3버전은 최대한 구성 요소를 포함하지 않아야 하기 때문에 Windows XP용 서비스팩 3만 포함시키고 핫픽스는 제외시켰습니다.
⑤ CM Edition 설치시 기본적인 트윅과정을 수행하고 바탕화면 아이콘을 생성하기 위해서 제조사(OEM) 배포폴더를 사용하였습니다. 배포폴더란 CD안의 $OEM$폴더를 인식해 해당 폴더에 있는 파일을 설치시에 인식시켜주는 폴더입니다. WINNT.SIF에서 설정을 해주면 됩니다. 배포폴더의 CMDLINES.TXT를 이용했습니다. CMDLINES.TXT는 Windows XP 설치 완료 14분전에 원하는 파일을 실행할 수 있게 해주는 기능입니다. 이 기능으로 앞서 말했던 기능들을 자동으로 설치합니다.
⑥ CMDLINES.TXT에는 CM.CMD를 실행하도록 하는데요, CM.CMD에는 아래와 같은 명령줄이 포함됩니다. 간단히 설명드리자면 CD안의 특정 파일을 실행시키거나 레지스트리 파일을 자동으로 등록시켜주는 과정입니다. 레지스트리 변경에는 파일 인덱싱 주기 변경 등 시스템 자원을 상시 점유하는 기능들에 대한 최적화 작업이 포함됩니다.
⑦ CM Edition Start에서의 유틸리티 설치 관리자는 wget을 이용해 티스토리 블로그에 분활압축 되어있는 파일들을 한 폴더에 모아 압축을 풀고 프로그램을 설치하는 과정까지 자동으로 구현했습니다. 이 과정을 자동화 하기 위해서 여러 가지 무인설치 스위치와 오토잇, WinRar SFX 기능을 활용하였습니다. 보편화된 설치 파일을 제공하는 프로그램들은 여러 무인설치 스위치를 통해 사용자가 개입하지 않아도 자동으로 설치되지만, 설치 중간중간에 애드웨어를 설치하는 옵션이 있거나 또는 무인설치 스위치가 작동하지 않는 프로그램들은 오토잇을 이용해 수작업으로 설치가 진행되게끔 제작했습니다.
기타 셀 수 없이 많은 작업을 거쳐 지금의 CM Edition이 탄생했지만, 가장 큰 변경점을 살펴보았습니다. Windows 7이 한창 출시되고 새로운 컴퓨터가 출시되는 시점에서, Windows XP를 사용하는 사람들 중에서 구형 컴퓨터 사용자가 많다는 것을 고려했습니다. 구형 PC의 경우 DVD롬이 없는 컴퓨터가 많음으로, CD용량인 650MB를 넘지 않게 제작하였습니다.
III. CM Edition 유틸리티 설치 프로그램
유틸리티 설치 프로그램은 Autoplay Media Studio로 제작되었습니다
설치하고자 하는 프로그램을 체크하고 ‘선택된 항목 설치’를 클릭하면 해당 프로그램들이 순차적으로 사용자가 중간에 개입하지 않아도 자동으로 설치됩니다. 사용자가 개입하지 않아도 되야한다는 점이 가장 중요했기에 앞서 설명한 무인설치 스위치와 오토잇 프로그램을 이용했습니다. (모든 설치파일은 인터넷에서 다운받습니다)
이 방법이 획기적인 것은, 본래 설치파일을 CD에 다 넣으면 유틸리티 설치 파일만 500MB가 넘어가지만 인터넷에 파일을 올려서 다운로드 받는 방식을 채택함으로서, 50MB까지 용량을 줄여 700MB CD안에 들어갈 수 있도록 제작하였습니다. 또한 추후에 서버의 파일을 업데이트할 수 있어서 유지보수에 용이합니다.
또한, R3에 빠진 윈도우 구성요소를 일부분이나마 설치 할 수 있고, CM Edition에 관련된 문제를 포럼 사이트로 접속하게 유도해서 해결하도록 했습니다. 또, 자주묻는 질문을 따로 모아놔서 사용자들의 편의를 증가시켰습니다.
IV. CM Edition 오토플레이 런쳐
CM Edition은 깔끔한 인터페이스를 가진 런쳐를 제공합니다. 현재 자신이 보유하고 있는 CD가 CM Edition의 무슨 버전인지를 알려주고, 유틸리티 설치 (CM Edition Start), 인터넷이 연결되어 있지 않은 상황에서 무선랜과 LAN 드라이버를 설치할 수 있는 드라이버 설치 관리자. 또, 고스트 내장으로 언제든지 컴퓨터를 백업/복원 할 수 있습니다.
CM Edition Start는 Autoplay Media Studio 7.5버전을 기반으로 제작되었습니다. 맑은 고딕체가 해당 프로그램의 기본 폰트이기 때문에 CM Edition에서도 맑은 고딕 폰트가 기본으로 탑재됩니다.
V. CM Edition
CM Edition의 설치 직후 바탕화면 모습입니다. 최적화 설정을 할 수 있는 유틸리티와 설치 후에 읽어달라는 텍스트파일 하나가 바탕화면에 배치됩니다.
테마와 로그온은 해외 사이트에서 가져온 것으로, UI 모두 블랙으로 일관성있게 기존 XP와 다르지만 고급스럽게 꾸몄습니다.
과연 구성요소 제거에 따른 실제 성능 차이가 있는지, CM Edition R1,R2,R3의 버전별 가상머신 설치 시간 측정을 해보았습니다.
파티션 설정 화면까지 뜨는데에, R3가 가장 빨랐고 R2 R1 순입니다.
최종 설치 시간은 R3가 4분 54초로 가장 빨랐습니다.
그 뒤로, R2가 6분 R1이 6분 54초를 기록했습니다.
CM Edition 설치 직후 CM Edition Start를 실행시킨 모습입니다. (800*600 이상 해상도에서 정상적으로 표시됩니다)
VI. CM Edition 포럼
CM Edition 포럼의 모습입니다. 네이버 카페를 기반으로 하고 있습니다.
CM Edition 리뷰를 올리는 게시판입니다. 많은 사용자들이 리뷰를 올려주시고 부족한 점 들을 지적하면, 판단하에 차기 버전에 의견을 반영하도록 하는 구조를 갖추고 있습니다.
VII. 결론
3년동안 진행을 하면서 나름 상당한 완성도를 갖춘 Windows XP 수정본이 되었습니다. 저는 제가 추구하고자 하는 바인 누구나 손쉽게 사용할 수 있게 만들자라는 생각을 가지고 제작에 임했습니다. 그래서 현재, 아직까지도 제 성에 차지 않지만, 사용자들로부터 좋은 평가를 듣고 있습니다.
Windows XP CM Edition을 제작하면서 10년이 지난 OS인데, Windows 7 CM Edition도 만들어야 하나 하는 생각도 들었지만, 10년이 지난 OS인만큼 XP가 더 손길이 필요하다고 느꼈습니다. Windows 7은 이미 간편한 설치 과정과 많은 드라이버를 포함하고 있기 때문에 굳이 추가 작업이 필요하다고 느끼지 못했습니다. 하지만 XP는 아직 XP만 지원하는 응용 프로그램이 있고, 구형 PC에서 Windows 7으로 넘어가는데에 다소 무리가 있어서 작업이 필요하다고 생각합니다.
저는 지난 3년동안 CM Edition 프로젝트를 진행했습니다. 이 CM Edition이 제가 운영체제에 가지고 있는 관심도, 저의 잠재 가능성을 발견해 주는 것이 되었으면 하는 바람으로 마칩니다. CM Edition 5100 R1, R2, R3를 CD에 구워서 첨부했습니다.
(포럼의 한 팬분께서 만들어주신 로고입니다)
(끝)