꾸준히 자유롭게 즐겁게

저자
송우일 지음
출판사
인사이트 | 2013-10-24 출간
카테고리
컴퓨터/IT
책소개
“한국의 오픈 소스 개발자들 이야기”불과 10여 년 전만 해도 ...
가격비교 글쓴이 평점  

대한민국에서 유명한 오픈소스(Open Source)개발자 6인에 대한 인터뷰를 담은 책자 간략 소개 및 인터뷰 공개 링크를 올립니다.


이 책은 위에 쓴 것과 같이 "대한민국"에서 유명한 오픈소스(Open Source)개발자 6명에 대한 인터뷰를 담았습니다.

책의 내용을 보다보면 컴퓨터공학/과학 전공자가 보는데에 조금 어려운 내용이 담아있습니다. 기술전문용어가 많이 나오고 개인적인 경험과 느낌을 적다보니 해당 기술에 대해 관심있게 공부한 사람이 아닌 이상 이해가 안되는 게 종종 보이긴합니다

그래도 이 사람들이 오픈소스에 얼마나 열성적인지를 알수 있습니다. 책을 읽다보면 오픈소스 개발자가 얼마나 열정적인지 매력에 빠지게 되더군요.


이 책을 읽는 대상자가 개발자를 대상으로 한 것이라 그런지 일반인들이 보기엔 버거울거라 봅니다.  그래도 프로그래밍쪽으로 나가려는 대학 초년생이나 사회진출하는 개발자들이 읽으면 괜찮을 것 같습니다. 프로그래밍 초급,중급,고급자들이 봐도 재미가 있을듯 하다는 생각도 들구요.


오픈소스(Open Source)에 대하여 대부분의 사람들이 개념과 의식, 관심이 없을때 10년 이상 꾸준히 오픈소스에 매진하신 6명의 대가를 보면, 당장 돈은 안되지만 꾸준히 관심있기 재미있게 개발하는 걸 보고 존경심을 느끼군요.


책 내용은 출판사에서 인터넷으로 공개("꾸준히, 자유롭게, 즐겁게 : 한국 오픈 소스 개발자들 이야기(http://osdi.insightbook.co.kr)")를 했기때문에, 책을 구입해서 보셔도 되고, 인터넷으로 틈틈히 책을 보셔도 됩니다.



참고로, 저는 인터뷰를 담은 "꾸준히, 자유롭게, 즐겁게: 한국 오픈 소스 개발자들 이야기"에 나오는 6분 중 2분을 만나뵌적이 있었습니다.

예전 그놈 모임이나 2013년 그놈 아시아 행사에서 IRC의 #gnome채널의 "류창우님"과 유명한 개발자인 "허준회님"을 뵙던 사람이라 그런지, 이분들 뵙고 이야기 듣고보니 열정에 존경심을 표합니다. 그리고 제가 한국에서 유명한 오픈소스 개발자를 만난 남자구나를 느꼈습니다. ㅎㅎ

저도 노력하여 허태준님, 김정균님, 이희승님, 류창우님, 허준회님, 최준호님같은 유명한 오픈 소스 개발자가 되고 싶습니다. 


아래는 "꾸준히, 자유롭게, 즐겁게 : 한국 오픈 소스 개발자들 이야기(http://osdi.insightbook.co.kr)" 링크에 있는 내용을 복사 및 붙여놓기 한 것입니다.


Buy me a coffeeBuy me a coffee

유명한 개발자인 허준회님의 블로그에서


오픈소스 개발 참여, 저 만화에 나온것처럼 어렵지 않아요.

저 만화를 보다보면 "GStreamer에 10여개 패치를 제출한 한국인 개발자"가 나오는데, 이 분은 제 지인이신 가나초코렛(@ganadist)님입니다. 

그리고 허준회님과 같이 그놈 한국에 소속되어 있지요.

"역시나 천재개발자는 오픈소스에 열심히 참여하더라는 말이 사실이였군요"란 생각을 함.


오픈소스 개발에 참여하는 방법에 대한 만화를 보다보니, 제가 오픈소스 개발에 참여한 후기를 적어볼까 합니다


우연히도 파이썬이라는 것을 배워볼까해서 스터디 그룹에 참여해본적이 있었습니다.

