36
창의공학 시제품 제작 창의공학 시제품 제작 창의공학 시제품 제작 창의공학 시제품 제작 과제명 과제명 과제명 과제명 ( : EMBEDDED LINUX PDA ( : EMBEDDED LINUX PDA ( : EMBEDDED LINUX PDA ( : EMBEDDED LINUX PDA 에 관한 최종보고서 에 관한 최종보고서 에 관한 최종보고서 에 관한 최종보고서 SYSTEM) SYSTEM) SYSTEM) SYSTEM) 2004. 01. 16 2004. 01. 16 2004. 01. 16 2004. 01. 16 대학명 충북대학교 대학명 충북대학교 대학명 충북대학교 대학명 충북대학교 : 총괄책임자 전명근 총괄책임자 전명근 총괄책임자 전명근 총괄책임자 전명근 : 한국산업기술재단 한국산업기술재단 한국산업기술재단 한국산업기술재단

창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

창의공학 시제품 제작창의공학 시제품 제작창의공학 시제품 제작창의공학 시제품 제작

과제명과제명과제명과제명( : EMBEDDED LINUX PDA( : EMBEDDED LINUX PDA( : EMBEDDED LINUX PDA( : EMBEDDED LINUX PDA

에 관한 최종보고서에 관한 최종보고서에 관한 최종보고서에 관한 최종보고서SYSTEM)SYSTEM)SYSTEM)SYSTEM)

2004. 01. 162004. 01. 162004. 01. 162004. 01. 16

대학명 충북대학교대학명 충북대학교대학명 충북대학교대학명 충북대학교::::

총괄책임자 전 명 근총괄책임자 전 명 근총괄책임자 전 명 근총괄책임자 전 명 근::::

한국산업기술재단한국산업기술재단한국산업기술재단한국산업기술재단

Page 2: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 2 -

최 종 보 고 서 제 출 서최 종 보 고 서 제 출 서최 종 보 고 서 제 출 서최 종 보 고 서 제 출 서

년 창의적 공학교육 프로그램 개발 및 확산지원사업에 의하여 수행한 창의2003

공학 시제품 제작 과제명 에 관한 최종보고서를( :Embedded Linx PDA System)

별첨과 같이 제출합니다.

별첨 최종보고서 부 포함 끝별첨 최종보고서 부 포함 끝별첨 최종보고서 부 포함 끝별첨 최종보고서 부 포함 끝:1. 3 (File ). .:1. 3 (File ). .:1. 3 (File ). .:1. 3 (File ). .

년 월 일년 월 일년 월 일년 월 일2004 1 162004 1 162004 1 162004 1 16

총괄책임자총괄책임자총괄책임자총괄책임자 :::: 전 명 근전 명 근전 명 근전 명 근

주 관 기 관주 관 기 관주 관 기 관주 관 기 관 :::: 충 북 대 학 교충 북 대 학 교충 북 대 학 교충 북 대 학 교

한국산업기술재단 이사장 귀하한국산업기술재단 이사장 귀하한국산업기술재단 이사장 귀하한국산업기술재단 이사장 귀하

Page 3: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 3 -

제 출 문제 출 문제 출 문제 출 문

한국산업기술재단 이사장 귀하한국산업기술재단 이사장 귀하한국산업기술재단 이사장 귀하한국산업기술재단 이사장 귀하

본 보고서를 창의공학 시제품 제작 과제명“ ( : Embedded Linux PDA System)”

협약기간 의 최종보고서로 제출합니다( : 2003. 9. 1. ~ 2003. 12. 31) .

2003. 1. 16.2003. 1. 16.2003. 1. 16.2003. 1. 16.

주 관 기 관주 관 기 관주 관 기 관주 관 기 관 :::: 충북대학교충북대학교충북대학교충북대학교

총괄책임자총괄책임자총괄책임자총괄책임자 :::: 전명근전명근전명근전명근

참 여 학 생참 여 학 생참 여 학 생참 여 학 생 :::: 안병준 김석만 이혜은안병준 김석만 이혜은안병준 김석만 이혜은안병준 김석만 이혜은, ,, ,, ,, ,

송영달 김영국 최미숙송영달 김영국 최미숙송영달 김영국 최미숙송영달 김영국 최미숙, ,, ,, ,, ,

Page 4: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 4 -

요 약 서 초 록요 약 서 초 록요 약 서 초 록요 약 서 초 록( )( )( )( )

과 제 명 Embedded Linux PDA System

주 관 기 관 충북대학교 총괄책임자 전명근

협약기간 총 개월2002. 9. 1 ~ 2002. 12. 31. ( 4 )

총 지원금

단위 천원( : )창의공학 시제품제작 지원금 천원: 2,000

산학협력기업

참여기업( )

주 제 어

개(6 ~ 10 )

임베디드 리눅스, ,PDA,Embedded,Linux,QT,PCMCIA,Database,Ja

va,CF

창의공학 작품의 개요창의공학 작품의 개요창의공학 작품의 개요창의공학 작품의 개요1.1.1.1.

본 작품은 임베디드 시스템에 리눅스를 올려 시스템을 구축한다 임베디드 시스템에PDA .

리눅스를 용으로 크로스 컴파일하여 올리고 를 크로스 컴파일하여 환경을 구Arm , QT GUI

축한다 이리하여 기반을 만들고 여기에 응용프로그램으로 온라인 주문시스템을 장. PDA ,

착하여 활용도를 높인다.

해당작품의 핵심기술해당작품의 핵심기술해당작품의 핵심기술해당작품의 핵심기술2.2.2.2.

시스템 프로그래밍

데이터 베이스 프로그래밍

자바 프로그래밍

임베디드 리눅스 프로그래밍

라이브러리 프로그래밍QT/E

설계설계설계설계3.3.3.3.

프로세서를 이용하여 보드를 구현ARM

보드에 방식의 무선랜카드 장착ARM PCMCIA

리눅스를 수정하여 임베디드 시스템용으로 구현 를 이용 환경 구축 시스템, QT GUI , PDA

