본문 바로가기

Tizen

TIZEN : Zero-day 공격에 취약하고 최악인 소스 코드 한 이스라엘 보안 전문가에 의해 타이젠 소스 코드가 제로데이 공격에 취약하고 학부생에 의해 작성된듯한 최악의 코드라고 평가해서 각종 매체에서 떠들썩하다. 얼마나 문제가 있길래 최악의 소스코드라고 얘기하는지 궁금한데 전체 코드를 리뷰하기엔 무리여서 타이젠 git repo 중 프로젝트 하나를 살펴보았다. profile/tv/apps/native/filebrowser.git 위키리크스에 삼성 스마트 TV 해킹이슈도 있었고 해서 TV 관련한 repo를 선택. 코드만 봐서는 코딩 가이드라인이나 보안 검수가 없는 것 처럼 보인다. FbContextView.cpp Buffer Overflow에 취약한 strcpy사용. bool CContextView::_get_context_details(CExtNameInfo *p.. 더보기
새로운 바다/타이젠 폰은 내년(2013)에나 볼 수 있을 듯 (No more bada and tizen in 2012) SAMMOBILE 에 따르면, 올해안에 새로운 바다 및 타이젠 디바이스는 볼 수 없을 것 같다. 일전에 삼성측에서 타이젠과 바다와의 통합 작업을 올해안에 완료하고 타이젠 디바이스 출시가 이뤄질수 있도록 노력하고 있다라는 기사를 접했었는데 통합 작업이 녹록치 않은 탓도 있겠지만, 나름 탄력받은 안드로이드 갤럭시 라인업에 대한 집중과 윈도우폰에 신경쓰느라 바다와 타이젠에 대한 지원에 신경쓸 여력이 없는듯 하다. 실제, 바다 개발자 사이트에 Dev Tips 항목은 비교적 자주 업데이트 되는 반면, 타이젠 공식/커뮤니티 사이트의 경우(tizen.org, tizentalk.com, tizenexperts.com) 에는 근래 업데이트 되는 뉴스가 없다. 소스 업데이트가 이뤄지지도 않고 딱히 지원이 활발하지도 않으니.. 더보기
TIZEN UI의 심장, EFL (Enlightenment Foundation Libraries) Linux Foundation Collaboration Summit 2012 의 Tizen 세션에서 Tizen Native Display Layer인 EFL 의 아키텍쳐와 사용에 관한 발표가 있었다. 현재, 타이젠 아키텍트로 삼성에서 일하고 있는 Carsten Haizler 의 발표로 관련동영상 및 PPT 슬라이드가 공개되어 있다. EFL (Enlightenment Foundation Libraries)라이브러리 집합 (Collection of Libraries)EvasCanvas scene-graphsOpenGL, OpenGL-ES2.0, Software RendererDraw Anti-aliased text, scaled images, alpha-blend objectsEcoreLibrary of c.. 더보기
타이젠 1.0 Larkspur 에뮬레이터 실행 안되는 문제 (Emulator Crash on Tizen 1.0 Larkspur) 예전 타이젠 베타 버전에서는 생성되어 있던 디폴트 에뮬레이터 UI가 표시되지 않던 문제가 있었는데, 1.0 에서는 에뮬레이터가 크래쉬되는 문제가 발생했다. 최초 SDK 설치 후, 에뮬레이터 구동에 아무런 문제가 없었는데 금일 발생한 현상이라 적잖이 당황하던 참이었다. 혹시나 해서 SDK 재설치도 해보았지만 여전히 구동이 되지 않는다. SOLUTION 사용가능 메모리 부족 문제였다. 2GB 램에 포토샵, 비주얼 스튜디오가 떠 있는 상태에서 타이젠 IDE까지 실행을 시키니 메모리가 거의 바닥을 치고 있었는데, 이 상태에서 에뮬레이터를 구동시키니 따로 예외없이 크래쉬 되는 것이었다. 포토샵을 종료하고 대략 350MB 정도 사용가능 램을 확보해주니 문제없이 구동이 되었다. 더보기
갤럭시 S2 HD LTE 에 포팅된 타이젠 (Tizen on Samsung Galaxy S2 HD LTE) 타이젠 레퍼런스 프로토타입 디바이스에 이어, 샌프란시스코의 타이젠 개발자 컨퍼런스에서 갤럭시 S2 HD LTE 에 포팅된 타이젠 OS의 사진 갤러리, 영상 통화등의 시연이 있었다고 한다. 갤러리 시연의 경우, 반응 속도나 렌더링이 상당히 쾌적하여 당연히 네이티브로 구현된 앱이라 생각했는데 HTML5 기반 앱이라고 한다. 올해 1월경, 갤럭시 S3 에 안드로이드 대신 타이젠이 적용될 수도 있다는 루머도 있었기에 리눅스 커널 기반의 타이젠 OS가 갤럭시 S2 에 포팅되어 시연되었다는게 그리 놀랍지는 않지만, HTML5 기반의 웹앱으로 이정도의 성능을 보여준다는건 가히 충격적이다. 네이티브앱인데 웹앱이라고 구라를 쳤을 거라는 생각이 들 정도였다. 웹앱 성능을 그동안 너무 과소평가했던건지, 타이젠 OS가 훌륭한.. 더보기
Tizen 소스 코드 1.0 Larkspur 및 디바이스 공개 타이젠 베타 소스코드 및 SDK 공개 이후 예상보다는 단기간에 1.0 업데이트가 이뤄졌다. 2012/03/30 - [bada] - TIZEN 소스 코드 Beta 공개 및 지원된 Windows SDK(IDE) 리뷰git repo 만 비교해봐도 추가된 모듈이 제법 많다. 여전히 All-Project.git 는 Cloning 이 되질 않아 이전처럼 배치파일을 작성. 추가 및 삭제된 모듈은 diff 파일 참고. Tizen 1.0 Larkspur 주요 업데이트Simulator : Tizen API 지원하는 실행 및 디버깅 가능한 브라우저 기반의 시뮬레이터 제공IDE : 기능 향상 (템플릿, 디버깅 툴의 유연성)Emulator : 하드웨어 가속을 통한 두드러진 성능 향상Web : W3C/HTML5 스펙의 추가적인 .. 더보기
[bada] 앱크래쉬를 유발하는 'virtual' function 의 사용 Listener 인터페이스 추가가 필요한 구현 등의 virtual function 사용시 주의가 필요하다. pure virtual 로 지정해주거나 구현부가 존재하면 당연히 문제없이 빌드 및 실행이 되겠지만, 그렇지 않은 경우에는 빌드 에러없이 앱 인스톨 후 실행시점에서 바로 앱크래쉬가 발생한다. crashinfo.txt, stackFrame.txt 로그를 봐서는 해당원인을 찾을 수 없고, 해당 프로젝트가 어느정도 진행이 되면서 소스가 늘어난 상태라면 virtual function 문제임을 파악하기는 더 까다로워진다. PROBLEM 아래 코드의 경우, ThreadImplListener 의 OnRun 에서의 링크 에러 없이 정상 빌드되고, 앱 실행시 크래쉬 되는 문제가 발생한다. class ThreadImp.. 더보기
[bada] Speex 빌드 (Build Speex on bada) 아이폰 시리의 스피치 코덱으로도 사용되고 있는 오픈 소스 기반의 Speex 코덱은 다양한 플랫폼에서 사용되는 만큼 바다에서도 비교적 간편하게 빌드된다. 아직 configure 를 통한 바다 빌드는 공식적으로 제공되지 않고, Visual Studio 에서 사용되는 방식처럼 bada IDE 에서 Source Import 하여 몇가지 설정 및 코드 추가로 bada static library 생성이 가능하다. PREPARATION 현재 기준 최신버전인 speex-1.2rc1 소스를 이용하였고, bada IDE 에 추가될 소스 디렉토리는 include, libspeex 두개로 편의상 따로 복사하여 include 디렉토리는 inc 로 이름을 변경 해 두자. (inc 로 디렉토리 네임 변경 이유는, bada 프로젝트.. 더보기