struct objc_class *Class

Base 클래스인 NSObject의 헤더에는 다음과 같이 선언되어 있습니다.

@interface NSObject <NSObject>
{
  Class isa;
}

isa는 클래스 타입의 변수로 모든 인스턴스 객체는 이 isa에 의해 자신이 속한 클래스 객체를 참조합니다. 이것은 objc/objc.h 에 다음과 같이 정의되어 있습니다.

struct objc_class *Class;

그리고 이 구조체는 다음과 같은 내용을 담고 있습니다.

struct objc_class {
    struct objc_class *isa;
    struct objc_class *super_class;
    const char *name;
    long version;
    long info;
    long instance_size;
    struct objc_ivar_list *ivars;
    struct objc_method_list **methodLists;
    struct objc_cache *cache;
    struct objc_protocol_list *protocols;
};
http://macdevcenter.com/pub/a/mac/2002/05/31/runtime_parttwo.html?page=2

Posted by Enowy

2009/10/27 14:13 2009/10/27 14:13
, , , , , ,
Response
No Trackback , No Comment
RSS :
http://enowy.com/blog/rss/response/161

사용자 삽입 이미지
야옹신부님께서 아이팟 나노 1세대를 교체받으셨다는 말씀을 듣고 교체 신청을 한 결과 새로 교체를 받았습니다. 아마도 리퍼제품이 아닐까 싶습니다만 새것이라고 봐도 무방할 정도 입니다. 나이키 스포츠 센서와 함께 운동을 시작해 봐야 겠습니다.

Posted by Enowy

2009/10/12 14:13 2009/10/12 14:13
, , , , , , ,
Response
No Trackback , No Comment
RSS :
http://enowy.com/blog/rss/response/158

How to make Safari stop using Acrobat for PDF preview?

아크로뱃 설치 이후 사파리에서 pdf를 보면  preview 가 아닌 아크로뱃이 작동됩니다.

이것을 기본 환경으로 돌리기 위해서는 다음의 과정을 수행합니다.

  1. /Library/Internet Plug-Ins 로 이동합니다.
  2. Disabled 라는 이름의 폴더를 새로 만듭니다.
  3. AdobePDFViewer.plugin을 그 폴더 안으로 넣습니다.
  4. Safari를 재시작합니다.

참고 : http://forums.macrumors.com/showthread.php?t=198977

Posted by Enowy

2009/05/26 14:23 2009/05/26 14:23
, , , , , , ,
Response
No Trackback , No Comment
RSS :
http://enowy.com/blog/rss/response/144

사용자 삽입 이미지


802.11G를 지원하는 구형 Airport Express의 경우 채널이 13까지 지원됩니다.
현재 시판되는 11n 지원의 신형 모델들도 규격상 13까지 지원되는 것으로 알고 있습니다.

하지만 PowerBook에 장착된 AirPort Extreme Card는 11까지만 지원되어 Airport Express의 채널이 12, 13으로 설정되면 인식을 하지 못하는 현상이 발생됩니다. 이 경우 채널을 11이하로 설정해 준다면 인식이 가능해 집니다.

이전에 전파법으로 인해 11까지만 이용할 수 있도록 제한이 있었던 것으로 기억합니다만 정확하지는 않네요....

Posted by Enowy

2009/02/15 04:27 2009/02/15 04:27
, , , , , ,
Response
No Trackback , No Comment
RSS :
http://enowy.com/blog/rss/response/138

Cafe24에서 Mac OS X의 Mail 사용하기

기존의 닷네임 호스팅에서 보내는 메일이 포털 사이트에서 차단되는 문제로 사용 기간이 아직 남아 있었습니다만 Cafe24로의 이전을 단행했습니다.

가격도 저렴하고 속도가 굉장히 빠릅니다. 통계도 상세한 정보가 제공되고 있고요.

이전을 거의 완료한 후 해결되지 않은 문제가 있었습니다.
가장 중요한 이유인 Cafe24에서 제공되는 메일 계정으로 메일을 보낼 수가 없었지요.
맥을 쓰시는 분중에 호스팅을 받는 분이 없으셨는 지 아니면 포기하셨는 지 구글이나 사용자 포럼에서는 별 다른 정보가 없었습니다.

결국 해결을 하고 정보를 공유하고자 이곳에 정보를 남깁니다. 
(Mac OS X 1.5.6 레퍼드의 Mail 어플리케이션을 기준으로 설명하고 
64bit광호스팅/일반광호스팅/단독웹호스팅/파워업호스팅 을 사용하시는 분에 한합니다.)