구현

임베디드 리눅스용 소프트웨어 개발

창의공학 작품의 완성도창의공학 작품의 완성도창의공학 작품의 완성도창의공학 작품의 완성도4.4.4.4.

처음 계획한 대로 의 기능은 구현되었다 를 우연히 접하게 되어 의 대PDA . QTOPIA PDA

부분의 기능을 구현하게 되었고 계획했던 응용프로그램도 온라인 주문 시스템으로 완성,

하게 되었다 현재 구현되지 않은 기능으로는 한글출력은 되지만 한글입력이 되지 않는.

다.

활용방안 및 기대효과활용방안 및 기대효과활용방안 및 기대효과활용방안 및 기대효과5.5.5.5.

의 가격 경쟁력을 극대화 운영체제 사용으로인한 비용절감PDA (Free )

를 이용해 식당예약 및 온라인 주문이 가능하게 한다PDA .

를 이용 길거리에서 시스템 구축 가능PDA , HOME AUTOMATION

Page 5: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 5 -

목 차목 차목 차목 차

제 장 임베디드 시스템제 장 임베디드 시스템제 장 임베디드 시스템제 장 임베디드 시스템1111

제 절 임베디드 시스템제 절 임베디드 시스템제 절 임베디드 시스템제 절 임베디드 시스템1111

제 절 타겟 보드 선정제 절 타겟 보드 선정제 절 타겟 보드 선정제 절 타겟 보드 선정2222

제 장 리눅스제 장 리눅스제 장 리눅스제 장 리눅스2 QT Qtopia2 QT Qtopia2 QT Qtopia2 QT Qtopia

제 절 리눅스 포팅제 절 리눅스 포팅제 절 리눅스 포팅제 절 리눅스 포팅1111

제 절제 절제 절제 절2 QT2 QT2 QT2 QT

제 절제 절제 절제 절3 Qtopia3 Qtopia3 Qtopia3 Qtopia

제 장 온라인 주문 시스템제 장 온라인 주문 시스템제 장 온라인 주문 시스템제 장 온라인 주문 시스템3333

제 절 전체 구성제 절 전체 구성제 절 전체 구성제 절 전체 구성1111

제 절 클라이언트제 절 클라이언트제 절 클라이언트제 절 클라이언트2 PDA2 PDA2 PDA2 PDA

제 절 서버 프로그램제 절 서버 프로그램제 절 서버 프로그램제 절 서버 프로그램3333

제 절 클라이언트제 절 클라이언트제 절 클라이언트제 절 클라이언트4 JAVA4 JAVA4 JAVA4 JAVA

제 장 무선 인터넷 및 플래시 메모리제 장 무선 인터넷 및 플래시 메모리제 장 무선 인터넷 및 플래시 메모리제 장 무선 인터넷 및 플래시 메모리4444

제 절 무선 인터넷 디바이스 드라이버제 절 무선 인터넷 디바이스 드라이버제 절 무선 인터넷 디바이스 드라이버제 절 무선 인터넷 디바이스 드라이버1111

제 절 플래시 메모리 디바이스 드라이버제 절 플래시 메모리 디바이스 드라이버제 절 플래시 메모리 디바이스 드라이버제 절 플래시 메모리 디바이스 드라이버2222

장 적용기술 및 기대효과장 적용기술 및 기대효과장 적용기술 및 기대효과장 적용기술 및 기대효과5555

제 절 적용기술제 절 적용기술제 절 적용기술제 절 적용기술1111

제 절 기대효과제 절 기대효과제 절 기대효과제 절 기대효과2222

부 록부 록부 록부 록

참고문헌참고문헌참고문헌참고문헌

클라이언트 중요 소스코드클라이언트 중요 소스코드클라이언트 중요 소스코드클라이언트 중요 소스코드PDAPDAPDAPDA

서버프로그램 중요 소스코드서버프로그램 중요 소스코드서버프로그램 중요 소스코드서버프로그램 중요 소스코드

자바 클라이언트 중요 소스코드자바 클라이언트 중요 소스코드자바 클라이언트 중요 소스코드자바 클라이언트 중요 소스코드

전시회 참가 사진전시회 참가 사진전시회 참가 사진전시회 참가 사진

Page 6: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 6 -

제 장 임베디드 시스템제 장 임베디드 시스템제 장 임베디드 시스템제 장 임베디드 시스템1111

제 절 임베디드 시스템 개요제 절 임베디드 시스템 개요제 절 임베디드 시스템 개요제 절 임베디드 시스템 개요1111

임베디드 시스템이란 일반적으로 개인 휴대 정보 단말 지리 정보시스템 의료 정보, ,

단말 주식 시장 정보 단말 의료 및 산업 원격 조종 장비 등등의 하드웨어와 소프, ,

트웨어의 결합체이다 하고 다른 점은 의 경우 일반적인 용도로 사용되지만. PC PC ,

임베디드 시스템은 특정화된 용도로 사용된다 이런 임베디드 시스템에 사용되는.

리눅스를 임베디드 리눅스라고 한다.

등과 같은 특정 임베디드 시스템을 위해 개발된 임베디드 운PalmOS, WindowsCE

영시스템의 특징은 다음과 같다.

특정 개발업체에 의해 개발된 것이므로 표준화되어 있지 않다(1) , .

원래의 시스템에 의존적 이므로 타기종 시스템에 대한 커스토마이(2) (dependent) ,

제이션이 어렵다.

한정된 개발자 집단으로 인해 빠르게 변화하는 기술을 받아들여 발전하기 어렵(3) ,

다는 한계를 갖고 있다.

또한 소유권이 개발회사에 있기 때문에 커스토마이제이션과 관련 애플리케이션 개,

발에 상당량의 라이센스 비용을 지불해야 한다는 단점이 있다.

오픈소스인 리눅스는 이와 같은 기존 임베디드 운영시스템의 한계를 극복할 수 있

