달력

10

« 2024/10 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2010. 3. 16. 15:53

[개발환경 구축] Mac OS X 설치기 - Step 5 아이폰2010. 3. 16. 15:53

확인을 해보니 제 CPU는 가상화 지원하는 모델입니다.
그런데 왜 안될까요?
vmware7 으로  snow leopard 돌릴 때 분명히 virtualization 가능한 intel cpu 임에도
mac os x is not supported with software virtual .. 이거 뜰 때 해결법은

"bios 설정가서 cpu 가 virtualization 이 enable 로 되어 있는지 확인하고
컴퓨터를 "완전히" 종료시킨뒤 다시 켜면 된다"고 하더군요.. ㅋㅋ.. 드디어.. 찾았군.. ^^

그러나 노트북 리부팅하여 CMOS에 들어간 결과 Virtualizaion 설정 메뉴자체가 없네요.. ㅠㅠ
또 구글신, 네이년을 미친듯이 뒤졌습니다.
참, 그전에 삼성 펌웨어 업데이트를 먼저했습니다.
이렇게 펌웨어가 있더군요.. 다운 받아 설치하였습니다.

그래도 못찾네요.. ㅠ

그런 와중에 희망을 찾습니다.
How to Enable Intel VT and AHCI on a Napa/Santa Rosa platform Phoenix BIOS Vaio laptop

설명은 이렇습니다.(나름 각색하였습니다.)

1. symcmos 및 dos text editor를 다운로드 받는다.
2. 부팅제작프로그램으로 간단한 DOS부팅 미디어를 만든다 (USB)
3. 부팅시 F2를 눌러 CMOS에 진입하고 External devices옵션을 enable 한다. (디폴트 세팅을 로드한다)
4. vaio 로고뜰때 ESC를 눌러 부팅디바이스를 골라 DOS 부팅한다.
5. "symcmos -v2 -lDefault.txt" 라고 명령어를 입력하여 Bios 정보를 추출한다.
6. 리부팅하고 도스모드로 들어간다.
7. DOS text editor 로 default.txt를 편집한다. ex. ed defalut.txt (여기서 ed 는 editor 실행파일입니다.)
For Napa SZs - R0112N0
AHCI: (015C) [0000] ---> (015C) [0001]
VT-x: (0354) [0000] ---> (0354) [0001]

For Santa Rosa SZs - R0122S5
AHCI: (0189) [0000] ---> (0189) [0001]
VT-x: (02F1) [0000] ---> (02F1) [0001]
8. 변경된 파일을 다른이름으로 저장합니다. ex.mod.txt
8. "symcmos -v2 -umod.txt" 을 실행하여 바이오스 업데이트를 실시합니다.

와~~ 이런게 있었구나.. 반가움도 잠시.. 이건 소니 노트북에 한정되어 있습니다. -_-;;
그럼 혹시 삼성노트북도 이런게 있지 않을까요?
또 구글신과 네이년을 뒤집니다.
저와 비슷한 어려움을 겪은 사람들이 많군요..
삼성 센스노트북 사용자모임을 찾아보니 삼성에서 VT 업데이트를 위해 펌웨어 업데이트를 결정했다고 합니다.
ㅎㅎ.. 다행이다 생각도 잠시.. 제 노트북 R21은 해당 펌웨어 업데이트에서 제외되었답니다.

제 M/B 모델은 R20/P400 인데 해당 메인보드의 바이오스 업데이트는 계획이 없다고 합니다.

이런 말도안되는.. .CPU는 VT-x를 지원하는데 메인보드는 지원하지 않는다?
그런데 해당 바이오스 업데이트에서 제외되었다.. 삼성서비스센터에 전화 및 메일 문의로 항의해 보았습니다.
바보 되었습니다. -_-;; 메일은 답변없고 전화답변은 원론만 이야기 합니다.

여기서 주저 앉고 싶습니다. 그러나 포기하지 않습니다.
지들이 안만들어주면 내가 만든다.. 또 찾습니다.

