Tips/Windows

안드로이드 폰에 윈도우를 설치해 보자

NEORAY 2012. 12. 24. 23:57


윈도우는 x86 프로세서에서 동작하는 운영체제죠
그리고 스마트폰은 ARM 프로세서를 사용하고요 근데 안드로이드폰에 윈도우를 설치할 수 있습니다^^

이유는 CPU를 에뮬레이트 해주는 애플리케이션이 있기 때문인데요
원래는 BOCHS(박스라고 발음합니다) 나 QEMU(얘도 Bochs소스가 좀 많이 들어있습니다)같은
이종(異種)프로세서에서 x86 프로세서를 에뮬레이트 하는 오픈소스 프로그램이 있는데
xda에서 korvs2003라는 개발자분이 Bochs를 안드로이드용으로 컴파일해주셨습니다 이걸 이용하도록 하겠습니다





준비물
스마트폰 : ① CPU클럭 최소 1Ghz
               ② 저장공간 4GB

윈도우 이미지 : XP나 윈도우 서버2003 까지는 테스트해 봤으며
                    웬만하면 자동 응답파일로 무인설치 이미지로 만들어 놓는 게 좋습니다
                    (무인설치 만드는 방법은 하도 널려서 여기서는 생략합니다)

도전정신, 인내심, 시간 : 어마어마하게 오래걸립니다
                                설치시간만 해도 약 40분 정도 잡아먹고
                                폰에 넣고 부팅되는 것만 15분 정도 걸립니다(갤치디 기준)
                                무엇보다 시간과 인내심이 제일 중요합니다
(솔찍히 말하면 이거 완전 삽질이거든요
근데 국내에는 삽질을 좋아하는 분이 드문가 봐요)


아 Bochs를 이용해서 설치해도 되지만 설정이 까다로우므로 여기서는 Qemu를 이용해서 설치하도록 하겠습니다

먼저 디스크 이미지를 생성해야 합니다

bximage.exe
첨부된 bximage.exe를 실행합니다(원래 bochs PC버전 설치파일에 포함되어있는 프로그램입니다)

먼저 첫 번째 입력에는 hd를 입력합니다 (HDd이미지를 생성한다는 뜻입니다)
두 번째는 flat을 입력합니다 (fixed 그러니까 ...음 고정할당 된 이미지를 생성한다는 뜻입니다)
세 번째는 용량을 MB 단위로 입력하는데 일단 부팅가능 확인을 한 건 3.5GB까지입니다.
4GB 이상은 안드로이드가 fat32 포맷이므로 당연히 안 들어가고
3.9GB로 해보았는데 폰에 넣으면 이상하게 블루스크린이 뜨더라구요
3.8GB까지 해보았는데 안 되더라구요 그냥 3.5GB로 해보니 되더군요. 안되면 더 줄여보세요.

4번째는 그냥 엔터 치시면 됩니다

그리고 이미지 안에 윈도우를 설치하기 위해서 QEMU매니저를 다운받아야 합니다
설치버전이나 포터블버전을 받으시면 됩니다
(2013년 2월 25일 확인해보니 사이트가 문을 닫았군요 파일 올려드립니다)

qemumanager7.pdf
매뉴얼

qman70.7z
포터블 버전(원래 파일은 Zip이지만 용량제한에 걸려 7zip으로 압축해서 올립니다)

setupqemuk70.exe
설치 버전

다운을 받으셔서 실행하면
이런 화면이 뜹니다 그러면 VM탭에서 New Virtual Machine을 클릭합니다

이름 칸에 원하는 이름을 입력하고 Next를 누릅니다

그리고 램 용량을 할당하는데 512MB 정도 면 됩니다
그리고 디스크이미지는 이미 생성했으므로 생성 안 함으로 해주고 다음을 누릅니다

이제 생성이 끝났습니다.

Drives 탭에서 하드디스크 0을 눌러주신 다음 아까 생성하신 c.img 파일을 마운트하고 그리고 CD-ROM에 윈도우 CD 이미지를 마운트 합니다.

저는 XP는 이미 해보았고 블로그 포스팅을 위해 서버 2003으로 해보겠습니다.
뭐 그러면 안 되는 거지만 정품 라이센스가 필요 없습니다. 아쉽게도 폰에 넣으면 인터넷이 안되기 때문에 ㅋㅋ;;;;

//마운트 하는 법을 모르겠다고 하시는 분들이 많으셔서서 추가합니다.
어떤 부분을 모르겠다고 하시는지 이제야 알았네요

먼저 내용추가 전의 사진에서 Hard Disk 0을 더블클릭하면 위와 같은 창이 뜹니다.
여기서 빨간사각형으로 표시된 곳의 ... 버튼을 누르면

위와 같은 창이 뜨죠? c.img가 있는 폴더 안에 가도 c.img는 보이지 않으실 겁니다.

그럴때 파일형식에서 드롭다운 메뉴를 눌러 위와 같이 All Files로 바꿔주시면 c.img가 나옵니다. 클릭해서 선택해주시면 되겠습니다.