는 새로운 대안으로 받아들여 지고 있다 임베디드 운영시스템으로서 리눅스를 주.

목하는 이유는

컴퓨터와 같은 낮은 사양의 데스크탑에서 운용되도록 개발되었기 때문에(1) 386 ,

작동하는데 적은 자원 예를 들면 메모리 을 사용하고( ) ,

와 같이 모듈와 되었기 때문에 임베디드 시스템에 꼭 필요한 부분만을 취(2) UNIX ,

하여 이에 알맞게 최소화 할 수 있기 때문이다.

위와 같은 임베디드 운여이스템으로서의 기본 조건을 충족시키는 것 외에 오픈소,

스라는 태생적 특성 때문에 임베디드 리눅스를 주목한다 리눅스는 오픈소스이기.

때문에 로열티의 부담이 없고 소스의 소유권에 대한 걱정 없이 다양한 임베디드,

시스템에 대한 커스토마이제이션이 가능하다.

또한 전세계 수만명의 리눅스 개발자 커뮤니티 멤버들은 빠른 기술 발전을 이룰 수

있는 기반이 되고 있다 그 밖에 이미 여년에 걸쳐 검증된 운영시스템이므로 비. , 10 ,

교적 안정하다는 것과 네트웍과 인터넷의 연결을 기본적으로 지원한다는 특성이 임

베디드 운영시스템으로서의 리눅스를 주목하는 이유이다.

Page 7: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 7 -

제 절 타겟 보드 선정제 절 타겟 보드 선정제 절 타겟 보드 선정제 절 타겟 보드 선정2222

를 만들기 위해서는 의 하드웨어를 설계하여 로 제작하여야 한다 개PDA PDA PCB . 3

월이라는 경진대회 일정을 고려하면 시간이 너무 부족하여 현 시장에 나와있는

계열으 보드를 선정하여 구입하였다Strong Arm .

타겟 보드 선정에 필요한 판단요소로는 다음과 같은 것이 있다.

성능요구 조건▶

임베디드 시스템에 탑재했을 때 낮은 성능으로 인해 불편함은 없는가?•

반대로 너무 높은 성능으로 인해 불필요한 부분이 많지 않은가, ?•

타겟 보드에 대한 회사 개발자의 기술적 성숙도/▶

와 까지 똑같은 타겟보드를 사용해 개발한 경험이 있는가SOC SOB ?•

똑같은 가 아니더라도 유사한 코어를 장착한 를 사용해 개발한 경SOC/SOB SOC•

험이 있는가?

는 다르더라도 에 탑재한 주변 장치와 유사한 주변 장치를 탑재한 보드SOC SOB•

를 개발한 경험이 있는가?

타겟 보드 관련 부품 주변 장치 표준화 문제/▶

임베디드 시스템을 꾸미는데 꼭 필요한 주변장치를 별다른 노력을 들이지 않고서•

도 쉽게 장착할 수 있는가?

타겟 보드가 임베디드 시스템 구축에 필요한 표준 규약을 충실히 따르는가?•

임베디드 리눅스 탑재 문제▶

타겟 보드에 올릴 수 있는 임베디드 리눅스를 제공하는가?•

리눅스 하드웨어 호환 목록에서 해당 와 를 찾을 수 있는가SOC SOB ?•

Page 8: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 8 -

사의사의사의사의<Hybus Hyper104B><Hybus Hyper104B><Hybus Hyper104B><Hybus Hyper104B>

위의 판단요소들을 감안하여 보드로 프로세서를 장착Target String-arm(SA-1110)

한 사의 를 구입하였다 의 사양은HYBUS(www.hybus.net) Hyper104B . Hyper104B

다음과 같다.

Intel StrongArm SA1110 (206MHz)▶

Samsung SDRAM 32M▶

Intel Strata Flash 16M▶

CS8900A 10BaseT▶

7.2" STN Color LCD (640X480)▶

Page 9: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 9 -

장 리눅스장 리눅스장 리눅스장 리눅스2 , QT, QTOPIA2 , QT, QTOPIA2 , QT, QTOPIA2 , QT, QTOPIA

제 절 리눅스 포팅제 절 리눅스 포팅제 절 리눅스 포팅제 절 리눅스 포팅1111

임베디드 시스템의 운영체제를 구축하는데에 있어서 리눅스를 선택하였다 현재.

의 운영체제의 대표적인 것으로 사의 와 사의PDA Microsoft Windows CE Palm

등을 들수 있다 하지만 두 운영체제 모두 비용이 많이 들어가게 되므로PalmOS . ,

운영체제를 선택하여 의 비용으로 를 구축할수 있다Linux Free OS .

교차 개발 환경 구축교차 개발 환경 구축교차 개발 환경 구축교차 개발 환경 구축1.1.1.1.

가 교차 개발 환경이란가 교차 개발 환경이란가 교차 개발 환경이란가 교차 개발 환경이란....

일반적으로 컴파일러는 자신의 시스템에 맞는 바이너리코드를 만든다 예를 들어.

의 시스템에서 를 사용하여 컴파일 하게 되면 의 바이너리가 생긴다X86 GCC , X86 .

그러므로 타겟 보드에서 직접 응용프로그램이나 커널 컴파일을 할 수가 없다 저장.

할 수 있는 공간이 매우 부족하기 때문이다 그래서 타겟용 커널 및 응용프로그램. ,

개발하기 위하여 호스트 시스템에 타겟용 크로스 컴파일 환경을 구축한다 머신. X86

에서 용 바이너리 코드를 만들어 주는 것이 크로스 컴파일러이다ARM .

나 설치파일 구할수 있는곳나 설치파일 구할수 있는곳나 설치파일 구할수 있는곳나 설치파일 구할수 있는곳....

교차 개발환경 구축은 소스파일을 직접 컴파일 하는 방법과 패키지를 이용하여RPM

설치 할수 있다.

다 소스 파일 구할수 있는곳다 소스 파일 구할수 있는곳다 소스 파일 구할수 있는곳다 소스 파일 구할수 있는곳. .. .. .. .

