[Linux] Fedora core6 64bit에서 VGA 카드 설정과 OpenGL 테스트 코딩

얼마전에 장만한 Dell 노트북에 리눅스(Fedora core 6, 64bits)를 설치해보았다. 멀티부팅을 통해 XP와 리눅스를 같이 설치해 보았는데, 게임이나 인터넷 뱅킹과 같은 것은 XP를 그외 개발에 관련된 코딩이나… 또.. 음.. 모르겠다. 코딩 이외에 리눅스를 어디에 써먹어야할지 아직은.. 기본적으로 OpenOffice가 설치되어져 있던데, 마이크로소프트의 오피스와 호환성의 완성도가 무척 높다. 몇달전부터 쓰던 엑셀로 쓰고 있던 생활비 내역을 리눅스의 오픈오피스로 작업을 해보았다. 이외에 워드나 파워포인트 역시 사용해 본 결과 MS의 오피스에 못지 않았다. 하지만 MS의 오피스가 UI면이나 파워포인트에서의 산출물의 품질은 더 뛰어난것같다. 아직은 말이다..

처음 페도라를 설치할때 32Bit로 했으나, 비디오 드라이버를 설치하는 과정에서 64Bit로 설치하게 되었다. 나의 노트북의 비디오 카드의 X1400이였는데, 32비트에서는 설치가 않되는줄 알았으나, 아니였다. 32비트이든, 64비트이든 상관은 없었다. 페도라가 기본적으로 제공하는 비디오카드는 vesa(정말 오랜만에 들어보는..)이다. 내 노트북의 해상도가 1680×1400인데, 1400×1400만을 지원한다.

Radeon Mobility X1400 비디오 카드를 가진 분들이 페도라 코어 6에서 비디오 드라이버를 설치할때의 어려움에 대한 해결방법을 공유하기 위해 그 방법을 기록해 둔다. 참고로 ATI사에서 제공하는 리눅스 X1400용 비디오 드라이버로 시도해 보았으나 번번이 실패했다. 검색해 본 결과로는 페도라의 경우 해당 드라이버를 자동설치하지 말고 rpm 패키지를 뽑아내어 설치하라고 되어 있었으나, 뽑아내지 못했다. 나와 같은 어려움을 격는 사용자가 많았던지 livna에서 해당 패키지를 뽑아내어 제공하고 있었다. 아래부터는 livna에서 제공하는 패키지를 통해 드라이버를 설치하는 과정이다.

1) rpm -ivh http://rpm.livna.org/livna-release-6.rpm 를 실행해 패키지 다운로드
2) pirut 실행(pirut는 메인메뉴의 “Add/Remove Software”이다)
3) pirut에서 fglrx로 검색한후, “xorg-x11-drv-fglrx”를 설치
4) /usr/sbin/ati-fglrx-config-display enable 실행
5) xorg.conf 파일을 열고 아래 항목으로 수정 및 추가

Section "Module"
	Load "dri"
	Load "extmod"
	Load "glx"
EndSection

Section "DRI"
	Group 0
	Mode 0666
EndSection
	
Section "Extensions"
	Option "Composite"	"False"
EndSection
	
Section "ServerFlags"
	Option "AIGLX" "off"
EndSection 
	
Section "Device"
	Identifier  "Videocard0"
	Driver      "fglrx"
	Option	    "DesktopSetup" "single"
EndSection 

6) Rebooting 또는 Log-out
7) fglrxinfo 실행하여 ATI에서 제공하는 OpenGL 2.0 드라이버를 지원하고 있는지 확인

display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Mobility Radeon X1400 Generic
OpenGL version string: 2.0.6174 (8.31.5)

 

8) glxinfo| grep direct 를 실행하여 Direct Rendering이 가능한지 확인(Yes나와야함)
9) fgl_glxgears를 실행하여 확인(3D로된 3개의 기어가 돌아가는 OpenGL용 샘플)

여기까지 하면 1680×1400 해상도와 OpenGL의 최신버전인 2.0까지 지원하며, 하드웨어 가속을 받을 수 있게 된다. (나는 여기서 환성을 지를 수 밖에 없었다!! ㅡOㅡ)

Nehe 사이트의 OpenGL 튜토리얼 중 리눅스용 소스를 다운로드 받아 실행해보았다. 링크된 샘플 소스가 3가지였는데, 그 중 SDL을 이용한 OpenGL 소스를 컴파일해 실행하였고, 그 결과의 화면은 아래와 같다.