그리고 빨간색으로 표시한 ▷ 표시를 클릭하면 VM이 켜집니다
시간이 어마어마하게 오래 걸리므로 웬만하면 자동설치로 설정해두면 좋습니다.

그리고 잠시 놀러 갔다 오면 됩니다 ㅎ

설치가 완료되고 난 후 바탕화면이 뜨면 이 시스템에서 하고 싶은 걸 다 깔아 줍니다.(저처럼 서버를 까셨다면 gpedit.msc에서 로그인 시 ctrl+alt+del 사용 안 함 설정 해주시는 게 좋습니다)
게임 같은 건 그래픽이 딸려서 못하고 내장된 카드게임 같은 건 가능합니다.
다 하셨으면 이제 시스템을 종료해줍니다

그리고 폰을 컴퓨터에 USB로 연결해준 뒤
SDL.zip
첨부한 SDL.zip의 압축을 풀어 SD카드의 루트 폴더의 SDL폴더 안에 넣어주시고 윈도우를 설치한 c.img 파일을 SDL폴더 안에 넣어줍니다.

최종적으로 이런 상태가 되면 됩니다

※ 아 추가로 bochsrc의 내용은 수정 할 수 있으며 가장 많이 바꾸실 램 할당량은 megs 로 표시되어있고 초기 256MB로 세팅되어있습니다.
램이 많은 폰은 많이 할당하시면 되겠습니다.

※ bochsrc에 내용을 다음과 같이 바꾸시고
ata0-slave: type=disk, mode=vvfat, path=/sdcard/HDD, journal=vvfat.redolog
SDL폴더와 마찬가지로 sdcard의 루트폴더에 hdd폴더를 만들면(물론 /sdcard/HDD 폴더를 다른데로 지정해도 됩니다) 폰에서 부팅후 hdd폴더안의 내용을 볼 수 있습니다.

※ bochsrc의 내용을 다음과 같이 바꾸시면 사운드 재생이 가능합니다.
sb16: wavemode=1, dmatimer=500000
SB16드라이버가 설치되어있어야 하는데 사운드 블라스터 16입니다. 아마 XP에서는 자동으로 잡을겁니다.

Bochs2_5_1.apk
그리고 첨부한 bochs2_5_1.apk를 폰에 설치해 줍니다.

그리고 실행을 해주시면 바이오스 화면이 뜨고
로딩화면이 뜨게 됩니다(어두워서 플래시가 터져서 더러워 보이네요;;; 아닙니다 깨끗해요;;)
여기서 한~~~~참을 기다리게 되면

설레는 로딩화면이 뜨고

드디어 로그인 화면이 뜨게 됩니다

사진으로 보시니까 잘 모르시겠지만 부팅 시작해서 바탕화면을 전부 건드릴 수 있을 때 까지 약 15분이 걸렸습니다. ㅡㅡ;;;
근데 이상하게도 서버가 XP보다 부팅이 5분이나 빠르군요 XP는 20분 걸렸습니다. 서버가 테마나 바탕화면 등 설정할 것이 적어서 그런 것 같습니다

아 사용법은
볼륨 업 버튼 : 왼쪽 마우스 클릭
볼륨 다운 버튼 : 오른쪽 마우스 클릭
메뉴 버튼 : 엔터
취소 버튼(뒤로 버튼) : 백스페이스

왼쪽 위 빈 공간 터치 : TAB
왼쪽 밑 빈 공간 터치 : 키보드 열기
이고 Hacker's Keyboard 어플을 설치하시면 좀 더 데스크탑처럼 쓰실 수 있습니다.
단점은 한글이 지원이 안 된다는 것인데 그래도 ConnectBot 사용 자주 사용하시는 분이나 리눅스 많이 만지시는 분은 이만한 키보드가 없을 것이라고 생각합니다



//너무 문의가 많아 추가합니다
Bochs는 그저 앱입니다. 구동 방식 자체는 다르지만 일단은 VMware나 VirtualBox처럼 생각하시면 되겠습니다. 그러니 윈도우나 리눅스 상에서 VirtualBox로 윈도우를 구동하다가 다시 원래의 운영체제로 돌아오고 싶을때 VirtualBox를 종료하면 되는 것처럼 다시 안드로이드로 돌아오고 싶을때는 멀티태스킹기능을 이용해서 돌아오시거나 그냥 Bochs를 종료하시면 됩니다.


//혹시 안되시는 부분 있으시면 댓글 주시면 아는 한도 내에서 답변 드리겠습니다
//잘 사용하세요 ^^

이 글은 CCL라이센스 BY-NC-SA를 적용하기 때문에 마음껏 퍼가셔도 됩니다. 다만 BY-NC-SA는 전염성을 가지기 때문에 이 게시물에 있는 자료를 이용해서 다른 글을 작성하실때 출처랑 CCL표기 확실히 해주셔야 합니다. 그리고 CCL을 달았다는 것은 퍼가는 것을 허용한다는 의미이기 때문에 이것을 퍼간 페이지에 한하여 마우스 오른쪽 버튼 잠금 푸셔야 합니다.