2011년 11월 5일 토요일

p2) 윈리야그 12 끗.

자정인데 일 하면서 글 씁니다. 담 주 결혼인데 된장 ㅠㅠ 막장 고추장 쌈장 흑흑 신혼여행 때매 담달에나 뵙겠네요. 전 안드로이드 게시판으로 넘어 가겠습니다.








우선 총정리구요. 본래 리눅스 자세히 쓰다보면 한없이 길어질 것 같아서 생각 날 때 마다 총총 쓰려고 문을 닫습니다. 왜냐면 다른 분들도 강좌를 올려야 하는데 게시판 활성화를 위한 초석은 올렸다고 보거든요. 난잡한 글이니까 정리 잘하시는 다른 분들이 편하게 강좌하시고 입맛에 맛는 분들이 봐주면 게시판 활성화가 되는거죠.







우선 리눅스는 안드로이드가 리눅스 커널 기반(사실 쉘도 올라가 있습니다)에 달빅이라는 자바 가상 머신을 올린터라. 안드로이드 = 리눅스 + 자바 라고 간단히 말할 수가 있겠네요.







리눅스로 좀 들어가고 싶으시면 우선 커널을 이해하기 위해서는 두가지 방법이 있습니다. 리눅스 커널 겁나게 크고 각 모듈별로 박사 이상의 실력을 가진 분들이 담당을 하기 때문에 천재가 아닌 이상(천재는 김웅용씨)혼자서 커널을 다 헤집고 다니긴 힙듭니다. 하지만 커리큘럼을 알기는 힘드니 10년 정도 경험자가 이야기 해 드리겠습니다. 물론, 개발자로 테크트리를 탄다고 보구요. 리눅스 관련 이야기는 앞에서도 했지만 또 지금 생각나는게 맞을 수도 있으니까요.







리눅스 깔고 명령어를 공부한다. - 그럼 일단 리눅서가 되는거죠.

커널 컴파일을 엄청나게 해 본다.

예전에 리눅스 원에 계셨던 한 분이 커널 컴파일 8000번 해 보셨다고 했어요. 그만큼 커널은 옵션도 많고 옵션마다 디펜던시도 달라서 커널 컴파일만 하다보면 어느새 우리 커널이 어떻게 돌아가는지 대충 감이 잡힙니다. 물론, 소스는 모르지만 메커니즘을 알게 된다는 거죠.



리눅스 디바이스 드라이버를 만들어 봅니다.

대부분 캐릭터 디바이스 드라이버인데요. 커널을 이해하기 위한 첫걸음이라고 할 수 있죠.



이거 하다보면 커널 코딩 스타일에 익숙해지는데요. C로 객체지향을 어떻게 구현하는지 맛볼수가 있습니다. 포인터의 늪에서 잘 빠져 나오시길 바랍니다.



빡시게 해놔야 해요. 왜냐면 몇 년 지나면다 잊어 버립니다.







3까지 하시면 아마 마이크로C/OS-III나(최근에 업뎃했죠 쓰리로) AVR에 관심이 가실 겁니다. AVR로 넘어가도 마이크로 씨 포팅 프로젝트가 검색이 잘되서 해보고 싶은 욕심이 생기죠.





5-1.







고등학생 이시라면 AVR로 넘어가시길 바라구요. 왜냐면 AVR하다보면 마이컴 만들고 싶고, 기판에 납땜해서 거기다가 펌웨어 올리고 싶고. 그러다보면 간단한 로봇하나 만들게 되고 나중에는 거기다가 커널을 포팅해서 올리다 보면 어느새 임베디드 엔지니어가 되거든요.







5.2.



대학생이시라면 시간이 없으니 AVR로 가지 마시고 좀 더 커널 깊숙이 들어갑니다. 그러다가 고걸로 대학원가고 박사밟아서 교수가 되면 best 케이스 인거죠. 그게 안되면 연구한 걸로 어느 기업을 가던지 쉽게 적응하실 수 있을 겁니다. C++도 병행해서 익혀두면 어떤 언어를 하던지 다 머릿속에 들어오실거예요.