참고로 SDL은 Simple Direct-Media Layer 라이브러리의 약자로, Windows, 리눅스, BeOS, 맥등에서 적용할 수 있는 오픈소스 라이브러리이다. Simple하고 매우 직관적인 라이브러리인지라 접근하는데 매우 쉬울듯하다. SDL은 하드웨어 가속을 받는 비디오 관련 개발, CD-ROM 및 사운드와 동영상 분야의 멀티미디어 개발 등과 쓰레드, 타이머, 플렛폼마다 다른 엔디안 체계에 대한 비종속적인 환경 지원을 하고 있다.

작은 색의 차이가 엄청난 美적 차이를 만든다..

Vista로인해 말도 많은 ActiveX 컨트롤을 회사에서 하나 만들고 있고 있는데, 클라이언트 언어로 Visual Basic을 사용하다가, 이번에 C#으로 클라이언트 언어를 바꾸어 보다가 잠시 두손을 들게 되었다.

두손을 든 이유는 바로 Color이다. C++ ATL로 만든 ActiveX에서 사용하는 색상 Type은 Visual Baisc에서 OLE_COLOR이다. 이는 C++의 COLORREF Type에서 변환되어진 것일테고… 그런데 문제는 C#에서는 이렇게 넘어온 색상의 타입을 uint로 받는다.. 쿠궁~ ㅡOㅡ;;

뭐.. 색상 따위가.. 내 앞길을 막네? 건방진 것.. 하면서 간단히 형변환하면 되겠거니 하고.. C++와 Visual Basic의 RGB에 해당하는 C#의 함수를 만들었으니.. 다음과 같다.

uint RGB(int R, int G, int B) {
    return (uint)(Color.FromArgb(R, G, B).ToArgb());
}

ㅋㅋ.. 뭐 변환 과정이 한Q가 아닌 세Q인지라(FromArgb->ToArgb->uint) 뭔가 묘상하긴 했지만, 분명 작동할터라 기대하고 실행해 보니…… 그 색감이 아래와 같다.

안습.. ㅜ_ㅜ

원래 의도한 화면은 아래와 같은데 말이다… Visual Basic으로 맹근거..

막눈, 막귀인 내가 봐도 단지 색상만 다를 뿐, 그 뒷태, 앞태는 모두 같은데… 이처럼 큰 차이를 느끼게 한다는 것을 깨달았다…. UI에서 색상 고르기를 신부감 고르기보다 더 신중하게 하여야겠다… (피곤하니 글빨이 장난아닌데.. ㅡOㅡ;;)

아시는분…… RGB 요소의 값으로 ActiveX가 원하는 색상값을 C#에 옳바르게 넣어주는 방법은….?

[펌] 고승덕 변호사, “남과 똑같이 해서는 절대 노력했다고 할 수 없다”

나는 외모에 컴플렉스가 있다. 아시겠지만, 대학교 때 고시 3개를 합격했다. 사법고시 합격, 외무고시 2등, 행정고시 1등, 그리고 서울대 법대를 수석 졸업했다. 학교 졸업 후 부모님께 큰 절을 했었다. 똑똑한 머리를 물려줘서가 아니라, 사실은 변변찮은 외모덕에 그저 고시에만 전념할 수 있게 해 줬기 때문에 감사하다는 의미로.

내 직업은 변호사이면서, 방송도 하고, 3년 전부터 책을 쓰고 있다. 평생 소원이 1년에 1권씩 평생 책을 내는 것이다. 글도 쓴다. 모 신문사에 경제기사를 1주일에 2개정도 쓴다. 또 오늘과 같은 특강도 한다. 평균 1주일에 2회 정도. 증권분야에서도 활동하고 있다. 운영하고 있는 사이트가 있는데 회원수만도 3만 5천명 정도 된다. 나름대로 홈페이지 관련 사업을 하나 구상중인 것도 있다. 마지막으로 대학에서 겸임교수로 활동하고 있다.

이처럼 내가 하고 있는 일이 무척 많은 것 같고 어떻게 이걸 다 할까 생각이 들겠지만 다 가능하다. 이 중에서 한가지만 하더라도 힘들다고 하는 사람이 많다. 그러나 가능하다고 생각하면 다 가능하다. 무엇이든지 목표가 중요하며, 그 목표 달성을 위해 가장 중요한 것은 확신이다. 사람들은 어려운 일일수록 확신을 갖지 못한다. 사람들은 나의 삶을 보면서 머리가 좋다고 생각한다. 그러나 사실은 전혀 그렇지 않다. 다 노력의 결과다.