사용자 삽입 이미지
Mail을 실행하고 환경설정에서 새로운 메일 계정을 추가합니다. 
+ 버튼을 누르고 기본 정보를 입력한 뒤 Continue를 클릭하여 다음으로 진행합니다.





사용자 삽입 이미지
두번째 화면에서 받는 메일 서버 정보를 입력합니다. 
이것도 일반적인 메일 설정과 그다지 차이가 없습니다.





사용자 삽입 이미지
Continue 버튼을 클릭하면 서버에 로그인하여 연결 상태를 확인하는 작업을 수행합니다. 
아마도 시도가 실패하는 듯 시간이 좀 많이 걸립니다만 그냥 두면 다음으로 넘어 갑니다.





사용자 삽입 이미지
이제 보내는 메일 서버를 설정합니다. 
이곳에서는 사용하시는 도메인과 도메인에 대한 설명만을 적고 Continue를 클릭합니다.
(Use Authentication을 체크하시면 안됩니다.)





사용자 삽입 이미지
이 부분도 상당히 오래 걸립니다. 연결 시도가 실패하는 것으로 추측됩니다.
나중에 경고 메시지가 나오기는 합니다만 무시하고 진행합니다.





사용자 삽입 이미지
이 부분에서 역시 Authentication을 None으로 선택된 상태로 Continue를 클릭합니다.





사용자 삽입 이미지
Create 버튼을 눌러 생성합니다.





사용자 삽입 이미지
생성 완료된 모습입니다. 특히 아래쪽의 보내는 메일 서버가 선택되어 있는 지 확인합니다.





사용자 삽입 이미지
나중에 추가하시거나 변경하시면 볼 수 있는 화면입니다. 이전의 화면에서 서버 목록을 클릭하면 Edit Server List...라는 메뉴가 있는데 이것을 클릭하면 이 대화 상자가 출력됩니다.
Authentication이 none으로 되어 있어야 합니다.





Mac OS X의 응용 프로그램들이 표준 프로토콜을 사용하고 있어 일반적인 설정으로 거의 대부분 가능한데 이 부분은 특수한 경우로 보이는 군요. (내부적으로 알아서 처리해 주고 있는 지...) 게다가 인증 설정을 하지 않아도 되므로 계정마다 별도로 보내는 메일 서버를 만들 필요가 없이 하나만 만들어 모든 계정이 같이 사용할 수 있습니다.


테스트 결과 :
네이버, 네이트, Gmail, 야후 재팬에 메일을 보내 보니 정상적으로 수신되었습니다. 단지 야후 재팬에서는 迷惑メール로 분류되는 문제가 있긴 합니다만 수신은 됩니다.

Posted by Enowy

2008/12/22 01:05 2008/12/22 01:05
, , , , , , , ,
Response
No Trackback , No Comment
RSS :
http://enowy.com/blog/rss/response/134

Mac OS X Server 10.5 에 GD library 설치

사용자 삽입 이미지


Mac OS X Server 10.5.5에 gd lib을 설치하는 방법을 올립니다. (제로 보드 설치때문에 꼭 필요합니다.)

참고 사이트:
mac@facault : Mac OS X Server 10.5 에 GD library 설치


전체 순서는 아래와 같습니다.
  1. libjpeg 설치
  2. gd lib 설치
  3. php 재 설치
주의 1 : 아래의 내용중 configure 부분은 32비트와 64비트로 구분되어 있습니다. PowerPC G4, Core Duo 시스템이라면 32비트, PowerPC G5이거나 Core 2 Duo 이상이라면 64비트입니다.

주의 2 : 아래의 내용은 10.5.5 기준으로 설명합니다.

주의 3 : OS 설치시 X11이 선택되어 설치되어 있어야 합니다.

주의 4 : Xcode 가 설치되어 있어야 합니다.

1. 터미널을 열고 su 명령어로 root로 전환합니다.

2. 임시 폴더를 하나 만듭니다.
mkdir -p ./source
cd ./source

3. libjpeg과 gd 라이브러리의 소스를 다운로드하고 압축을 해제합니다.
curl -O http://www.ijg.org/files/jpegsrc.v6b.tar.gz
curl -O http://www.libgd.org/releases/gd-2.0.35.tar.gz
tar xzpf jpegsrc.v6b.tar.gz
tar xzpf gd-2.0.35.tar.gz