binutils▸

설명 - http://www.gnu.org/directory/ALL_GNU_Packages/binutils.html

원본 - ftp://ftp.gnu.org/gnu/binutils/binutils-*.tar.gz

gcc-2.95.3▸

설명 - http://www.gnu.org/directory/ALL_GNU_packages/gcc.html

원본 컴판일러만 포함(C ) -

ftp://ftp.gnu.org/gnu/gcc/gcc-2.95.3/gcc-core-2.95.3.tar.gz

원본 모든부품포함( ) - ftp://ftp.gnu.org/pub/gnu/gcc/gcc-2.95.3.tar.gz

glibc-2.2.5▸

설명 - http://www.gnu.org/directory/ALL_GNU_Packages/glibc.html

원본 - ftp://ftp.gnu.org/gnu/glibc/glibc-2.2.5.tar.gz

Page 10: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 10 -

glibc-linuxthreads-2.2.5▸

설명 - http://www.gnu.org/directory/ALL_GNU_Packages/glibc.html

원본 - ftp://ftp:gnu.org/gnu/glibc/glibc-linuxthreads-2.2.5.tar.gz

라 패키지 구할수 있는곳라 패키지 구할수 있는곳라 패키지 구할수 있는곳라 패키지 구할수 있는곳. RPM .. RPM .. RPM .. RPM .

http://www.hybus.net/download/download_1.php▸

마 리눅스 소스파일 구할수 있는곳마 리눅스 소스파일 구할수 있는곳마 리눅스 소스파일 구할수 있는곳마 리눅스 소스파일 구할수 있는곳....

원본 - http://www.kernel.org/pub/linux/kernel/~

미러링 - ftp://linux.sarang.net/.4/ftp.kernel.org/pub/linux/kernel/~

용 커널 패치ARM - ftp://ftp.arm.linux.org.uk/pub/linux/arm/kernel/~

라 설치하기라 설치하기라 설치하기라 설치하기....

패키지의 경우 다음 명령어로 손쉽게 설치할수 있다RPM .•

rpm -ivh arm-linux-binutils-2.10-1.i386.rpm

rpm -ivh arm-linux-glibc-2.1.3-2.i386.rpm

rpm -ivh arm-linux-gcc-2.95.2-2.i386.rpm

소스 패키지의 경우 컴파일을 해야한다.•

▸▸▸▸ 컴파일과 설치binutils

컴파일과 설치gcc▸

▸ 커널 원시코드 압축 풀기와 각종 패치 작업

명령은 으로 묶인 압축을 풀면서 하는 명령어이다- zcat gz cat .

Page 11: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 11 -

리눅스 커널 준비▸

명령을 수행하면 대화식으로 동작하는 커널 환경 설정 메뉴로- make menuconfig

들어간다 옵션을 따로 지정하지 않고 저장만하고 나오면 헤더. (<Exit> --> <Yes>)

파일 관련 링크를 자동으로 생성한다 디렉토리 아래로 들어가 심볼릭. include asm

링크를 확인해보자.

초기 부트스트랩 컴파일gcc ( )▸

Page 12: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 12 -

초기 컴파일glibc▸

연구 수행중 초기 컴파일시에 에러가 발생하였다 인터넷 검색으로 알아본 결glibc .

과 와 의 버전이 맞지 않아서 생기는 문제였다 이는, autoconf automake . autoconf

와 를 번전으로 교체 함으로써 해결 하였다automake downgrade(2.13 ) .

후기 컴파일gcc▸

Page 13: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 13 -

후기 컴파일glibc▸

마 설치와 컴파일 설치의 차이점마 설치와 컴파일 설치의 차이점마 설치와 컴파일 설치의 차이점마 설치와 컴파일 설치의 차이점. RPM. RPM. RPM. RPM

은 컴파일 설치에서 해야 할일을 모두 하고 패키지 형태로 만들어 놓은것이다RPM .

그러므로 은 손쉽게 설치할수 있으나 컴퓨터의 현재 설치되어 있는 프로그램RPM ,

에 따라 실행이 될 수도 안될 수도 있다 을 컴파일한 당시의 환경과 맞지 않. RPM

으면 설치한 컴퓨터에서 실행되지 않는다 컴파일 설치는 모자라는 것이 있으면 그.

때 그때 찾아서 설치할수 있으므로 어떤 이던지 상관하지 않고 설치할PLATFORM

수 있으나 시간이 많이 걸린다 본 연구에서 두개 모두 해 보았으나 컴파일해서 설. ,

치할 대 시간이 너무 오래 걸리고 에러가 많이 발생하여 설치로 하였다, RPM .

네트워크 환경 구축네트워크 환경 구축네트워크 환경 구축네트워크 환경 구축2.2.2.2.

네트워크 환경은 호스트컴퓨터에서 만들어진 프로그램을 타겟 보드에 다운로드 하

는데에 사용된다 커널을 컴파일하였거나 각종 응용프로그램을 제작하여 컴파일하. ,

였을경우 보드로 이 프로그램을 전송하여야 하는데 이때 필요한 프로그램들, Target ,

을 구축하는 것이다 네트워크가 가장 강점인 시스템이므로 와 를. Linux , DHCP FTP

사용하였다 또한 을 보기위하여 을 이용하여 시리얼으로. Linux Console minicom

을 관측 및 디버깅 하였다Linux Console .

가 컴파일가 컴파일가 컴파일가 컴파일. TFTP. TFTP. TFTP. TFTP

는 타겟보드에 커널 및 램디스크등을 다운로드 할때 사용된다TFTP .

구할수 있는곳-

설명 - http://www.gnu.org/directory/ALL_GNU_Packages/inetutils.html

원본 - ftp://ftp.gnu.org/pub/gnu/inetutils-1.4.2.tar.gz

Page 14: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 14 -

설치-

단계 수정1 xinetd

를 사용할 경우xinetd

파일을 만들거나 수정한다/etc/xinetd.d/tftp .

