본문 바로가기
어떤 공부부터 시작해야 될지 모르겠어요?

어떤 공부부터 시작해야 될지 모르겠어요?

뭘 알아야 이해를 하지
임베디드 시스템 분야에는 공부해야 될 것들이 정말 많이 있죠. 모든걸 단기간에 끝낼 수도 없고 그렇다고 수박겉핥기처럼 할 수도 없구…
무엇보다도 어떤 공부부터 시작해야 될지 될지 모르겠죠?
우선 임베디드 시스템 분야를 3가지로 나누어 볼게요. 그리고 개인적인 성향에 대해서도 3가지로 나누어 볼게요.
이 세가지 기준들을 보면서 자기 자신이 재미있어 하는 부분을 먼저 시작하면서 공부 순서를 정하면 되지 않을까 싶어요.
누구나 똑 같은 순서대로 공부할 필요가 없다고 봐요.

우선 임베디드 시스템 분야를 크게 3가지로 나누어 볼께요.
1 하드웨어 개발(Hardware): 우리가 가지고 있는 휴대폰을 예로 든다면 과연 하드웨어 개발이라고 하면 무엇을 말할까요? 우선 핸드폰에는 시피유(CPU), 메모리(Memory), 엘시디(LCD), 터치(Touch), 자판(Keypad)이 있어서 문자도 보낼 수도 있죠.
말 그대로 휴대폰을 구성하는 장치들을 말해요. 휴대폰이라는 기본적인 기능은 비슷하지만 회사마다 기능과 성능의 차이가 있어 어떻게 하드웨어를 구성해야 될지에 대해 항상 연구를 하드웨어 엔지니어가 한답니다.
2 펌웨어(Firmware): 하드웨어 개발이 끝난 상태로 펌웨어(Firmware) 엔지니어에게 전달이 되면 제일 먼저 휴대폰 메모리에 프로그램을 내장시켜서 휴대폰의 메인 화면이 엘시디(LCD)에 나오게 만들는 일을 하죠. 쬐금 과장되게 비유를 하면 전자기기에 생명을 불어 넣는 일이라고 할까요! 후후. 그것 말고도 소리, 자판, 카메라, 동영상 등등 프로그램을 만들어서 잘 동작하도록 만들어야겠죠. 이러한 과정을 흔히 포팅 한다고 이야기 합니다. 정말 중요한 일이겠죠.
3 어플리케이션: 이제 휴대폰 화면이 나오고 터치도 되니 본격적인 프로그램을 만들어야 겠죠. 사진을 찍기 위한 프로그램, 찍은 사진을 편집하는 프로그램, 동영상 찍는 프로그램, 영상메시지 전송 프로그램, 인터넷 웹 서핑을 위해 브라우저도 만들고......
아~~ 음악은 필수죠. 음악 프로그램도 만들고!! 휴~~ 정말 할 일이 많네요.

제가 이렇게 3개로 구분해 놓은 이유는 학교를 졸업하고 회사에 취업을 하면, 개발부서가 대부분 하드웨어 개발부, 펌웨어 개발부, 응용소프트웨어 개발부가 있답니다. 회사 규모에 따라 3개의 개발부서가 모두 있는 회사가 있고, 하드웨어만 담당하는 업체, 펌웨어 즉 포팅을 전문적으로 해 주는 회사, 순수하게 응용 프로그램만 만드는 회사들도 있답니다.

여기서 개인적인 성향에 따라 또 3가지로 구분을 해 볼게요.
1 전기전자 특성을 잘 알고 전자기기를 다루는 것이 정말 재미있다. 회로도를 잘 그리고 각각의 반도체 특성을 잘 이해하고 있다. 씨언어로 기본적인 프로그램은 할 수 있다.
2 전기전자 특성은 조금 알고 전자기기 제어 프로그램이 재미가 있다. 특히 내가 만든 프로그램으로 로봇이 움직이고, 내가 원하는 데로 조절하는 것이 재미있다.

3 전기전자는 잘 모르나 제어 프로그램 보다 윈도우 프로그램과 같은 프로그램 만드는 것이 재미 있다. 윈도우에서 실행되는 메신저 프로그램, 그림 편집 프로그램, 게임 개발 등 이러한 프로그램 만드는 것이 재미 있다.

우선 씨(C)언어는 기본입니다 그리고 나머지는 자신의 우선순위에 맞게 정하시면 되요. 한꺼번에 모든걸 할 수 없으니 차근차근 계획을 세워가며 시작해 보는 것이 좋을 것 같아요.

Written by Soto

Linked at 친절한 임베디드 시스템 개발자.. at 2010/01/11 16:46

... nbsp; 101 왜 임베디드 시스템에서는 씨( C)언어를 가장 많이 사용하나요? 102 어떤 공부부터 시작해야할 지 모르겠어요? 103 학교에서 공부한 내용이 현업에서 어떻게 쓰이나요? & ... more