How-To unlock and enable hardware accelerated Virtualization Technology (VT) on a Sony VAIO laptop
(and possibly others)
와~~~ 소니에서만 가능하던 토큰 Index number를 찾아 줄 수 있는 방법을 찾았습니다.
이제 제 CMOS의 토큰 index number만 찾으면 symcmos로 CMOS 변경가능합니다.

대략 번역해보니

1. CMOS 롬을 읽어드려서
2. decompress 하고
3. decompress 된 파일을 읽어드려서
4. 이걸 찾고
BIOSCOD6.asm-18542-0000CB57  66B93A000000      mov ecx,0x3a
BIOSCOD6.asm:18543:0000CB5D  0F32              rdmsr
5. call word 0xf000:0x48db 을 찾고
6. 정확히 한줄위에 등록값이 다른 명령어를 찾으면
mov ax, 0x363
call word 0xf000:0x48db
7. mov ax, 0x363 <== 이건데.. 
   여기서 숫자 "363" 이 내 VT 바이오스 토큰 인덱스번호 라는 겁니다.

ㅋㅋㅋ 이건 봉 잡았습니다.
그런데 어떻게 롬을 읽어들이고 decompress  를 하고 해당 값을 찾죠? ㅠㅠ
또 삽질 들어갑니다. ㅎㅎ
이제 본격적으로 바이오스 크랙 들어갑니다.

1. 삼성펌웨어를 먼저 받아 놓습니다. (20081001144743500_12SP_WIN.exe)


2. Samsung Firmware Modules extractor 다운받아 unpack 합니다. (find_gz.exe)


3. phoenix BIOS Editor 2.13  다운받아 설치한 다음 unpack 시킨폴더로 가서
    phoenix BIOS Editor 이용하여 원본바이오스를 열어둡니다 (저의 경우는 12SP.WPH 입니다.)

4. phoenix BIOS 설치폴더로 이동하면 TEMP폴더가 생겼습니다. 여기서 decompress를 해주어야 합니니다.
ndisasm 을 다운로드 받고 설치합니다.
TEMP 폴더로 이동해서
"ndisasm 바이오스롬파일명"을 실행합니다. 여러개 있을 경우 여러개 모두 실행합니다.


그럼 아래와 같이 롬파일옆에 asm 파일이 생성됩니다.

5. 이제 디어셈블링된 asm 파일을 하나씩 열어서 다음 문자열을 찾습니다. 
    "mov ecx,0x3a"를 찾습니다. 제경우 아래와 같습니다.
0000C5EF  66B93A000000      mov ecx,0x3a
0000C5F5  0F32              rdmsr
6. 4번째 파일에서 드디어 찾았습니다.


7. rdmsr 다음 처음 나오는 "call word 0xf000:0x58df"를 확인합니다.
주의. 숫자는 각자의 시스템마다 다릅니다. 정확히 한줄위에 등록값이 다른 명령을 볼 수 있습니다.
0000C5FD  B87806            mov ax,0x678
0000C600  9ADF5800F0        call word 0xf000:0x58df
8. 이제 제 노트북의 VT Bios 토큰 색인을 찾았습니다.
    바로 위에 있는 숫자 "678"이 제 노트북 Sens R21Plus 의 색인번호입니다.

9. 이제 위에 있는 BIOS 업데이트 방식대로 업데이트 하면 됩니다.

10. BOOT 제작을 하기 위해 아래의 프로그램을 설치합니다.

11. SYMCMOS와 DOS text Editor을 준비합니다. (해당파일은 다운로드 받아 압축을 풀어놓습니다.)

12. BOOT USB 제작합니다.

다운로드 받아 압축 해제한 Boot.zip 경로를 지정합니다.

13. 리부팅시 F2를 눌러 CMOS에 진입하고 설정을 디폴트세팅 후 부팅 우선순위를 USB 로 지정합니다.

14. SYMCMOS -v2 -ldefault.txt 를 실행하면 default.txt에 BIOS 정보가 들어갑니다.