학교 다닐 때 누구나 학원도 다니고 과외도 해 봤을 것이다. 고 2때 수학 45점의 낙제점수를 받은 적이 있다. 그 때 대학을 못 간다는 선생님의 말이 나에겐 큰 충격이었다. 그러나 집안이 그리 넉넉하지 않았기 때문에 과외를 한다는 것은 생각 할 수 없었다. 그래서 6개월간 죽어라고 했다. 그리고, 그 해 9월 2학기 때 400점 만점에 400점을 받았다. 그 이후로 매 시험마다 1등 했고, 석달에 한 번 정도 2등을 했었다. 학생시절 나는 여러 차례 내가 결코 남들보다 머리가 좋지 않다는 것을 깨달았고, 남보다 더 많은 노력을 해야 남만큼의 결과를 얻을 수 있다는 것을 알았다.

인생에 있어 2가지 자세가 있다.

보통 사람들은 남보다 적게 노력하고 결과는 남들과 같은 똑같이 나오게 하려고 한다. 사실은 이것이 경제학 법칙에 맞는 것이다. 투입을 적게하고 효과를 많이 내는 것. 반대로, 다른 사람들 만큼의 결과를 얻기 위해서는 더 많은 노력을 해야 한다고 생각하는 것이다. 나의 경험상으로 보면 후자가 훨씬 좋은 결과를 낳는다. 남보다 노력을 더 많이 해서 비슷한 결과를 가져 오는 것이 비효율적인 것 같지만, 실제로 이것은 어느 시점이 지나면 훨씬 더 좋은 결과를 가져온다.
이것이 내가 인생을 살면서 내 스스로 내린 결론이다. 그럼 노력이란 무엇이냐? 나는 “노력이란 성공의 확률을 높이는 것이다” 라고 정의 내린다. 하지만 물론 결과를 반드시 보장하지는 않는다. 노력에도 함수 관계가 성립한다.

노력 = f(시간 × 집중)

내가 실제 노력을 했는가 안 했는가를 판단하려면 시간을 많이 투입했거나 집중을 잘 했는가를 살펴보면 된다. 똑같은 일을 하더라도 3시간만에 끝내는 사람이 있는가 하면 5시간만에 끝내는 사람도 있다. 그러나 3시간만에 끝내는 사람이 실제 일을 더 잘하는 것 같지만 나머지 2시간을 어떻게 보내느냐가 중요하다. 더 많이 알기 위해 그 2시간을 투자하지 않았다면 노력하지 않은 것이다.

집중에 대해서 얘기해 보면, 고시 공부할 때 예를 들어 보겠다. 나는 고시 공부를 1년간 해서 합격했다. 어떻게 가능 했느냐? 첫째는 된다고 생각하는 확신이 있었기 때문이고, 둘째는 남보다 더 많은 노력을 했기 때문이다. 보통 고시에 합격하려면, 봐야 할 책이 50권, 권당 페이지는 500P, 그 책을 5번을 봐야 합격하다는 얘기가 있다. 그러나 나는 7번을 보았다. 이를 계산해 보면 50 × 500 × 7 = 175,000 페이지를 읽어야 한다는 얘기다. 이것을 1년을 360일로 계산해보면 1일 목표량이 나온다. 즉, 1일 500 페이지 정도의 분량을 봐야 한다는 계산이다.

이처럼, 목표를 세울 때는 구체적으로 세워야 한다. 막연한 목표는 달성하기 힘들다. 이 결론을 보면 “인간이 할 짓이 아니다” 라고 생각할 것이다. 누구나 그렇게 생각한다. 그렇게 생각하면 사람들은 포기하게 된다. 설사 하게 되더라도 하다가 흐지부지 된다. 이렇게 목표에 대해 확신이 없고, 목표를 의심하는 사람은 집중을 할 수 없다. 무엇보다도 자신의 목표에 확신을 가져라.

된다는 사람만 되고 안 된다고 생각하는 사람은 안 된다. 일단 안 된다고 생각하는 대부분의 85%의 사람들은 이미 나의 경쟁상대가 아닌 것이다. 된다고 생각하는 일부만 나의 경쟁이 된다. 그럼 경쟁대상이 줄어드니 훨씬 마음도 한결 가벼워 진다. 세상도 절대적으로 잘 하는 사람은 원하지도 않고 필요하지도 않다. 남 보다만 잘 하면 된다. 그럼, 다른 사람보다 잘 하고 있는지를 어떻게 판단하느냐? 그것은 나 자신을 판단 기준으로 삼으면 된다. 인간은 거의 비슷하다. 내가 하고 싶은 선에서 멈추면 남들도 그 선에서 멈춘다. 남들보다 약간의 괴로움이 추가되었을 때라야 비로소 노력이란 것을 했다고 할 수 있다.