4. libjpeg부터 설치를 시작합니다.
cd /source/jpeg-6b
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .

5. configure를 수행합니다.
32 비트 시스템이면

./configure –enable-shared

64비트 시스템이면

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cppprecomp” CCFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe” CXXFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe” LDFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load” ./

./configure –enable-shared

5. libjpeg를 컴파일 하고 설치합니다.

make
mkdir -p /usr/local/include
mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
mkdir -p /usr/local/man/man1
make test
make install

6. gdlib를 설치합니다.
cd ../gd-2.0.35

7. configure를 수행합니다.

32비트

./configure

64 비트

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cppprecomp” CCFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe” CXXFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe” LDFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load”

./configure –disable-dependency-tracking

8. gd lib을 컴파일 하고 설치 합니다.

make
make test
make install

9. 애플의 darwin source중 자신의 OS 버전에 맞는 php소스를 다운 받아서 재컴파일 합니다. (여기서는 10.5.5입니다.)
cd ../
curl -O http://www.opensource.apple.com/darwinsource/10.5.5/apache_mod_php-44.1/php-5.2.6.tar.bz2
tar xjf php-5.2.6.tar.bz2
cd ./php-5.2.6/ext/gd
phpize

32 비트 시스템이면 다음과 같이 합니다.

./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/bin --with-png-dir=/usr/X11R6 --with-freetypedir=/usr/X11R6 --with-xpm-dir=/usr/X11R6

64 비트 시스템이면 다음과 같이 합니다.

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cppprecomp” CCFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe” CXXFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe” LDFLAGS=”-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load”

./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/bin --with-png-dir=/usr/X11R6 --with-freetypedir=/usr/X11R6 --with-xpm-dir=/usr/X11R6

10. php를 컴파일 합니다.

make
make test
make install

11. php.ini 파일을 수정합니다.
/etc 디렉토리에 php.ini.default 라는 기본 파일이 있습니다. 이 파일을 이용해  php.ini를 만듭니다.

cd /etc
cp php.ini.default php.ini
chmod 711 php.ini
vi php.ini

12. 실행된 vi에서 다음의 내용을 추가합니다.

extension=gd.so

13. 또한 extension_dir= 이라는 설정을 찾아서 주석처리합니다.

12. 아파치를 재시동 합니다.
apachectl graceful 를 쓰거나 Server Admin에서 Web을 재시작합니다.

13. /Library/WebServer/Document에 test.php라는 파일을 만들어 테스트합니다.
내용은 
<?
phpinfo();
?>
입니다.
그리고 권한을 변경해 줍니다. chmod 777 test.php

14.해당 페이지에 접속하여 내용을 확인합니다. 아래와 같이 출력되면 성공입니다.

GD Supportenabled
GD Versionbundled (2.0.34 compatible)
GIF Read Supportenabled
GIF Create Supportenabled
JPG Supportenabled
PNG Supportenabled
WBMP Supportenabled
XPM Supportenabled
XBM Supportenabled



참고 사항:
최신의 Developer Tools를 사용할 경우 php 컴파일시에 문제가 있는 경우도 있다고 합니다. 이 경우 /usr/X11/lib/libpng.la 파일을 찾아서 다음 처럼 수정합니다.
library_names=’libpng12.0.dylib libpng12.dylib
libpng12.0.26.0.dylib’
current=26
age=26

라는 행들을 아래처럼 수정 합니다.

library_names=’libpng12.0.dylib libpng12.dylib
libpng12.0.24.0.dylib’
current=24
age=24


Posted by Enowy

2008/12/15 01:30 2008/12/15 01:30

사용자 삽입 이미지
Mac OS X Server 10.5에는 MySQL이 답재되어 있습니다. 10.5.5 의 경우 MySQL의 버전은 5.0.67입니다. 하지만 여기에 설치되는 MySQL의 인코딩은 Latin 1으로 설정되어 있습니다. Mac OS X Server는 현재 영어, 일본어, 독일어로 제공되고 있습니다만 일본어 버전을 설치해도 유니코드드로 지정이 안되는 것으로 알고 있습니다. (오래 전에 시도해 봤던 것이라 잘 모르겠네요. Apple Support Discussions - Mac OS X Server 에서 보고가 없는 것으로 보면 일본어로 설치하는 경우 자동으로 UTF-8 설정이 될 지 모르겠습니다.)