15. 리부팅하고 도스모드 들어갑니다.

16. 다운로드 한 에디터를 실행합니다. ex. ed default.txt

17. 678번째를 찾습니다. 0000 을 0001 로 변경합니다.

18. 다른이름으로 저장 합니다. ex. mod.txt

19. SYMCMOS -v2 -umod.txt 를 실행합니다. 바이오스가 업데이트 됩니다.

ㅋㅋㅋ.. 드디어 바이오스 업데이트 끝냈습니다.
그럼 리부팅 후 재 VT가 활성화 되었는지 확인합니다.



ㅎㅎ Locked ON 되었습니다.

마지막으로 VMware에서 OSX 실행되는지 확인합니다.

어렵고 긴 세팅과정이었네요..
간단하게 한글세팅하고 DOCK 변경하였습니다.

다음에는 개발환경 세팅 들어갑니다.
:
Posted by 에너지발전소
2010. 3. 16. 14:31

[개발환경 구축] Mac OS X 설치기 - Step 4 아이폰2010. 3. 16. 14:31

사실 이제 끝났다고 생각했습니다. 설치도 우여곡절끝에 다 하고... 재시동도 하였습니다. 그런데 이런게 나옵니다. -_-



설치 ISO파일을 빼줍니다.



그래도 배신때립니다.


구글신께 여쭤보니 "darwin" 다운받아 설치해서 넣으랍니다.


뭔가 이상한 메시지가 나오긴 하지만 그냥 넘어갑니다.

이상합니다. CPU가 Disabling 되었다니.. 결단코 난 그런적 없습니다.
그리고 먹통입니다. 아무리 ISO를 넣었다 뺏다하고 darwin을 다시 받고.. 별짓을 다해봅니다.
Leopard ISO 파일도 의심해봅니다. 틀림없이 그넘이 잘못된듯 합니다. -_-;;
또 삽질의 밤이 다가옵니다.

:
Posted by 에너지발전소
2010. 3. 16. 14:19

[개발환경 구축] Mac OS X 설치기 - Step 3 아이폰2010. 3. 16. 14:19

VMware를 시작하고 Virtual Machine를 Power ON 합니다.

설치 시작입니다. 아무키나 눌러주세요.

사과 모양이 나옵니다.
간혹 순서대로 따라하지 않은면 아래와 같은 메시지가 나오기도 합니다.
DVD를 이미지 파일로 변경하면 됩니다. 보통 DVD를 제대로 인식하지 못해서 발생합니다.

설치 화면이 나옵니다. ^^; 사실 여기 오기까지 우여곡절이 많았지만 다 표현하기 어렵네요.. -_-;;
맨처음 설치환경에 대한 확인을 꼭 제대로 하시기 바랍니다. 설치화면이 보이니 눈물이 앞을 가린다는.. -_-;;


이런 화면이 나오면 다음으로 넘어갑니다.

처음 이화면 나올때 황당했다는.. -_-; 그래서 받아놓은 ISO 이미지를 탓하며 설치 종료를 했더랬습니다.
화면 상단에 유틸리티 -> 디스크 유틸리티... 찾아줍니다


좀 전에 설정한 20G의 하드디스크가 나타납니다.

20G를 선택하고 파티션을 선택합니다.
볼륨설계에서 자신이 사용할 파티션 숫자를 선택합니다. 1개의 파티션을 선택합니다
"옵션"을 클릭하고 첫번째 GUID 파티션 테이블 선택합니다.
"적용"을 눌러면 파티션이 변경되었다는 메시지창이 나오면 "파티션"버튼을 클릭하고 확인합니다.
설정이 끝났으면 좌측 상단의 "빨간버튼"을 클릭하여 설정을 종료합니다.

드디어 OSX를 설치할 수 있는 디스크가 보입니다.
디스크를 선택하고 "계속"을 눌러줍니다.

하단 좌측의 "사용자화"를 클릭합니다.