고시 공부할 때 7시간 잤다. 장기간 공부를 해야 할 경우라면 일단 잠은 충분히 자야 한다. 하루 24시간 중 나머지 17시간이 중요하다. 고시생의 평균 1일 공부시간은 10시간 정도다. 그러나 정말 열심히 하는 사람은 잠자는 시간 빼고 17시간을 하는 사람이 있을 것이다라는 생각을 했다. 그러면 정말, 밥 먹는 시간도 아까웠다. 남들과 똑같이 먹어서는 안 된다고 생각한 것이다. 반찬 떠 먹는 시간도 아까웠다. 씹는 시간도 아까웠다. 그래서 모든 반찬을 밥알 크기로 으깨어 밥과 비벼 최대한의 씹는 시간도 아꼈다. 숟가락을 놓는 그 순간부터 공부는 항상 계속 되어야 했다. 나의 경쟁자가 설마 이렇게까지 하겠냐 하고 생각들면 노력했다고 할 수 있는 것이다.

미국에서 생활 할 때 보면 소위 미국의 전문가라고 하는 사람들은 간단한 샌드위치로 끼니를 때운다. 점심시간 1시간 다 쓰고, 이래저래 20~30분 또 그냥 보내는 우리 나라 사람들은 그들에 비하면 일 하는게 아니다. 집중을 잘 하는 것은 벼락치기 하는 것이다. 벼락치기 할 때가 더 기억에 오래 남는다고 한다. 우등생은 평소에 벼락치기 하는 마음으로 공부를 한다. 이렇게 할 수 있는 이유는 목표가 분명하기 때문이다. 막연한 목표를 가지면 이렇게 긴장이 안되지만 분명하면 항상 긴장되고 집중을 잘 할 수 있다.

방송하면서 인생이 많이 바뀌었다. 처음 주변 사람들은 말렸지만 결과적으로 보면 좋은 결과를 가져왔다. 나는 세상을 살면서 이런 생각을 해 본다. 사람은 해야 할 일과 하지 말아야 할 일이 있다. 사람이 해야 할 일이란 남에게 해를 끼치는 일이 아니면 해도 되는 일이다 라고 생각한다. 그렇게 생각하면 세상에 해야 할 일이 참 많다.

나에게는 인생 철학이 있다. 인생을 살다 보면 A와 B가 있을 때 나는 A가 더 중요하지만 B를 선택해야 할 경우가 많다. 그럴 때 어떤 것을 선택하느냐는 매우 중요하다. 학교 다닐 때 나는 A는 여자친구였고, B는 고시 합격 이었다. 대학시절 한 때 A는 내게 무척 중요한 시기가 있었다. 여기서 내가 말하는 t1,t2판단법이란게 중요하다. 내가 A를 선택하면 난 B를 성공할 수 있는 확률은 줄어든다. 그러나, 나의 외모 컴플렉스 때문에 A를 성공하는 일 또한 확신이 없었다. 그래서 나는 B를 먼저 해서 좀 더 유리한 조건이 되면 A도 이룰 수 있다고 생각했다. 그렇게 결론을 내리면 고시합격을 더 빨리 해야 할 필요성을 느끼게 되어 집중도 잘 되었다. 이것이 내가 인생을 살아가면서 느낀 것이다. 장기간 동안 시간의 흐름을 계산해 볼 때 무엇을 먼저 해야 하는가를 판단하는 것은 매우 중요하다.

그래서 난 남들이 말려도 우스꽝스러운 모습으로 코미디 프로에도 나갈 수 있었다. 난 ” 할 수 있을 때 뭐든지 해 버리자 ” 라는 생각으로 할 수 있는 건 다 한다. 그러면서 인생에서 내가 할 수 있는 일들을 쌓아 가면 된다. 하다가 안되면 포기하더라도 아예 안 하는 것보다는 낫다. 아예 하지 않으면 할 수 있는 일은 아무 것도 없다. 나의 징크스는 시험에 합격하려면 10번을 봐야 하는 것이다. 그래야 합격의 확신을 갖는다. 3~4번만 보면 불안하다. 그래서 그냥 뭐든지 기본적으로 10번을 본다. 몇 번 3~4번 책을 보고 시험을 본 적 있다. 역시 떨어졌다.