단계 컴파일2 tftp

이렇게 하여 를 컴파일 하였다tftp .

나 설치 및 환경설정나 설치 및 환경설정나 설치 및 환경설정나 설치 및 환경설정. NFS. NFS. NFS. NFS

는 리눅스 설치시 기본적으로 설치가 되기 때문에 설정만 바꿔주면 된다NFS .

다음과 같이 설정을 변경한다.

단계 파일 편집1 : /etc/exports

파일이 없으면 새로 만들고 있다면 서비스에 필요한 최상위 디렉토리를 지정

Page 15: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 15 -

단계 시동2 : nfsd

단계 테스트3 :

단계 마운트로 확인4 :

타겟보드에서 다음을 입력하여 확인한다.

다 미니컴다 미니컴다 미니컴다 미니컴....

미니컴은 리눅스 콘솔을 디버깅하기 위한 용도로 사용되었다 미니컴은 시리얼 통.

신 프로그램으로 모뎀의 통신과 시리얼 직접 통신을 할수 있다.

구할수 있는곳-

홈페이지 - http://www.netsonic.fi/~walker/minicom.html

원본 - http://www.netsonic.fi/~walker/minicom-2.00.0.src.tar.gz

컴파일-

커널 컴파일커널 컴파일커널 컴파일커널 컴파일3.3.3.3.

보드인 타겟 보드에는 일반 컴퓨터용 리눅스를 사용할수 없으므로 보드에Arm , Arm

맞게 패치를 수행하여야 한다 전세계적으로 리눅스에 대한 관심이 증가하면서.

패치는 이미 나와 있으므로 패치를 구하여 크로스 컴파일 하였다Arm , Arm .

구할수 있는곳- .

http://www.arm.linux.org.uk

커널 구성 방법-

첫째 리눅스 커널을 구한다, .

둘째 암 패치를 수행한다, .

Page 16: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 16 -

셋째 용 패치를 수행한다, StrongArm .

넷째 보드를 위한 패치를 수행한다, EZ .

가 용 리눅스 커널 구하기가 용 리눅스 커널 구하기가 용 리눅스 커널 구하기가 용 리눅스 커널 구하기. i386. i386. i386. i386

ftp://ftp.kernel.org/

미러 - ftp://ftp:kr.kernel.org/pub/linux/arm/kernel/v.24/linux-2.4.18.tar.gz

나 용 패치 구하기나 용 패치 구하기나 용 패치 구하기나 용 패치 구하기. ARM. ARM. ARM. ARM

ftp://ftp.arm.uk.linux.org/pub/linux/arm/kernel/v.24/patch-2.4.18-rmk7.gz

용 패치 구하기StrongArm

ftp://ftp.arm.uk.linux.org/pub/linux/arm/people/nico/v2.4

다 커널 설치 및 패치다 커널 설치 및 패치다 커널 설치 및 패치다 커널 설치 및 패치....

이렇게 함으로써 커널 컴파일이 끝나게 되고 의 형태로 커, ./arch/arm/boot/zImage

널이 존재한다.

위의 과정들을 통하여 개발을 위한 기본 준비가 완료된것이다 다음절에서 거론하.

게 될 와 를 이용하여 의 기본 환경을 구축하였으므로 기반은 다져QT QTPOIA PDA ,

진것이라 할수 있겠다.

Page 17: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 17 -

기본 파일 시스템을 직접 구축하여 보았으나 버그가 너무 많아서 그것을 일일이,

디버깅 할수 있는 시간이 없었으므로 파일시스템은 보드 제조사에서 제공하는 것,

을 이용하였다.

제 절제 절제 절제 절2 QT2 QT2 QT2 QT

1. QT1. QT1. QT1. QT

리눅스나 유닉스에서 용 프로그램을 개발하려면 많은 지식이 필요하다X-window .

이를 보완하기 위해 많은 것들이 나왔지만 그 중에서 대표적인 것이 에서 사용KDE

하는 와 의 툴킷이다 이 외에도 많은 사람들이 들어 보았을 만한Qt GNOME GTK+ .