버전에 따라서 위의 선택부분이 많아질 수 있습니다.
각종 드라이버나 설치프로그램을 선택하도록 되어 있지만 제가 설치한 버전은 간단합니다.


설치 시작됩니다.

ISO 파일을 확인합니다.
원래 MD해시 확인을 했으면 건너띄어도 상관없습니다. 설치전에 다운로드한 ISO파일을 해시검사해 두는것이 좋습니다.

대략 3시간정도 설치시간이 소요됩니다.
:
Posted by 에너지발전소
2010. 3. 16. 13:13

[개발환경 구축] Mac OS X 설치기 - Step 2 아이폰2010. 3. 16. 13:13


이제 설치를 시작할까요?
먼저 VMWare를 설치합니다.
그리고 "New Virtual Macine"을 선택합니다.


"Custom"을 선택합니다.


"Workstation 6.5-7.0"을 선택합니다.


"Installer disc Image file를 선택하고 받아놓은 OSX Leopard.iso 파일을 추가합니다



Guest OS 선택을 "Freebsd 64 bit"를 선택하고 "Virtual Machine" Name을 작성합니다.


운영체제에 사용할 Core 숫자를 선택합니다.



운영체제에 사용할 메모리와 네트워크 환경을 선택합니다.


사용할 SCSI Adapter를 "LSI Logic"로 선택하고 "create a new virtual disk"를 선택합니다.


DISK Type은 SCSI를 선택합니다.


디스크 용량을 선택하는건데 그다지 많이 필요치는 않을듯 하여 20G만 설정하였습니다.


디스크 파일명을 작성하는데 앞에 작성된 이름이 자동으로 들어갑니다.


Virtual Machine 생성후 자동으로 시작하는 옵션인데 체크아웃 하고 "Finish" 누릅니다.


"Edit Virtual Machine Settings"에 들어가서 "Floppy"는 Remove 하고 Hard Disk에가서 "Advanced"를 눌러줍니다.


"Independent"를 선택하면 "Persistent"가 자동으로 체크됩니다.
이제 "OK"를 누르고 VMware를 종료합니다.




VMware가 설치된 폴더에 가면 해당 VM파일중 VMX 파일이 있습니다.
그 파일을 열고 GuestOS를 변경해 주세요
변경전 : guestOS = "freebsd-64"
변경후 : guestOS = "darwin10-64"

그럼 이제 VMware가 설치되었습니다.
이제 본격적으로 MAC OS Leopard를 설치할 수 있습니다.
:
Posted by 에너지발전소
2010. 3. 11. 13:47

[개발환경 구축] Mac OS X 설치기 - Step 1 아이폰2010. 3. 11. 13:47


뭘 새로 하는건 우선 너무 즐겁다. 처음 가본 여행지도, 새로운 게임도, 새로운 독서도..
윈도우 특히 마소에 종속적인 개발자가 아이폰을 보았다.
새로운 세상과 마주치니 처음부터 너무 삐걱댄다.. 그렇지만 즐겁다. 너무나.. ^^

개발 한번 해보려고 했더니 나를 가로막는것이 너무 많다. 차근차근 하나씩 헤쳐가봐야지..

일단 개발환경.. 맥북이 있으면 좋겠지만 난 돈 없다. -_-;;
그래서 내 노트북에 개발환경 비스무리하게 꾸며 놓으려 한다.

하지만 Mac OS X 는 하드웨어 특성을 많이 탄단다. 그래서 이리저리 뒤져서 해킨토시를 만드는 방법을 찾았다.
주. 해킨토시(OSx86)애플 컴퓨터의 Mac OS X 운영체제를 비 맥킨토시 환경에서 깔리게 하는 해킹 프로젝트이다

해킨토시는 두가지 방식으로 설치 될 수 있다.
1. 윈도우와 멀티부팅 (ex. Windows XP + Mac OS X)
2. 가상머신(ex.VMware)으로 Virtual 환경구축