앞으로는 이렇게 해 보자. 첫째는 남보다 많이 노력하는 것이다. 둘째는 어려운 목표일수록 확신을 가져 보자. 그러면 정말 되는 일이 훨씬 많다. 셋째는 남보다 최소 3배는 해야 한다고 생각하자. 직장에서 윗 사람이 일을 시킬 때 남보다 더 많은 일을 시키고, 나한테만 어려운 일을 시키더라도 신나는 표정을 지어보자. 대부분의 사람, 아니 나의 경쟁자는 이럴 때 얼굴을 찌푸릴 것이다. 그러나 내가 이기려면 그들 보다는 다른 모습이어야 한다. 힘들더라도 괴로움을 추가해 보자. 남들에 비해 노력한 만큼의 결과가 나오지 않더라도 노력을 계속해야 한다. 3배의 노력만 한다면 4번째 부터는 분명 가속도가 붙어 급속도로 차이가 날 것이다.

마지막으로 대인관계에 대해 강조하고 싶다. 세상을 살다보면 대인관계를 유지하는 것도 노력이다. 성공을 위해서는 나 혼자의 노력 외에 대인관계가 차지하는 비중이 높은 경우가 있다. 어떤 상대를 만나든 최소 5분은 상대방을 위해 생각하는 시간으로 할애해 보자.

남과 똑같이 해서는 절대 노력했다고 할 수 없다.

[펌] “달라붙는 로봇” 발명자 김상배

김상배씨는 아버지에 대한 기억이 없다. 한양대 법정대 교수였던 아버지 김원국씨는 김씨가 태어난지 두달 만에 숨졌다. 친구들과 승용차로 여행을 가다가 경기도 이천의 국도에서 마주오던 버스와 충돌한 것이다. 그래서 그는 형과 함께 홀어머니 슬하에서 자랐다.

그로부터 31년이 지난 현재 김씨는 미국의 스탠퍼드대 기계공학과에서 박사과정을 밟고있다. 내년이면 학위를 받게된다. 연세대 기계공학과를 졸업하고 도미한지 5년 만이다.

김씨는 요즘 유명세로 밤잠을 설친다. 그가 개발한 도마뱀 로봇 때문이다. 동영상 사이트 ‘유튜브’에 소개된 뒤 지난달 포브스지에 기사가 실렸고 13일자 타임지에 ‘올해 최고의 발명품’ 44개 중 하나로 선정돼 언론매체의 인터뷰 요청이 쇄도하고 있다. 내년 초에는 그와 그의 발명품이 PBS의 특별 프로그램에도 소개된다.

그의 도마뱀 로봇은 유리벽을 수직으로 올라갈 수 있어 ‘스티키봇(Stickybot)’으로도 불린다. ‘달라붙는 로봇’이란 의미다. 김씨는 “한번 달라붙으면 절대 떨어지지 않으면서 발걸음을 옮길 때면 너무나 사뿐하게 움직이는 도마뱀의 발바닥에서 영감을 얻었다”고 말했다. 스티키봇의 발바닥은 미세한 섬유조직으로 이뤄져있다. 털모양 섬모의 끝부분은 한 방향 만을 보게끔 경사지게 처리됐다. 섬모의 끝부분이 접지된 상태에서 경사면 방향으로 잡아당기면 마찰력이 엄청나게 커지기 때문에 유리벽에서도 떨어지지 않고 지탱할 수 있다. 대신 반대편으로 잡아당기면 손쉽게 떼어낼 수 있는 원리다.

김씨는 스티키봇에 대해 특허출원을 마친 상태다. 포스트잇과 같은 메모 용지 등에 스티키봇의 아이디어를 접목시키면 엄청난 시장효과를 불러올 수 있다는 평가를 받고 있다. 그는 지난해 개발한 재난구조용 로봇 등 모두 4건의 특허를 갖고있다.

창의력이 어디서 나오는지 궁금했다. 그는 “아버지가 안계셔서 대부분의 결정을 혼자 내리는데 익숙하다 보니 남들보다 여러가지 생각을 하는 습관이 몸에 배었다”고 답했다. 형 상필씨는 현재 미국 퍼듀대 산업공학과에서 박사과정을 밟고있다. 이들 형제의 뒤에는 항상 자식 생각만 하는 어머니가 있다. 서울 합정동에서 홀로 지내는 어머니 이영애씨는 “상배는 어렸을 때 장난감 비행기 대회에 나가 1등을 하는 등 손재주와 창의력이 뛰어났다”며 “하늘에 계신 아버지도 매우 흡족해 할 것”이라고 말했다.

출처: 미디어다음, media.daum.net