여기서 가나초코렛님을 만나게 되었고, 가나초코렛님은 저에게 파이썬을 알려주신 분으로써, 오픈소스 프로젝트에 참여하는 방법을 알려주신 고마운 분입니다.

스터디하던 그룹에서 오픈소스 개발자로 이름을 날리던 가나초코렛님께서 파이썬을 가지고 우분투(Ubuntu) 리눅스의 기본 SNS프로그램인 Gwibber에서, Gwibber-me2day플러그인을 만들어보자라는 프로젝트를 제안하고, 그룹원들이 서로 같이 개발을 해본적이 있었지요.

파이썬(Python)을 모르던 저가 오픈API와 연결하여 데이터 받기를 해보다, 파이썬(Python)이라는 언어가 정말 재미있는 언어구나를 그당시에 느끼게 되었죠.

그룹원들과 파이썬으로 Gwibber-Me2day플러그인을 만들다보니,  저는 다음에서 제공하는 URL축약 서비스인 durl.me 서비스에 대해서 플러그인 만들어볼까란 생각을 갑자기 하게 되더군요.

이분덕택에 저도 Gwibber에서 durl.me URL축약서비스를 제공하는 플러그인에 대한 파이썬 코드를 작성을 한 후에, 멋도 모르고 형상관리 툴인 bzr라는 툴로 파이썬 코드를 커밋하였습니다. (일 제대로 저질렸음)

2011년 2월 16일에 커밋하고, 약 2년 후에 내가 만든 파이썬 코드가 리뷰후에 승인되었을때의 희열감은 정말 어찌말로 표현할수가 없어요. 전세계 사람들이 드디어 제가 만든 파이썬 코드(Python Source code)를 쓴다는 그 생각을 하면 너무 기뻐서요 >.< 

(커밋을 한 이후, 쭉 바쁘게 지내다보니, 승인 메일 받기 전까지 파이썬 소스코드를 제출했었는지 기억도 없었음)



위의 화면갈무리는 제가 커밋한 파이썬 소스코드가 승인되어 전세계 사람들이 제가 만든 파이썬 코드를 사용할수 있게되었다는 결과 이메일입니다.


위의 이메일 내용을 보고, 저는 드디어 전세계 사람들에게 인정받는 오픈소스 개발자가 되었어요!


오픈소스 개발에 참여하는 방법은 오픈소스 소프트웨어가 어떤 내용일지를 뜯어보는 호기심과 개선해보겠다는 열정이 있으면 참여할수 있습니다.

처음에는 오픈소스 개발하는게 거창하고, 진입장벽이 높다라는 것을 느끼게 되지만, 점점 열심히 파보다보면 진입장벽을 뛰어넘어, 어느새 오픈소스 개발자라는 타이틀을 얻게 되는 자신을 느끼게 될것입니다.

오픈소스 개발은 자기 재능을 향상시키기에 딱 좋습니다. 시간 투자하여 오픈소스 개발해보시겠습니까? 


ps. 가나초코렛님과 같이 만들었던 Gwibber-Me2day플러그인은 커미터에게 반려되어서 소스코드에 적용이 되지 않았습니다. ㅠㅠ 

ps2. 이제 올해 6월달에 미투데이 종료되기때문에, 반려된걸 오히려 다행으로 여겨야 할지도?

ps3. 오랜만에 작성한 개발 글입니다. 그런데 개발 글인데 자기 자랑만 -_-;;

ps4. Python개발 해보고 싶은데, Java보다는 Python개발을 하고 싶은 1인. 근데 Python개발을 하고 싶으면 이직해야하나...

Buy me a coffeeBuy me a coffee

저의 지인이며 비밀 스터디의 주도권을 가지고 계신 ganadist님께서 안드로이드 빌드 툴을 GTK와 Python기반으로 개발하셨다고 합니다.

아래는 저의 컴퓨터에서 실행한 화면으로 아직 Android Source kit을 받지 않았기 때문에 설정화면이 이상하게 되었군요.


(제대로 동작하는 화면의 경우는 그분의 동의를 받지 못해서 올리지 못하고, 주말 쯤 제가직접 프로그램 돌리는 스크린샷을 올리겠습니다.)