방법은 아래의 방법으로 수행하시면 간단히 해결하실 수 있습니다.

  1. 터미널을 실행하고 sudo vi /etc/my.cnf 를 입력합니다.
  2. 패스워드를 입력하고 내용을 편집하기 시작합니다.
  3. [client]  키워드를 찾아 맨 아래쪽에 default-character-set=utf8 을 입력합니다.
  4. skip-networking을 찾아 default-character-set=utf8, default-collation=utf8_general_ci  의 두 줄을 입력합니다.
  5. 저장 후 Serve Admin에서 MySQL을 재시작합니다.
  6. MySQL에 root로 로그인하고 show variables like 'char%'; 를 입력하면 변경내역을 확인할 수 있습니다.
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       | 
| character_set_connection | utf8                       | 
| character_set_database   | utf8                       | 
| character_set_filesystem | binary                     | 
| character_set_results    | utf8                       | 
| character_set_server     | utf8                       | 
| character_set_system     | utf8                       | 
| character_sets_dir       | /usr/share/mysql/charsets/ | 
+--------------------------+----------------------------+


기본적으로 mysql 은 /etc/my.cnf에 설정을 사용합니다. 그래서 이곳에 수정을 해준 것이고요.. 그리고 내용중 아래의 내용을 기입한 것입니다.
[client]
default-character-set=utf8

[mysqld]
skip-networking
default-character-set=utf8
default-collation=utf8_general_ci
 
참고 사이트 : 
MacPorts-MySQL : MacPorts를 이용하여 설치하기
미남이의 이러쿵저러쿵 : MySQL의 기본 인코딩(default encoding)을 UTF8으로 설정하기
rain9.com : MySQL 를 설치했는데 character set 의 변경
싸인펜의 Life Log : OSX mysql 설치, 설정
SimpleThing : 웹 개발을 위한 Mac OS X 환경 구축
정목이의 블로그 : Mac OSX에서 Apache + MySQL + PHP 개발환경 구축하기

Posted by Enowy

2008/12/14 12:46 2008/12/14 12:46

드디어 8GB의 RAM...

사용자 삽입 이미지

사용자 삽입 이미지

8GB를 램으로 사용하는 시대가 왔네요. 가격도 생각보다 굉장히 낮습니다.
비스타는 32비트 버전이라 4GB를 다 사용하지 못하지만 Mac OS X에서는 모두 사용할 수 있습니다.

이것 저것 벌려놓고 쓰는 성격에 아무런 문제 없이 작동되는 군요.

삼성 DDR2 PC2-6400 / DDR800 2GB*2 : 44300원입니다.

Posted by Enowy

2008/12/12 17:17 2008/12/12 17:17
, , , , ,
Response
No Trackback , No Comment
RSS :
http://enowy.com/blog/rss/response/126

오늘로서 Mac OS X 10.5.5 설치가 끝났습니다.

사용자 삽입 이미지

오늘로서 10.5.5 설치가 끝났습니다.

무려 3주가 걸렸네요. 

정리하고 나니 새삼 느끼는 게 데스크탑이 하는 역할과 노트북이 하는 역할은 따로 있군요.

그동안의 스토리를 들자면...

ASUS의 P5LD2 보드, Pentium D, 4GB 메모리 머신에 10.4.11를 깔아 쓰고 있었습니다.
(애플에서 10.4.12를 내놓지 않아 업데이트 걱정없이 한 1년 가까이 잘 쓰고 있었습니다.)

한가지 문제가 CPU 사양이 낮다는 것인데 Aperture를 쓰면 반응이 많이 느렸습니다.  
(턱 턱 멈추고 기다리는게 정말 정리할 맛 안나게 만들더군요..)

그래서 올해 3월부터 P5LD2가 지원하는 최고 CPU의 중고 가격을 지켜 보고 있었습니다.
(지금은 환율때문에 쓸만한 성능이 되는 CPU 들은 가격이 상당합니다.)
적합한 CPU가 E6700인데 얼마전 알아본 중고 정품이 14만원 정도 하는 것 같더군요.

문제는 중고 제품 구하는 것이 하늘에 별따기 입니다.
불황탓인지 새제품으로 바꾸시는 분들이 적고 중고 제품들을 찾으셔서 인지
매물이 올라왔다 하면 바로 사라집니다. 아니면 거리가 먼 곳에서 직거래를 원하신다던지요...