멀티부팅은 특히 하드웨어 특성을 너무 많이 탄다..
해결할 수 없지는 않지만 들어가는 노력이 너무 과하다.
나중에 실제 개발에 들어갔을때 필요에 따라 설치를 고려해 볼 수 있다.

그래서 가상머신으로 구축하기로 하고 준비에 들어갔다.
 
[준비물]
- VMware Workstation 7.0
- Leopard_Install_DaViD.iso
- darwin.iso
- 기타 : GPU-Z.0.3.9, cpuz, Portable EVEREST Ultimate  5.30.1900, md5hasher, securable
- BIOS 크랙 :
** 대부분의 파일이 프리웨어이므로 검색엔진에서 검색하면 쉽게 다운 받을 수 있다.
** VM설치시 반드시 자신의 CPU가 Virtualizaion을 지원하는지 확인하고 조치를 위해야 한다.
** 제 노트북은 아래와 같이 표시가 되었습니다. ㅠㅠ
** 이것 때문에 글 말미에 다시 언급하겠지만 엄청 삽질을 했다는..


CPU의 Instructions가 SSE2,SSE3를 지원하고 VT-X를 지원해야만 VM에서 OSX를 정상적으로 설치 할 수 있습니다.


GPU-Z를 이용하여 그래픽카드의 정보를 확인하세요.
Name 과 Bus interface를 확인하면 됩니다. 나중에 설치할때 사용됩니다.


Everest Ultimate Editon 으로 기타 장치에 대한 정보를 확인한다.

[환경]
O/S : Windows XP Professional
CPU : Intel Mobile Core 2 Duo T7500
         Instructions : MMX, SSE(1,2,3,3S), EM64T, VT-x
         ** SSE2, SSE3 지원여부는 반드시 확인해야 한다. Mac OS X는 SSE3를 지원한다.
         ** SSE2(Streaming SIMD Extensions 2)는 IA-32 SIMD(Single Instruction, Multiple Data) 명령어 집합이다.
             SSE3는 SSE2의 확장판이다.  SSE2는 144개의 새로운 명령어를 70개의 명령어로 구성된 SSE에 추가했다.
         ** 반드시 VT-x 를 지원해야만 VM에서 OSX를 설치할 수 있다.
M/B : ATI
         Chipset : Xpress 1250(RS600)
         Southbridge : SB600
NAT : Realtek RTL8139/810x Family Fast Ethernet NIC
VGA : ATI Radeon Xpress 1250
         Bus Interface : PCI
Audio : Realtek ALC262 @ ATI SB600


여기까지 설치준비는 끝났다.
준비물이 준비되었으니 이제 설치를 시작하면 된다.
:
Posted by 에너지발전소

1. 맥 OSX에서 개발(XCode)
OSX DVD 에서 XCode를 설치하고
http://developer.apple.com/iphone/index.action <- 여기 가입하고 iPhone SDK 내려받아 설치
디폴트로 C:\developer\application 디렉토리에 설치

 

2. 이클립스를 이용한 개발

http://blog.naver.com/joycestudy/100100587234 <- 자세한 설명은 여기로

 

3. Cygwin + eclipse 를 이용한 개발
위의 2번 방법이 안될경우 윈도우즈 사용자들의 대안이 될 수 있음.
윈도우즈 위에 시그윈이라는 일종의 리눅스 가상머신을 돌리고 그 위에 아이폰 SDK를 설치

http://date4u.tistory.com/132 <- 자세한 설명은 여기로

 

그밖에 샘플코드나 가이드라인은 아이폰 dev 센터에 가면 자료를 얻을 수 있음.

이곳저곳 뒤지다가 윈도우에서 개발할 수 있는 방법에 대한 설명을 찾았음.
아직 시도해보지 않아 뭐라 말하긴 어렵지만 위의 세가지 방법으로 개발이 가능하지 않을까..?
참 OSX 를 VMware에 설치해서 테스트 해봐야 할듯..

:
Posted by 에너지발전소