소스는 https://github.com/ganadist/abuild 에서 받을 수 있습니다.

안드로이드(Android)를 처음 접하는 초보자들도 쉽게 빌드 할수 있도록 GTK기반으로 UI를 구성한 후, 작성하였다고 합니다.


이 프로그램의 요구사항은 GNOME 3.0 개발환경에 맞게 만들어졌기 때문에 GTK+-3.0 이상이 설치되어야 한다고 나와 있군요. (GTK+-2.0과 GTK+-3.0간 호환성이 없다보니..)


* Requirements
	- python 2.6 or higher
	- pygobject 2.90 or higher
	- gtk 3.0 or higher with gobject-introspection
	- vte 2.90 or higher with gobject-introspection


실행방법

git으로 소스트리(참고 - https://github.com/ganadist/abuild  )를 받은 후 ./abuild를 실행하면 됩니다. 단 안드로이드 커널 소스를 미리 받으셔야 합니다.


* How to run?
	- change directory to source
	- run ./abuild
	 . need to fix for deployment
	- click "Source Top" button and select android source directory
	- if source directory has valid contents, "Build", "Product",
	  "Variant" button will be enabled
	  . TIP: If you set TOP shell environment and that is android
	    source directory, it will be set as "Source Top" directory
	- select check buttons and press "Build" button


ps. 제대로 빌드하는 모습을 다음 일요일에 제대로 된 실행화면을 블로그로 업로드할 예정입니다.

Buy me a coffeeBuy me a coffee


HTC Desire에 커스텀 롬을 계속 설치하고 엎어버리고를 반복하다.. 심심했습니다.

명색이 컴퓨터공학과 4년공부하고 대학원 수료한 학생인데, Android Source를 빌드해서 휴대폰에 올려볼까란 생각에 갑자기 안드로이드 소스를 XDA-Developers 에서 찾기 시작하였습니다.


여러가지 안드로이드 소스들 중에서 저는 CyanogenMod 를 선택하여 컴파일 하기로 하였습니다.

저는 Ubuntu 10.10 32bit 컴퓨터(구입한지 6년된 ThinkPad R52)에서 CyanogenMod컴파일을 하게 성공하였습니다.


처음에 맥북프로에서 컴파일 하다보니 아래와 같은 에러로 인하여 포기하였습니다. 아 SnowLeopad 가 64비트라서 32비트로 컴파일하다 Linking문제가 생겼나 봅니다 -ㅁ-

Install: out/host/darwin-x86/bin/dictTest

host Executable: emulator (out/host/darwin-x86/obj/EXECUTABLES/emulator_intermediates/emulator)

ld: illegal text reloc to DwarfCUImpl<Dwarf_CUHdr<Dwarf32_SizeHdr, unsigned int>, unsigned int>::get_pc_address_file_info(unsigned long long, Dwarf_AddressInfo*)from out/host/darwin-x86/obj/STATIC_LIBRARIES/emulator-elff_intermediates/emulator-elff.a(dwarf_cu.o) in anon for architecture i386

collect2: ld returned 1 exit status

make: *** [out/host/darwin-x86/obj/EXECUTABLES/emulator_intermediates/emulator] Error 1


Ubuntu에서 Android 2.3.3. Gingerbread OS탑재된 CyanogenMod 컴파일 하여 아래와 같은 결과를 만들었고, 에뮬레이터에서 실행해보니 잘 돌아갑니다.

Generated: (out/target/product/generic/android-info.txt)

Target system fs image: out/target/product/generic/obj/PACKAGING/systemimage_intermediates/system.img

Install system fs image: out/target/product/generic/system.img

Target ram disk: out/target/product/generic/ramdisk.img

Target userdata fs image: out/target/product/generic/userdata.img

Installed file list: out/target/product/generic/installed-files.txt

studioego@studioego-laptop:~/android/system$ 

컴파일 성공하면 위의 메시지가 나옵니다 ㅎㅎ

아래는 컴파일 후 에뮬레이터를 이용하여 결과물을 실행한 화면입니다. 잘 돌아갑니다.

Emulator 실행 화면


Gingerbread가 탑재된 CyanogenMod

에뮬레이터에 볼수 있는 Android 2.3.3 정보 1

에뮬레이터에 볼수 있는 Android 2.3.3 정보 2


본인이 빌드를 했으면 빌드 번호에 본인 이름의 컴퓨터와 컴파일 한 날짜가 들어갔을겁니다. ㅎㅎ

Cyanogen_generic-eng 2.3.3. GINGERBREAD eng.studioego.20110327.012445 test-keys


Android Source컴파일하여 에뮬레이터로 올리는 방법을 알았으니 이제 HTC Desire에 CyanogenMod 소스코드를 올리는 것도 올리겠습니다. 

이후에 저만의 커스텀롬 올리는 방법과 Android Source분석도 올릴예정입니다.

Buy me a coffeeBuy me a coffee
  1. 이전 댓글 더보기
  2. Favicon of http://www.houstonoverheaddoors.com/ BlogIcon Garage Doors in Houston 2012.03.24 19:54

    great points altogether, you just gained a new reader. What would you suggest in regards to your post that you made some days ago? Any positive?

  3. Favicon of http://www.houstonoverheaddoors.com/ BlogIcon Garage Doors in Houston 2012.03.24 19:55

    Provide information as requested on the petition including the names of both parties and any involved children, address of both households and date of marriage and separation. Indicate any issues that require a temporary order from the judge such as spousal or child support, custody and residence of marital property. Thanks.

  4. Favicon of http://www.ideserveavacation.com BlogIcon Walt Disney World holidays 2012.03.25 14:39

    Very informative article regarding renting an apartment..Amazing execution of the blog..Keep up the good work..

  5. Favicon of http://www.xbroshost.com/ BlogIcon vps hosting 2012.03.26 11:02

    Interesting post and thanks for sharing. Some things in here I have not thought about before.Thanks for making such a cool post which is really very well written.will be referring a lot of friends about this.Keep blogging.

  6. Favicon of http://www.xbroshost.com/ BlogIcon alertpay hosting 2012.03.26 13:24

    I declare that we have of visitors are actually quite blessed to live in a great community with so many people with perfectly precious plans. I feel really happy to have found web pages and hope that many minutes more pleasant to read here

  7. Favicon of http://www.xbroshost.com/ BlogIcon linux shared hosting 2012.03.26 15:47

    Except Jeremy Smith played for the Storm until 2008 and Mason was actually apart of the Roosters loss, unlike he was with the Bulldogs and Cowboys. Not much of a coincidence.

  8. Favicon of http://inflatabledrivein.com/ BlogIcon inflatable movie screen 2012.03.26 17:02

    Post is nicely written and it contains many good things for me. I am glad to find your impressive way of writing the post. Now it become easy for me to understand and implement the concept. Thanks for sharing the post.

  9. Favicon of http://inflatabledrivein.com/ BlogIcon inflatable screen rental 2012.03.26 19:52

    Other items included with these handbags are the serial numbers and a dust bag to store the bag. In possession of professional technocrat team, sales executives and personnel, we strive to working collectively towards the goal of taking

  10. Favicon of http://inflatabledrivein.com/ BlogIcon outdoor movie screen rental 2012.03.26 21:46

    I have just started going to a gym and my instructor is asking me to take protein supplements. I am not sure whether they are steroids or not. And secondly, I am a strict vegetarian so i was hoping if you could give me any details on what to eat. Without the meat and eggs of course

  11. Favicon of http://onlinediscountelectronicsstore.com BlogIcon Buying electronics online 2012.03.27 19:38

    Connect with Samsung Smart TV for a wealth of added entertainment options. The UN32D6000features Samsung's Smart Hub, a simple menu system for connected features. Easily search for movies, shows and videos via online services and across connected devices, chat with friends, and access a wide variety of apps from Samsung Apps.

  12. Favicon of http://www.pharmonnet.com/ BlogIcon viagraonline 2012.03.28 12:38

    This is purely a business if you want to earn something you will have to reduce the price of the product to sell it and offer some attractive discount or gift cards to the consumer...so that long-term profit can be gained...

  13. Favicon of http://www.pharmonnet.com/ BlogIcon viagraonline 2012.03.28 12:38

    This is purely a business if you want to earn something you will have to reduce the price of the product to sell it and offer some attractive discount or gift cards to the consumer...so that long-term profit can be gained...

  14. The thing is that if I cosplay Mad Moxxi, I would have to make it as non slutty as possible cuz, well.

  15. Favicon of http://www.lovemessage.org/ BlogIcon love message 2012.03.28 16:19

    the first chapter or so is pretty decent. The case for a 'brand bubble' is presented effectively. After that, the book seemed to lose traction.

  16. Favicon of http://www.government-grant.biz/community-grant BlogIcon federal government grants 2012.03.28 17:30

    Your Post is very useful, I am truly happy to post my note on this blog..

  17. Favicon of http://www.helpmykneepain.com BlogIcon Dallas Knee Doctor 2012.03.28 19:26

    An interesting blog. I'm not mistaken of thinking that Korea has its path in technology. Koreans are great.

  18. Favicon of http://www.internet-marketingservice.com BlogIcon Internet Marketing Service 2012.03.29 14:29

    I love Android phones. These have great features.

  19. Favicon of http://www.gradshop.com/academic-regalia/masters-degree/gowns.html BlogIcon Masters robe 2012.12.29 11:23

    I am student with no real income, at least till i graduate, and eBay is the sole reason I can accomplish anything. eBay is an excellent source for everything, pretty much, and especially robotic parts. Given you know what you are looking for, your very likely to find the best prices on eBay.

  20. Favicon of http://www.gradshop.com/college-graduation.html BlogIcon university regalia 2012.12.29 13:51

    I have learn this submit and if I may just I wish to suggest you some fascinating things or tips. Perhaps you could write subsequent articles referring to this article. I wish to read even more things about it!

  21. Favicon of http://www.gradshop.com/college-graduation/bachelors/gowns.html BlogIcon college graduation gowns 2012.12.29 16:32

    if the robot believes he has the right to kill the man then he does have the right and if the man feels he has the right to kill the robot then he too has the right.Other people on the outside of the fight can argue until they are blue in the face about it

관련글
KLDP돌아가시기전에 patch를 반영하신 아버지 이야기

원문
https://bugzilla.gnome.org/show_bug.cgi?id=78514#c19


아들이 아버지가 돌아간 다음날 적은 글

Ian Hands 2011-02-04 01:47:30 UTC
I would like to extend my thanks to the gnome team/community for a great last
moment with my dad.

Adrian Hands (my father) wrote the patch above to improve the usability of
gnome for himself and others. You see my dad was suffering from ALS and his
hands were so crippled he could no longer use a keyboard. Thus we used a Darci
usb morse code keyboard emulator to help him type. Even the morse code device
was a struggle as the sensitivity adjustment and positioning of the nice two
paddled key would fall out of whack. I rigged up a pvc cage that wrapped around
his knee and fixed remote switches to the cage so that he could use the
remaining strength in his legs to operate the Darci morse code device. He used
this last bit of body movement to write this patch.

Here is a photo of him using it:
https://picasaweb.google.com/HandsAdrian/ShotwellConnect#5549467460761802914

My father passed away yesterday. I went back through my email to find our last
correspondence (he was in India for treatment, and I live in Raleigh). I would
like to share the email with you.
<email>
On Sun, Jan 30, 2011 at 12:16 PM, Adrian Hands <handsadrian@gmail.com> wrote:
> ACCEPTed
> COMMITed
> RESOLVEd
> BOO-YAH!
>
> commit 0b209b1ff16e863e60a1d86413aa57c5fbde76b0
> Author: Adrian Hands <handsadrian@gmail.com>
> Date:   Fri Dec 31 14:34:58 2010 +0100
>
>    Add Copy Image and Copy Path to clipboard functionality
>
>    Fixes bug 78514.
>
>  data/eog-ui.xml  |    9 +++++++
>  src/eog-window.c |   63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 72 insertions(+), 0 deletions(-)

I have the coolest Dad in the world!
</email>

I am so glad that my last comment to my Dad was something like this.

Adrian Hands loved free software / open source. I do as well.

Thanks so much for the great software, and a new great memory.
-Ian Page Hands

번역

아래는 제가 위의 글을 간단하게 번역한 것입니다.

나는 그놈(GNOME)팀 커뮤니티분들 덕택에  아버지와 마지막 최고의 순간을 고맙게 여기고 연장하고 싶습니다.


Adrian Hands (나의 아버지)는 자기 자신과 다른 사람들을 위해 GNOME(그놈)의 사용향을 더욱 향상시킬수 있는 패치를 작성하였다.

당신을 내 아버지가 루게릭병(ALS)을 앓고 있었고 그의 손은 장애로 인해 그는 더이상 키보드를 사용할수 없다는걸 볼수 있다.

그래서 우리는 그의 키보드 작성을 도와줄수 있는 Darci usb morse code keyboard(특수 키보드, 다르시 USB 모르스 부호 키보드) 에뮬레이터를 사용하게 되었었다. 심지어 모르스 코드 장치와 감도 조정으로 몸부림을 쳤었고, 2개의 패들 키의 위치는 세게 쳤어야 했다.

나는 그의 무릎주위로 덮는 pvc 장비 을 갖추었었고,  아버지가 Darci morse code 장치를 작동하기 위해 다리에 남겨진 힘을 사용할수 있도록 원격 스위치를 고정시켰다. 

그는 신체 운동의 마지막 부분을 이 패치를 작성하는데에 사용하였습니다.

아래 아버지가 Darci morse code 장비로 사용하는 사진입니다.

https://picasaweb.google.com/HandsAdrian/ShotwellConnect#5549467460761802914

나의 아버지는 어제 돌아가셨습니다. 나는 그 패치의 마지막 응답을 찾아 내 메일로 통하여 되돌아갔었다. (그는 치료를 위해 인도에 있었고 나는 Raleigh에 산다). 나는 사람들에게 아래의 이메일을 공유할 것입니다.

<이메일>

>2011년 1월 30일 일요일 오후 12시 16분, Adrian Hands작성

>수락되었다

>커밋되었다

>해결되었다

>부-야!

(아래는 Adrian Hands가 작성한 패치가 수락되어 반영되었다는 메시지입니다. 굳이 번역할 필요가 없어서 원문으로 두었습니다.)

>

> commit 0b209b1ff16e863e60a1d86413aa57c5fbde76b0

> Author: Adrian Hands <handsadrian@gmail.com>

> Date:   Fri Dec 31 14:34:58 2010 +0100

>

>    Add Copy Image and Copy Path to clipboard functionality

>

>    Fixes bug 78514.

>

>  data/eog-ui.xml  |    9 +++++++

>  src/eog-window.c |   63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++

>  2 files changed, 72 insertions(+), 0 deletions(-)


나는 이 세상에서 최고로 멋진 아버지를 가졌다.

</이메일>


나는 아버지가 좋아하는 것에 대한 마지막 코멘트에 이런 것이 있다는것이 정말 기쁩니다.

Adrian Hands는 공개 소프트웨어와 오픈소스를 좋아하였고 나 또한 그렇습니다.

이 거대한 소프트웨어에 대해 너무 고맙습니다, 새로운 멋진 추억이 있습니다.
 -Ian Page Hands (Adrian Hands의 아들)

사진을 보니 Adrian Hans가 루게릭병(ALS)로 죽기 직전까지 사람들의 편의성을 위하여 GNOME에 기여하기 위해서 노력한 흔적이 보입니다.

위의 글을 볼때마다 자꾸 눈물이 나군요. 일단은 Adrian Hans님의 명복을 빕니다. (RIP Adrian Hands)


위의 글을 보고 나선 나는 죽기전까지 많은 사람들을 위해 프로그래밍하며 기여(Contribute)를 할수 있는가? 란 생각을 하였습니다.

저는 죽기전까지 부끄럼 없이 사람들을 편리하게 만들수 있는 프로그래머가 되고 싶습니다. 그리고 Free Software와 Open Source에 많은 기여를 하고 싶습니다. (실제로 몇몇 분과 합작하여 python으로 Gwibber의 미투데이 플러그인을 같이 제작하였고, 개인적으로는 python으로 Gwibber의 durl.me plugin을 제작하여 launchpad에 등록하였습니다.) 

저는 고3 말에 가진 오픈소스에 대한 기여등의 꿈같은 초심을 잃지 않았으면 합니다.


ps. 위의 글을 읽고 난 후 아래의 글을 읽고는... 이민 갈까란 생각을 하게 되었습니다.

일본에서 아이폰같은 혁신적인 소프트웨어제품이 나오지 못하는 이유

ps2. 한국에서 오픈소스 운동이 일어나기 어려운 이유가 일본에서 아이폰과 같은 혁신적인 소프트웨어가 나오지 못하는 이유와 똑같습니다... (이건 이후 포스팅에서 말하겠습니다.)

Buy me a coffeeBuy me a coffee
  1. Favicon of http://songsaa.com BlogIcon resort cambodia 2012.11.10 10:38

    This is a great post; it was very informative. I look forward in reading more of your work. Also, I made sure to bookmark your website so I can come back later. I enjoyed every moment of reading it

  2. Favicon of http://www.wsalento.info/ BlogIcon wsalento.info 2012.11.29 22:03

    Wow..I kinda like what you said..Can you post more?because i really want to know.Thanks

Android Platform에서 멀티미디어 관련한 부분은 PacketVideo사에서 만든 OpenCORE로 구성되어 있다.

OpenCORE의 아키텍처와 서비스를 알아야 안드로이드 관련 멀티미디어 구현의 이해가 쉽게 될것이다.


OpenCORE는 자바 기반의 오픈 소스 멀티미디어 플랫폼이다.

  • 서드파티(Third-Party)와 하드웨어 미디어 코덱, 입출력 장치와 콘텐츠 정책을 위한 인터페이스 제공
  • 3GPP, MPEG-4, AAC, MP3 포맷을 지원하며, 미디어 재생, 스트리밍, 다운로딩, 그리고 프로그레시브(Progressive) 재생 지원
  • MPEG-4, H.263, 그리고 AVC(H.264)와 JPEG등의 비디오와 이미지를 위한 인코더와 디코더 지원
  • AMR-NB와 AMR-WB를 포함한 스피치 코덱 지원
  • MP3, AAC, AAC+를 포함한 오디오 코덱 지원
  • 3GPP, MPEG-4, JPEG를 포함한 미디어 레코딩 지원
  • 324-M 표준 기반의 화상통화 지원
  • 안정성과 경고성 보장을 위하여 PV 테스트 프레임워크 지원 - 메모리와 CPU사용을 위한 프로파일링(Profiling)툴을 지원

OpenCore 코드는 매우 양이 많고, C++로 작성된 full-featured(전체적인 멀티미디어 기능을 갖는) 운영체제에 통합되는 구조로 되어 있고 (operating system migration layer), 매우 다양한 함수들이 상속성의 특징과 같은 다양한 레벨간의 인터페이스 여러형태로 패키징 되어 있다.

이 OpenCORE의 소스를 깊이 분석한 사이트는 아래와 같습니다.

http://blog.daum.net/lavendar17


블로그 내용을 둘러보고 있는데 상당히 분석을 잘 하였다.


Buy me a coffeeBuy me a coffee





아래는 옵티머스Q 루팅법에 적힌 글을 인용한것입니다.


현재 발견된 취약점으로 아마 모든 안드로이드 폰의 루팅이 가능할 것으로 보입니다 'ㅅ'

본 루팅과정은 드로이드X 루팅 과정인 http://alldroid.org/default.aspx?g=posts&t=493를 Optimus Q에 맞춰서 수정한겁니다. 

아무튼! 다음과 같이 차례대로 진행하시면 됩니다.

1. 옵큐를 usb로 컴과 연결하고 설정->응용프로그램->개발->usb디버깅에 체크한다.
2. 첨부파일을 받아서 c:\ 에 압축을 푼다.
3. 시작->실행에 들어가서 cmd 실행
4. cd c:\adb 치고 엔터
5. 이제 다음 내용을 차례대로 붙여넣기하고 엔터치면 됩니다. ㅇㅇ
 
    adb push su /sdcard/su
    adb push exploid /sqlite_stmt_journals/exploid
    adb shell
    cd /sqlite_stmt_journals
    chmod 755 exploid
    ./exploid
    rootshell
    secretlol
    cat /sdcard/su > /system/bin/su
    chmod 4755 /system/bin/su
    rm /system/bin/rootshell
    exit
    exit

6. 루팅완료!

PS. su 바이너리가 달라서인지 superuser.apk가 작동을 안하네요. 그래서 과감히 빼버렸어요. 아무튼 그래서 갤s나 다른 루팅된 기기와 달리 슈퍼유저 권한을 요청할때 allow창 같은게 안뜹니다. (보안상으로 매우 취약하군요ㄷㄷ)

PS2. busybox도 말을 안들어서 빼버렸습니다. 마켓에 검색해서 직접 깔아주세요.


LG에서 나온 옵티무스Q말고도 모토로이, 드로이드x 루팅하는 법과 국내판 갤럭시S [M110S] 루트권한 얻기시리우스 루팅방법...등의 방법이 나와 있습니다.

나온 방법들을 보면 Android OS의 취약점들을 이용하여 Root권한을 획득하는 것입니다.

보통 HTC의 단말기나 NexusOne같은 경우는 부트로더를 건드려 Root권한을 획득하기 때문에 HTC의 단말기같이 일부로 부트로더를 쉽게 루팅할수 있는 기계가 아닌 이상 모토로라사의 안드로이드폰이나 국내 안드로이드폰도 Root권한을 얻기 어려웠습니다.

이번 루팅은 Android OS의 취약점을 사용하여 부트로더를 안 건드리는 방법으로 폰들의 Root권한을 획득하는 식이다 보니, 약간의 Android OS의 보안문제가 있을 수 있겠군요.

위의 사례에서 보인 것 같이 오픈소스(Opensource)로 공개된 안드로이드(Android) OS는 Linux Kernel위에 Dalvik VM(SUN사의 Java VM을 따라하여 Java실행할수 있게 만든 Virtual Machine)이 올라간 형태입니다.

위의 오픈소스 같은 경우 소스가 공개된 상태이기 때문에 소스에 취약점이 있으면 공통적으로 바로 발견이 가능합니다.


오픈소스로 공개된 리눅스의 장점이랄까요? 단점이랄까요? 단점인 취약점이 금방 공개가 되는 듯 합니다.(그 단점으로 인해 빠른 패치가 가능하다는 장점도 있습니다.) 

안드로이드 오픈소스의 취약점이 바로 발견되기 때문에 위의 취약점으로 해킹을 하여 안드로이드폰 자체가 망가질 수 있는 문제점이 보이기 시작할듯 합니다. 

안드로이드폰의 보안 이슈에는 Root권한을 획득한 폰에서 앱을 통하여 해킹당할때의 문제가 있었지만, 이제는 Root권한을 획득하지 않은 일반 폰에서 앱에서 root권한을 취득할수 있게 만든 코드에서 해킹에 속수무책인 사항까지 나아간것 같습니다.

아마 위의 사례처럼 Android 2.2에서도 취약점발견되어 root권한 획득하는 방법이 있을듯 합니다. (Google측에서 취약점을 몰랐을 경우)

위의 취약점 사례는 아마도 Android Gingerbread 버전에서 사라질 가능성이 있습니다.

Buy me a coffeeBuy me a coffee

2010년 6월 24일 오전 0시 21분경 모님과 IRC채널에서 대화하다


<blueguy^> OddEgo / htc 갔더니..
<blueguy^> OddEgo / desire 커널 소스 공개 되어 있더군요.
<OddEgo> 우와
<OddEgo> 커널 소스 공개되어서 xda 분들이 롬을 올리군요... ㅎㄸ
<blueguy^> OddEgo / 이미지 새로 올리는데 만족하지 말고..
<blueguy^> 직접 한번 빌드해서 올려 보는 것이..
<blueguy^> 흐흐.
<OddEgo> virtualbox에 올리면 능력자가 되는건가요?!
<OddEgo> 이미지 새로 올리는데 만족하지 말고.. // 어떻게 정곡을 잘 찌르십니까? ㅎㅎ
<blueguy^> OddEgo / 버박에 올리면 능력자가. 될 듯.
<blueguy^> 흐흐.
<blueguy^> qemu에는 그냥 올릴 수 있어요.


htc에서 공개된 안드로이드 소스코드를 x86용으로 포팅해서 올리면 엄청난 굇수가 되어 있겠지?

Buy me a coffeeBuy me a coffee

+ Recent posts