것들을 열거하면 Python(http://www.python.org), LessTif(http://www.lesstif.org),

M o t i f ( h t t p : / / w w w . o p e n g r o u p . o r g / t e c h / d e s k t o p / m o t i f ) ,

tk(http://sunscript.com/techcorner 등이 있다) .

는 리눅스의 데스크탑 환경에서 과 함께 두가지 흐름 중의 한 줄기로KDE GNOME

거대한 응용프로그램들과 라이브러리의 집합체 이다 는 단순한 윈도우 매니저. KDE

수준을 넘어서 완전한 데스크탑 환경을 제공하기 때문에 콘솔 환경에 익숙하지 않

은 많은 사용자들을 리눅스 환경으로 불러들였다 는 사에서 만든. KDE Troll Tech

라는 라이브러리를 사용했다 하지만 는 라이센스 문제가 있었다 이는 프QT . , Qt . Qt

로그램이 을 따르지 않고 의 소스를 함부로 고칠 수 없었기 때문이다 따라GPL , Qt .

서 만을 고집하는 개발자들은 완전히 자유로운 환경의 프로젝트를 생각하게, GPL

되었으며 이런 이유로 만들어진 것이, GNOME(GNU Network Object Model

프로젝트이다Environment) .

는 다음과 같은 특징이 있다Qt .

기반o C++

는 로 만들어졌으며 그 구조는 와 비슷하다 따라서 기존의 개발o Qt C++ MFC . C

방식에 비해서 훨씬 쉽고 기능 확장이 편리해서 생산성이 높다, .

객체 지향o

라이브러리는 모듈화와 구성물을 재활용 가능하도록 초점을 맞춰서 설계되었o Qt ,

다.

멀티 플랫폼o

는 앞서 살펴본 것과 같이 윈도우에서 유닉스까지 다양한 플랫폼을 지원하o Qt MS

므로 플랫폼을 바꾸더라도 소스를 수정해야 하는 번거로움이 줄어든다, .

Page 18: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 18 -

o Signal & Slot

은 에서 제공하는 이벤트 처리 모델이다 이것을 사용해서 객체o Signal & Slot Qt .

간의 통신이 가능하고 복잡한 함수를 만드는 부담을 줄일 수 있다, Callback .

국제화o

는 비트인 유니코드를 완벽히 지원한다 또한 다양한 변환 규격과 지역o Qt 16 . ISO

화 를 지원한다 인터페이스에 사용되는 모든 문장은 메시지 변환 테이(Localization) .

블을 통해 해당 지역 언어로 바꿀 수 있다.

풍부한o API

는 여개의 클래스를 지원하며 각 클래스에는 를 위한 함수와 템플o Qt 250 C++ GUI

릿 기반의 파일 장치 디렉토리 관리 및 다양한 종류collection, serialization, , I/O ,

의 를 지원한다API .

안정성o

는 에서 모든 것을 관리하므로 공개된 다른 툴킷에 비해 훨씬 안o Qt Troll Tech , X

정적이다 또한 부터는 에 등록되어 관리되기 때문에 개발중인 소스. Qt 2.0 CVS Qt

를 그대로 받아볼 수도 있다 의 설치는 트롤 테크의 다운로드 페이지. Qt

(http://www.troll.no/dl 에서 다운 받을 수 있지만 대부분의 리눅스 배포본에 포함)

되어 있기에 설치에 대해 특별히 언급하지 않겠다.

설치설치설치설치2.2.2.2.

현재 대부분의 리눅스의 윈도우즈로 를 많이 사용하고 있다 임베디드X-WINDOWS .

시스템을 위한 윈도우즈도 나와있다Tiny-X .

에서 제공한 보드에는 윈도우를 탑재하여 나와 있지만 한글이Hybus Target Tiny-X ,

지원이 안되는 상황으로 인해서 윈도우즈 시스템을 다른걸로 교체하였다, .

여기에 사용한 것이 위에 소개한 이며 홈페이지의 소스를 다운로드QT , Trolltech

하여 으로 크로스 컴파일하였다 리눅스를 지원하기 때문에 간단한 명령어로Arm .

컴파일이 가능하다 의 매뉴얼을 참조하면 컴파일 하는 명령이 나와 있다. QT .

제 절제 절제 절제 절3 Qtopia3 Qtopia3 Qtopia3 Qtopia

는 를 위해 사에서 만든 툴킷이다 기존의 윈도우 매니저를 포Qtopia PDA TrollTech .

함하고 있으며 의 가장 기본적인 프로그램들이 포함되어 있다 일정관리 게임, PDA . ,

등 이 프로그램을 이용하여 따로 프로그램을 작성하지 않고 를 구성할수 있으, PDA

며 기본적으로 스크린 키보드와 문자 입력 시스템이 포함되어 있다 위의 와 같, . QT

이 이 를 크로스 컴파일하여 보드에 올려 사용하였다QTOPIA .

Page 19: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 19 -

역시 와 같이 매뉴얼이 제공되어 매뉴얼 대로 와 함께 컴파일 하여QTOPIA QT QT

사용하였다.

<Qtopia><Qtopia><Qtopia><Qtopia>

Page 20: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 20 -

장 온라인 주문 시스템장 온라인 주문 시스템장 온라인 주문 시스템장 온라인 주문 시스템3333

제 절 전체 구성제 절 전체 구성제 절 전체 구성제 절 전체 구성1111

개념도개념도개념도개념도

온라인 주문 시스템이란 를 이용하여 음식이나 기타 제품을 주문할수 있는 세PDA ,

스템을 말한다 이 프로그램은 클라이언트 프로그램과 클라이언트 프로그램. PDA PC ,

서버로 구성되어 진다 프로그램의 내용은 사용자가 음식을 주문할때 전화MYSQL . ,

를 이용하지 않고 를 사용하여 주문하는 프로그램으로 의 응용프로그램을, PDA PDA

시작하여 로그인을 하게 되면 음식점들의 목록이 나타나게 된다 이중에서 소비자, .

가 원하는 음식점을 선택하여 들어가게 되면 메뉴가 보인다 메뉴 선택후 수량과. ,

함께 주문을 하게 되면 음식점의 클라이언트 프로그램에 표시가 되고 이후 주, PC ,

문한 메뉴가 배달될수 있는 프로그램이다.

제 절 클라이언트제 절 클라이언트제 절 클라이언트제 절 클라이언트2 PDA2 PDA2 PDA2 PDA

에 올라가는 프로그램으로써 각종 상품을 주문할수 있는 프로그램이다PDA , . PDA

를 이용하여 상품을 주문할수 있는 기능이 구현되어있다.

Page 21: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 21 -

이 프로그램은 라이브러리를 사용하여 프로그램되었다 기본적으로 상점목록QT . , ,

제품 목록 장바구니 주문목록 기능이 구현되어 있으며 차후에 검색기능등 기타, , ,

기능을 구현 할 예정이다.

서버의 데이터 베이스와 연결하기 위해 방식의 네트워크를 사용한다 이 프TCP/IP .

로그램에서 직접적인 데이터 베이스 접속은 하지 않으며 방식의 네트워크를, TCP/IP

통해 서버의 프로그램과 통신하여 서버 프로그램이 데이터베이스에서 입출력한 정,

보를 통신을 사용하여 입출력하여 화면에 표시하게 된다.

이 프로그램의 중요 소스 코드들을 골라내어 첨부하였다.

클라이언트클라이언트클라이언트클라이언트<PDA ><PDA ><PDA ><PDA >

제 절 서버 프로그램제 절 서버 프로그램제 절 서버 프로그램제 절 서버 프로그램3333

리눅스 서버가 설치된 컴퓨터에서는 서버 프로그램을 작성하였다 이HOST MYSQL .

프로그램은 클라이언트 프로그램에서 데이터를 수신하여 각 상황에 맞는 쿼리PDA

를 데이터 베이스에 수행하여 얻어진 결과를 클라이언트로 다시 송신하MYSQL PDA

는 프로그램이다 를 사용하여 프로그램 하였고 를 사용하여 컴파일하. Linux C , gcc

였다.

프로그램의 중요 부분의 소스코드를 첨부하였다.

제 절 클라이언트제 절 클라이언트제 절 클라이언트제 절 클라이언트4 JAVA4 JAVA4 JAVA4 JAVA

Page 22: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 22 -

클라이언트 프로그램은 상점에서 사용할 프로그램으로 에서 주문한 일과JAVA , PDA ,

메뉴 입력등 상점에서 필요한 기능들을 수행하는 프로그램이다 이 프로그램은, .

를 사용하여 작성하였으며 원격으로 직접 에 접속하여 데이터를 송 수JAVA , MYSQL /

신 하게 된다 의 를 사용하여 작성되어 원격으로 직접 서버의 데. JAVA MYSQL API

이터 베이스에 접속된다.

클라이언트에서 제품을 주문하면 상점 클라이언트에서 이 정보를 서버를 통해PDA ,

전송받아 주문된 상품을 출력하여 상품을 배달할수 있도록 하는 프로그램이다, .

이프로그램에서는 주문 내용을 볼수 있으며 메뉴를 추가 수정 삭제할수 있다 또한, / / .

상점의 기본적인 정보를 입력하게 하여 클라이언트에서 이 상점의 배너 및 약, PDA

도를 출력할수 있게 하고 주소 또한 출력할수 있게 하였다, .

소스의 중요 코드를 첨부하였다.

자바 클라이언트자바 클라이언트자바 클라이언트자바 클라이언트< >< >< >< >

Page 23: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 23 -

제 장 무선 인터넷 및 플래시 메모리제 장 무선 인터넷 및 플래시 메모리제 장 무선 인터넷 및 플래시 메모리제 장 무선 인터넷 및 플래시 메모리4444

제 절 무선 인터넷 디바이스 드라이버제 절 무선 인터넷 디바이스 드라이버제 절 무선 인터넷 디바이스 드라이버제 절 무선 인터넷 디바이스 드라이버1111

무선 인터넷은 타겟 보드에 장착되어 있는 방식을 사용하였다Hyper104 PCMCIA .

방식의 랜 카드도 변환기를 이용하여 연결할수 있다 드라이버는 기존CF . PCMPIA

에 나와 있는 를 사용하였으며 그 외에 모듈과 유틸리티PCMPIA-CS , AP BRIDGE ,

주소변환 유틸리티 등을 사용하여 이 보드로 로도 사용할수 있, Hyper Access Point

도록 하였다.

소스 프로그램 다운로드소스 프로그램 다운로드소스 프로그램 다운로드소스 프로그램 다운로드1.1.1.1.

소스 프로그램이 있는 페이지는 다음과 같다.

무선랜카드 드라이버- : http://prdownloads.sourceforge.net/pcmcia-cs

모듈- AP : http://hostap.epitest.fi/releases/

유틸리티- Bridge : http://bridge.sourceforge.net/download.html

주소변환 유틸리티- (NAT) : http://www.iptables.org/downloads.html

서버 및 클라이언트-DCHP : http://udhcp.busybox.net

설치하기 위한 커널 수정 및 컴파일설치하기 위한 커널 수정 및 컴파일설치하기 위한 커널 수정 및 컴파일설치하기 위한 커널 수정 및 컴파일2.2.2.2.

이 무선랜카드 드라이버 및 기타 프로그램을 사용하려면 커널을 재 컴파일해야 한

다 커널의 설정부분중 추가해주어야 할 부분은 와. PCMCIA/CardBus support

부분을 추가하고 커널을 재 컴파일하여 보드에support bot-pluggable devices ,

해야 한다Upload .

커널 컴파일 설정 부분-

Page 24: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 24 -

설치설치설치설치3.3.3.3.

위의 소프 프로그램들을 크로스 컴파일러를 이용하여 용으로 크로스 컴파일하Arm

여 사용하여 구현하였다.

가 무선 랜카드 모듈 설치가 무선 랜카드 모듈 설치가 무선 랜카드 모듈 설치가 무선 랜카드 모듈 설치. PCMCIA. PCMCIA. PCMCIA. PCMCIA

Page 25: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 25 -

나 모듈 설치나 모듈 설치나 모듈 설치나 모듈 설치. AP. AP. AP. AP

다 브릿지 유틸리티 설치다 브릿지 유틸리티 설치다 브릿지 유틸리티 설치다 브릿지 유틸리티 설치....

Page 26: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 26 -

라 주소변환 유틸리티 설치라 주소변환 유틸리티 설치라 주소변환 유틸리티 설치라 주소변환 유틸리티 설치....

마 클라이언트 및 서버 설치마 클라이언트 및 서버 설치마 클라이언트 및 서버 설치마 클라이언트 및 서버 설치. DHCP. DHCP. DHCP. DHCP

결과결과결과결과4.4.4.4.

위의 프로그램들을 설치하여 노트북의 무선랜카드와 함께 실험해 보았다 노트북의.

무선랜카드와 같이 잘 동작하였으며 일반 처럼 사용할수 있었다, AP .

제 절 플래시 메모리 디바이스 드라이버제 절 플래시 메모리 디바이스 드라이버제 절 플래시 메모리 디바이스 드라이버제 절 플래시 메모리 디바이스 드라이버2222

플래시 메모리는 현재 타겟보드의 메모리의 여유가 많지 않아서 위에서 컴파일한

와 를 올리기에는 많이 부족하다 이것을 해결하기 위해 로 플QT Qtopia . PCMCIA CF

래시 카드를 설치하여 사용하였다 와 변환기를 사용하여 플래시 카. PCMCIA CF CF

드를 슬롯에 장착하여 사용하였으며 드라이버는 위의 무선랜카드 드라이PCMCIA ,

버인 에 플래시 카드의 드라이버가 포함되어 있으므로 이 드라이버를PCMCIA-CS

사용하였다 드라이버를 크로스 컴파일 하여 생성된 플래시 메모리 드라이. PCMCIA

버를 커널에 적재하여 사용하였다.

Page 27: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 27 -

장 적용기술 및 기대효과장 적용기술 및 기대효과장 적용기술 및 기대효과장 적용기술 및 기대효과5555

제 절 적용기술제 절 적용기술제 절 적용기술제 절 적용기술1111

임베디드 시스템의 기술임베디드 시스템의 기술임베디드 시스템의 기술임베디드 시스템의 기술1.1.1.1.

임베디드 시스템을 기본적으로 구성하는 기술을 습득하였다 직접 작업을 하지. PCB

는 않았지만 간접적으로 를 제작하였다는 기분으로 처음부터 하나하나 다 해, PCB

봄으로써 임베디드 시스템을 구축할수 있다 보드의 메모리 맵으로부터 시작하여, . ,

전체적인 부분에 이르기까지의 모든 부분을 습득하였다.

2. QT/E2. QT/E2. QT/E2. QT/E

를 구현하기 위해 를 선택하였다 는 사에서 만Embedded GUI QT/E . QT/E TrollTech

든 로 된 및 기반 툴킷이다 를 리눅스로 크로스 컴파C++ Embedded PC GUI . QT/E

일하여 탑재하였으며 온라인 주문 시스템도 라이브러리를 사용하여 작성하였, QT/E

다 는 리눅스를 지원하기 때문에 리눅스로의 포팅이 쉬우나 터치패드는 수정. QT/E ,

을 해주었다 처음에는 기반의 를 구축하려 하였으나. XWINDOWS GUI , XWINDOWS

기반의 를 구축하면서 많은 문제들에 부딪히게 되었고 해결할수 있는 시간이GUI , ,

없어서 를 채택하여 를 구현하였다QT GUI .

응용프로그램응용프로그램응용프로그램응용프로그램3.3.3.3.

응용프로그램인 온라인 주문 시스템에서는 리눅스를 이용한 프로그래밍 기법을 사

용하였다 환경이 였으므로 라이브러리를 이용하여 프로그램을 제작하였. GUI QT , QT

다 데이터 베이스에 접속하는 방법으로 직덥 접속을 선택하였으나 를. , MYSQL API

보드로 패치하는데 있어서 많은 문제점들이 발생하여 를 이용하여 네ARM , TCP/IP

트워크로 데이터를 전송하였으며 리눅스 서버에 로 받은 데이터를 이용하여, TCP/IP

데이터 베이스에 접속 데이터를 중계해주는 프로그램도 개발하였다 또 상MYSQL . ,

점에서 사용하는 프로그램으로 어떤 플랫폼에서도 실행이 가능한 자바를 사용하여

개발하였으며 여기에서도 자바의 를 사용하여 제작하였다, MYSQL API .

Page 28: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 28 -

제 절 기대효과제 절 기대효과제 절 기대효과제 절 기대효과2222

를 사용하여 프로그램 해본 결과 의 툴깃으로 쉽고 빠르게 응용프로그램을QT , C++

작성할수 있었다 우선 타겟 보드와 같이 를 구성하고 무료 운영체제인 리눅스. PDA ,

를 설치 한다 여기에 와 를 설치하면 기본적인 시스템이 구성이. QT/E QTOPIA PDA

된다 는 현재 자우르스가 사용하고 있는 로 그 성능이 인정되었다. QTOPIA GUI , .

위의 결과들과 를 사용하여 환경을 구축하고 를 이용하여 각종 응QTOPIA PDA , QT

용프로그램을 많이 개발한다 또 에 속해있는 많은 프로그램들도 로 포팅. , KDE QT/E

하여 많은 어플리케이션을 개발한다면 저 가격 로서의 상품가치가 뛰어날것으, PDA

로 기대된다.

Page 29: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 29 -

부록부록부록부록

참고문헌참고문헌참고문헌참고문헌

박재호 임베디드 리눅스 한빛 미디어(2002,11), " IT EXPERT",

허정수 아주 특별한 웹데이터베이스 베스트북(2001, 4)," MYSQL",

권상호외 영진닷컴(2003, 3),“UNIX&LINUX C Programming",

이연조 임베디드 리눅스 프로그래밍(2002, 5),“ ”, PCBOOK

김선형외 전자회로 및 설계 북스힐(2003, 3),“ PCB ”,

하이버스 개발 문서(WWW.HYBUS.NET 및 하이버스 웹사이트)

EZ HOWTO(WWW.FALINUX.COM) 및 웹사이트Falinux

온라인 주문 시스템 클라이언트 중요 소스 코드온라인 주문 시스템 클라이언트 중요 소스 코드온라인 주문 시스템 클라이언트 중요 소스 코드온라인 주문 시스템 클라이언트 중요 소스 코드PDAPDAPDAPDA

접속하는 함수◆

Page 30: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 30 -

데이터를 송신하는 함수◆

Page 31: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 31 -

서버 프로그램 중요 소스 코드서버 프로그램 중요 소스 코드서버 프로그램 중요 소스 코드서버 프로그램 중요 소스 코드

로그인 함수mysql◆

Page 32: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 32 -

Page 33: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 33 -

자바 클라이언트 소스 코드자바 클라이언트 소스 코드자바 클라이언트 소스 코드자바 클라이언트 소스 코드

로그인 함수◆

Page 34: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 34 -

Page 35: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 35 -

작품 및 전시회 참가 사진작품 및 전시회 참가 사진작품 및 전시회 참가 사진작품 및 전시회 참가 사진< >< >< >< >

필요하면 사진에 대한 설명 첨가( )

Page 36: 창의공학 시제품 제작 ( : EMBEDDED LINUX PDA과제명 SYSTEM)에 … · 임베디드시스템이란일반적으로개인휴대정보단말 지리정보시스템 의료정보,

- 36 -