결국 눈을 돌린 곳이 용산의 중고 부품 판매점입니다. 일일이 연락을 해 본 결과 한군데 있더군요... 
16만 5천원..
가격이 좀 높긴 했지만 더 이상 시간 낭비 하고 싶지 않아 연락하고 바로 갔습니다. 
그 날짜가 11월 22일.. 
구매하고 집에 부리나케 와서 꽂아 봤더니, 어라? 부팅이 안됩니다. 
켜면 전원이 인가되는 듯 싶더니 바로 꺼집니다. 
도통 영문을 알 수가 없어 한 시간을 헤메다 구글 검색을 해 봤습니다.
헉... E6700이 제 보드의 리비전에서 지원하지 않는 CPU더군요. 리비전을 못본겁니다. 
(2.0이 지원하는 데 전 1.03이더군요...)

결국 회사에서 사용하는 머신에 테스트해보니 정상.
이제부터 고민입니다. 환불이냐 아니냐.... 
찍어 놓은 보드가 P35-DS3인데 이것도 중고 물건이 별로 없어서 일주일 동안 찾았습니다.
일주일 내에 매물이 생기면 CPU를 쓰고 안생기면 환불하자 였죠.

오호라. 금요일 매물 발견! P35-DS3P를 11만원에 일요일날 구입.
그때부터 삽질입니다. Boot-132와 리테일 디스크로 설치하는 방법을 사용했습니다.
그러길 또 일주일의 삽질 후 결국 지난 주말에 성공하긴 했습니다.
(맥을 System 6.0.4부터 만져 왔지만 이렇게 많이 깔아 보긴 처음이네요.)

그렇게 하고 마무리를 지으니 그래픽 카드가 말썽입니다. 
X1600 Pro이고 10.4.11에서 잘 쓰던 카드인데, Quartz Extreme과 Core Image가 안됩니다.

결국 교체할 그래픽 카드를 알아보고 구매합니다.   
구매한 모델은 ASUS GeForce EN8800GT 512MB VF9. 21만원.
맥프로 구입시 선택할 수 있는 카드중에도 8800GT가 있습니다.
결국 이걸로 끝나 이틀정도 정리하고 오늘 마무리 했네요.
(어부지리로 시네마 HD에서 x1600은 바이오스 화면이 출력이 안됐는데 지금은 되네요. 
모니터를 따로 구매하지 않아도 되겠군요.) 

이제 다음은 NAS네요...

느낀점
  1. 맥프로보다 싸다. (성능이 낮긴하지만 아이맥 성능의 데스크탑을 원했으므로...)
  2. 설치시 일반 키보드보다 애플 키보드가 더 낫다.
  3. 해킨토시를 깔려면 고생이 많다. 고생을 줄이려면 검색해서 많이 쓰는 걸로 골라라.
  4. 많이 쓰는 부품을 찾으면 보통 제품 단가가 비싸다.
  5. 까는데 고생도 많고 향후에도 어찌될 지 모른다.
  6. 재력이 받쳐준다면 맥프로를 사는게 더 낫다.

시간이 나면 설치하는 단계를 정리해 봐야 겠습니다.

ps. 요즘 램값 엄청납니다. 그나마 낮은 가격에 매일 몇백원씩 떨어지더군요.

Posted by Enowy

2008/12/11 19:53 2008/12/11 19:53

윈도우 마켓 쉐어 처음으로 90% 이하로...

사용자 삽입 이미지
December 1, 2008 (Computerworld) Microsoft Corp.'s Windows OS last month took its biggest market share dive in the past two years, erasing gains made in two of the past three months and sending the operating system's share under 90% for the first time, an Internet measurement company reported today.
윈도우 마켓쉐어가 90%이하로 처음 떨어졌다고 합니다. 사실 실제 그래프 상에서는 살짝 내려온 정도지만 수치상의 의미가 큰 것이겠죠.. 특히 Mac OS  X의 시장 점유율이 점차 높아 지는 것 같습니다. 예전에 컴퓨터가 아닌 다른 제품으로 다변화하는 것을 보면서 이전의 스컬리 시절을 살짝 걱정하기도 했습니다만 오히려 시장의 반응으 좋고 오히려 OS의 마켓 쉐어를 늘릴 수 있는 기회가 되었네요. (스컬리 회장때는 참 여러가지를 만들었었지요...) NeXT에서 구체화 시켰던 자신의 생각을 발전시켜가는 잡스도 대단히 부러운 사람입니다.

출처 : ComputerWorld
자료 : Market Share

Posted by Enowy

2008/12/02 16:09 2008/12/02 16:09