5.3



저처럼 일반인이시라면 리눅스 멀티미디어 프로그래밍이나 서버 쪽 공부를 해야 합니다. 사실 제 선배님 말대로 기술사 따고 감리사 따서 업계의 포주가 되는게 한국에선 살아남는 길이긴 한데.



깊은 지식은 하느님이 만든 자연의 법칙을 아는데에 있고 좀더 전기에 근접하고 싶으시면 늙었으나 하드웨어 디펜던시한 커널을 계속해서 공부하고 사실 그거 하면서 전기기사나 전기 공사 기사 해서 굶어 죽지는 않게 하는게 중요하겠죠. 남는 시간에는 계속 파는 겁니다. 그런데 나이가 들면 결혼도 해야 되고… 선택의 폭이 좁아져서 떠나게 되는거죠… 아 완전 슬퍼.











뭐… 진로랑 접목해서 대략적으로 적어봤는데 혹시나 궁금한 점을 댓글로 달아 주시면 제가 아는 다른 쪽 시야가 팍 열려서 조언을 해 드릴 수 있을 것 같습니다. 물론, 조언을 받는 것도 좋아하구요. 생각이 다르면 토론도 좋아라 합니다.







그럼, 이 글 안에 있는 키워드 들로 지식을 넓히시길 바랍니다.



별거 없지만 모르시는 분들에겐 큰 도움이 될 거라 생각 되구요.







그리고 마지막으로 정수를 하나 가르쳐 드리면…







전 개발만 하다가 기업에 들어오니 개발 안하시는 분들도 많지만 개발을 모르시면서 코더라고 얕잡아 보시는 분이 많습니다. 사실 코더를 거쳐야 디벨로퍼가 되는건데 코더를 안하면 디벨로퍼인줄 아시는 분들이 많더라구요. 심지어는 직급이 높다고 아키텍트로 착각하시는 분도 수없이 많습니다. 아키텍트의 코드 한 줄은 수십억을 아끼고 수많은 코더들이 편할 수 있는 건지도 모르고 지시할 위치에만 있으면 아키텍트인줄 알아요. 사실 한국엔 아키텍트 없습니다. 김택진, 안철수, 이찬진등등 처음엔 코더로 시작해서 기업까지 만들고 유명하신 분들이 아직 코드의 필드에 있으시면 아키텍트겠죠.







코더든 아키텍트든 디벨로퍼든. 행복의 조건은 같습니다. 재미죠. 같이 토론하고 만들어가면서. 부족하지만 서로를 보완하는 팀 플레이를 느끼는 것. 밤새는 동료를 뒤로하고 자기 일(데이트나 경조사 등등)을 가더라도 동료는 그걸 이해해 주는 배려심. 그리고 나중에 그 동료는 다시 갚아주는 전우애(?) 등등…



사실 추구하는 가치가 같은 사람끼리 모이면 정말 재미있는 곳입니다. IT 필드는.







제가 리눅스 후졌다고 이제 하지 말라고 비전 없다고 말하지만, 세상의 수많은 리눅서 들이 마소를 긴장시켜서 더 발전시키고, 그 소스를 기반으로 수많은 앱들이 나와서 삶을 윤택하게 합니다.



사실 전 젊음을 많이 잃었기에 리눅스에 발을 못 들이는 능력이 없는 사람이죠.







젊은 분들이 리눅스 관련 기술의 대부분을 그리고 재미를 맛보시길 바랍니다~







사실 대한민국 엔지니어에게 가장 필요한 건 재미입니다. 행복이고.







두리뭉실한 강의는 이제 끝내고 담에 하나씩 올릴 때는 알차게 올려볼께요~



[

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

UPBIT is a South Korean company, and people died of suicide cause of coin investment.

 UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...