Commented by highseek at 2010/01/11 16:53
네 뭐부터 해야할지 모르겠네요..(....)
Commented by soto at 2010/01/12 06:36
음...^^;
Commented by 미친과학자 at 2010/01/11 17:14
하드웨어가 넥서스 원이야!! (탕!!)
Commented by soto at 2010/01/12 06:38
넥서스 원처럼 보이나요? ㅋㅋ
Commented by winDP at 2010/01/11 17:15
^^ 전 3번이군요.. 하지만.. 패스..
Commented by soto at 2010/01/12 06:39
관심이 많으시다면 2번쪽으로 영역을 넓혀 보는건 어때세요? ㅋㅋ
Commented by highseek at 2010/01/11 17:38
3번도 여러가지가 있죠. OS를 만드는 곳, 미들웨어 코어를 만드는 곳, UI를 만드는 곳, 유저 어플리케이션을 만드는 곳 등등..
Commented by soto at 2010/01/12 06:40
네..정말 많아요. 너무 많아요. ^^;
Commented by 히언 at 2010/01/11 22:10
전 몇번일까요.. 회색 분자에요.. Soto님, 저를 위한 Category는 없나봐여
Commented by soto at 2010/01/12 06:41
어? 정말 그러네요? ㅋㅋ 워낙 특별하신 분이라...ㅎㅎ
Commented by 김경진 at 2010/01/12 10:55
ㅡ.ㅡ; 아.. 1번과 2번의 혼합이네요...ㅡ.ㅡ; 아... 머리 아파요. 머리가 나빠서...
Commented by soto at 2010/01/12 12:56
한꺼번에 하시려면 힘들 수도 있으니
쉽게 할 수 있는 것부터 시작해 보세요. ^^;
Commented by suapapa at 2010/01/12 16:01
한 줄 요약: 공부하는 법을 공부해야 해요! :)
Commented by soto at 2010/01/12 22:46
요약의 달인이시군요.. 감솨요. ^^;
Commented by 락이즈 at 2010/01/12 17:32
어떻게 접근해야할지 먼가 알거 같으면서도 모르겠네요....ㅎㅎ
전 2번인거 같은데...로봇은 별로 관심이 없어서 ^^;
그냥 하드웨어들을 이리저리 조절 하는게 재미있고 거기에 OS을 올려고 동작시켜 보는게 흥미롭다면...
2번이겠죠??
Commented by soto at 2010/01/12 22:44
네...결론은 취업을 해서 일을 할때 가장 재미 있다고 생각되는 쪽으로 하시면 됩니다.
공부하는 것과 일하는 것은 많은 차이가 있으니깐요..ㅋㅋ
Commented by 루링 at 2010/01/13 15:14
저도 C언어부터시작했고

펌웨어로접근해서 어플리케이션으로 이동...;

하드웨어 지향..;
Commented by soto at 2010/01/13 18:14
우와~~~~ ㅎㅎ
Commented by Punx at 2010/01/15 02:30
이번에도 잘 봤어요! 이해하기 쉽고 좋아요!
Commented by soto at 2010/01/15 05:48
감사합니다. ^^; 다음 강좌도 열심히 써 볼께요.
즐거운 하루 되세요. ^^;
Commented by 봉인 at 2010/01/28 21:47
처음 와봤어요 둘러보겠습니다. 건승하시길.
Commented by 사춘기 개발자 at 2010/02/02 11:04
^^ 글 잘봤어요
개발 3 년 됬는데
wince 쪽에서 일합니다. 그동안 2,3 모두 해봤습니다 ^^;; (제조 업체에 있어서 다해봤어요 ^^)
근데 주변 분들 보니깐 모두 어플하시는 분들이 많더라구요 (저보고 어플만 하라고 하는데;;;;)
이유는 회로도,데이터 시트, 공부할게 넘 많고 어렵고, 컴파일 시간이 넘오래걸린다고
해서 3번을 선택 하시는거 같더라구요
참고로 그분들 제가 플랫폼 빌더 실행하고 수정 하고 있으면 치를떨고 있더라구요 ^^
전 2개를 다해봤는데 좋은것은 어떤 문제가 발생되면 이문제를 드라이버를 고치는게 쉬운지 아님
어플이 고치는게 쉬운지 판단 하는 습관이 들었습니다. 어찌됬든 2 번이든 3번이든 2가지를 조금씩만
알고 계신후 1가지를 선택하면 좀더 쉽게 일을 처리 할수 있지 않을까 합니다... (전 지금 2가지 중에서
선택하지 못하고 방황중 ㅜ.ㅜ;;;)
※ 이 포스트는 더 이상 덧글을 남길 수 없습니다.
친절한 임베디드 시스템 개발자 되기 강좌 글 전체 리스트 (링크) -



댓글





친절한 임베디드 개발자 되기 강좌 글 전체 리스트 (링크) -