커뮤니티 | 큐티/임베디드/큐토피아 | PODO | SDL | 마이크로윈도우 | 리눅스프로그래밍 | 기타 | 포인트순위 | 최근게시물최근게시물 RSS  
korone.net에 다루었으면 하는것은요?
 
 
 
 
 
364
641
3,878
3,337,889
  현재접속자 : 30 (회원 0)






배너 신청 문의

 
작성일 : 11-04-25 13:59
PODO 소개
 글쓴이 : korone
조회 : 7,855   추천 : 0  
   http://www.podovat.com [1485]
안녕하세요 PODO(http://podovat.com)의 조병완입니다.

1. 탄생배경
2004년부터 현재의 Qt사이트를 운영하며 일 적으로 임베디드 관련된 일을 주로하면서
Qt를 주로 사용을 해왔는데, Qt가 너무나도 편하고 좋지만 임베디드 특성상 Qt를 올리기 힘든 상황으로 포기를 하고 다른 대안을 찾아야만 했습니다.
주요한 이유는 다음과 같습니다.

  • CPU가 너무나도 느리다.
  • NAND가 아닌 저용량 NOR(16MB정도)를 사용해야 한다.
  • Qt에서 제공하는 많은 기능중 내가 쓰는것은 한정되어 있어 불필요 하다.

이에 Qt를 대체할만한 여러가지 다른 대안들을 이용하기 위해 검토를 했었지만

  • 사용법이 Qt보다 복잡한점.
  • 기술지원을 받을 만한곳이 없다는 점

이러한 점들이 저를 좌절시키게 만들었고
그리하여 직접 Qt와 비슷한 편의성을 가지면 아주 작은 메모리에서 동작될 수 있는것과
추후에 문제가 생겨도 제가 직접 기술지원을 할 수 있는 것을 만들어보자고 해서 시작한것이 PODO Framework 입니다.


2. 개발환경
처음부터 임베디드를 고려하여 설계를 했었기 때문에 Qt의 Cross Platform은 염두에 두지 않고 오로지 Linux Only개발환경에
맞추어서 개발을 하기로 마음을 먹었습니다.
그리하여 Linux Framebuffer기반위에서 Painting , Font Rendering , Image Processing, Keyboard, Mouse등의
루틴을 만들다 보니, 이게 생각보다 장난이 아니라는 생각이 들었습니다.
어차피 처음 개발부터 오픈소스화를 염두에 두었기 때문에 다른 오픈소스를 이용해서 쉽게 가자고 판단을 하였고
그 결과 SDL을 이용하여 위의 대부분을 처리하도록 이용하였습니다.
SDL을 올리고 나니 SDL자체가 Cross Platform이라는 것때문에 처음 생각했을때 임베디드 전용이니 Cross Platform이
필요없다라고 한 생각에서 약간 바뀌게 되었습니다.(현재는 아쉽지만 Mac에서 컴파일 및 동작이 되고, 윈도우는 아직이지만
추후에 시간이 되면 포팅해 볼 생각입니다.)


3. 주요기능
앞서 말한것처럼 PODO는 임베디드에서 쓰기 위해 만들어 졌으므로, 임베디드 기기 특성상 일반적인 GUI가 아닌 형태로
이루어지고 GUI대부분을 거의 대부분 이미지등을 씌운다든지 해서 새로만든다는것을 감안하여
되도록이면 최소한의 기능만을 유지하도록 만들었습니다.
그리해서 Widget, Button, Label등과 같은 아주 기본적인 콘트롤만 있고 나머지 콤보, LineEdit등은 모두 빼게 되었습니다.
만약에 추후에 넣는다고 하더라도, project파일에서 소스코드 1개만을 빼면 해당 기능이 제거되는것처럼
쉽게 Customizing하도록 할 생각입니다.

PODO의 주요 기능은 다음과 같이 세가지로 이루어져 있습니다.

  • base
  • gui
  • network

base는 Calendar, DateTime, Dir, File, Ini, Mutex, Thread, Process, String관련 클래스들도 이루어져 있고
linux 표준 system call과 std를 이용해서 구성되었습니다.

gui는 Widget, Button, Label, CheckBox등의 기본콘트롤고 Font, Image, Painter, Palette, Skin등의 화면을 다채롭게
꾸밀 수 있는 콘트롤을 구성하였습니다.

network은 Tcp, Udp, TcpServer등을 이용해서 간단히 network 을 사용할 수 있도록 하였습니다.
Qt Professional Service(http://podovat.com)



 
 

Total 3
번호 제   목 글쓴이 날짜 조회 추천
3 Hello world korone 04-25 7636 0
2 PODO 설치 korone 04-25 7681 0
1 PODO 소개 korone 04-25 7856 0


About korone.net | Copyright 2003 korone.net. All rights reserved.