도전임베디드OS만들기코딩하며배우는운영체제원리
카테고리 컴퓨터/IT > OS > 임베디드시스템
지은이 이만우 (인사이트, 2009년)
상세보기


요즘, 도전 임베디드 OS만들기란 책을 요즘 보고 있습니다.

이지보드가 없는 터라 책에 있는 예제를 보고 따라하려니 qemu 에뮬레이터를 돌려야 하더군요.

맥에서 qemu emulator를 brew로 설치(brew install qemu)하였습니다.

이후 책의 예제를 컴파일 한 후에 qemu를 실행하려니 아래와 같은 에러가 계속 뜨는겁니다 -ㅁ-

$ qemu-system-arm -M connex -pflash u-boot.bin -nographic

qemu: Error registering flash memory. 


이런 낭패가... 구글링한결과 아래와 같이 실행하면 된다는군요 -_-;; (책의 내용이 약간 예전 내용이라서 현재 버전과 안맞는 경우가 약간은 있더군요 ㅠㅠ)

dd of=flash bs=1k count=16k if=/dev/zero
dd of=flash bs=1k conv=notrunc if=u-boot.bin 

qemu-system-arm -M connex -pflash flash -monitor null -nographic

아래는 맥에서 테스트했을때 화면입니다.


'컴퓨터 > Embedded' 카테고리의 다른 글

AVR 책을 삼  (6) 2006.12.27
부품이 왜이리 비싸?  (5) 2006.12.22
윤교수의 마이크로프로세서 월드  (0) 2006.09.18
CISC와 RISC의 차이점?  (2) 2006.09.18
Buy me a coffeeBuy me a coffee
홍익대학교 전자전기공학부로 입학하여 컴퓨터공학과를 복수전공 하시고 이번에 한양대 대학원으로 진학하게 되신 정태영님 말씀 듣고 AVR책을 샀습니다.

엉뚱한 사이트에서 본 Kit는 너무나 비쌈 -_-+
책과 같이 하여

무려 152,900원!!!ㄷㄷㄷ

근데 AVR에서 AV giRl 가 생각나는 것은 뭐죠? 난 순수하지 못한다는 것인가? ㅠㅠ 순진한 모습으로 돌아갈래~ (윤도현밴드 노래 생각이 남 -_-;;)



서점에서 AVR 관련 책들은 많은데 AVR PCB기판 있고 괜찮은 책 찾기가 너무나 어려웠습니다 -_-;;
전자회로 들은 것을 아깝게 들은 것만으로 하기가 싫어서 한 번 손대었는데 이제 시작입니다 :D

▲ 서점에서 산 AVR책 입니다. 정가 25,000원. 다른 책들과 마찬가지로 최신간들은 AVR 고급 기능만 가진 책들이군요 -_-;;


▲PCB 기판있다 ;ㅁ;, 다른 AVR책들은 PCB기판이 없난 말이다! -_-;; 불우한 대학생을 위하여 PCB정도는 끼워주는 센스를 모르나?


▲ 그 문제의 책과 같이하여 무려 152,900원!!!인 kit입니다. 저 kit처럼 만들면 되지?


저렇게 땜질하면 되겠군요 ^_^

근데 문제의 site에서 본 부품 세트 가격이 ㄷㄷㄷ

무려 88,000원!!!ㄷㄷㄷ

회사가 장난한가? 아무리 부품값이 비싸도 저렇게 비쌀수가 ㄷㄷㄷ
내가 잘못 안 것인가?? 부품들을 세트로 파니 편리한 것 같은데?

'컴퓨터 > Embedded' 카테고리의 다른 글

qemu: Error registering flash memory. 해결방법  (0) 2011.03.27
부품이 왜이리 비싸?  (5) 2006.12.22
윤교수의 마이크로프로세서 월드  (0) 2006.09.18
CISC와 RISC의 차이점?  (2) 2006.09.18
Buy me a coffeeBuy me a coffee
전에 쓴 포스트에서 8051보다 AVR이 좋다는 말에 Ubuntu에 avr-gcc를 깔았고 세팅을 다했습니다. avr kit만있으면 된다고 해서 어디서 구할까 생각을 했습니다.
큰맘 먹고 Ohm사 홈페이지에서 kit를 구매하려고 했더니...

완제품 kit가 orz
책과 같이 하여

무려 152,900원!!!

좌절. 그리고 PCB기판이 왜이리 비쌉니까? 후덜덜덜
그리고 부품들도 ㄷㄷㄷ

돈때문에 접근을 하기가 싶지 않군요 -_-;; 그냥 어플리케이션 프로그래밍만 전념을 할까? ㅠㅠ

가격 보고 충격을 먹어서 도서관에서 빌린 8051책과, AVR책 바로 반납했습니다. -_-;;
이 상황이 전자공학을 하기 보다 컴퓨터공학을 하길 잘했다는 티가 나군요. -_-;; 학문을 접근시에 비용이 꼭 발생하는 것 때문에 전자공학을 하기 힘든 것 같네요.
(컴퓨터공학은 책은 도서관에서 빌려서 해도 괜찮기때문에.. 자기 만족중-_-;;)
초등학교때 땜질 하는게 재미있어서 전자공학과 갈려다가 컴퓨터공학과로 왔는게 잘했는 일인지는 모르겠다만...

'컴퓨터 > Embedded' 카테고리의 다른 글

qemu: Error registering flash memory. 해결방법  (0) 2011.03.27
AVR 책을 삼  (6) 2006.12.27
윤교수의 마이크로프로세서 월드  (0) 2006.09.18
CISC와 RISC의 차이점?  (2) 2006.09.18
Buy me a coffeeBuy me a coffee
공대생들에게 추천해 줄 Site가 있습니다
윤교수의 마이크로프로세서 월드라는 곳입니다.
http://control.cntc.ac.kr/cpu/

약간 공대생들중에서 전자공학쪽에서만 추천해야할 것 같은 느낌이 -_-;;

P.C.R.C.선배님이자 KLDP에서 유명하신 신성국선배님(cinsk)께서 추천한 싸이트이다.
전자공학도들이 들어갈법한 싸이트인데 컴퓨터공학도들도 보기에 괜찮은 글들이 많은 것 같다.
내 전공인 컴퓨터공학쪽보다는 전자공학쪽에 치우친 게 있지 않으나 마이크로프로세서에 대한 자료들이 많이 있군요.
이 싸이트를 좀 일찍 알았다면 좋겠다는 생각도 많이 든다. 이렇게 좋은 글들을 여태동안 못봤는지^^

여기서는 기술적인 문서들 뿐만 아니라 좋은 글들을 많이 있습니다. 공대생들이라면 꼭 읽어야 할 글들이 다 나와있다고 하면 됩니다..
싸이트에 가서
[기술자료실]->[초보자 특별 교실]-> 2. (12)"시간이 초보를 고수로 만들어주지 않는다"
[기술자료실]->[초보자 특별 교실]-> 2. (13) "방황하는 이 시대의 젊은이들에게"
두 개를 꼭 읽어보기 바랍니다. (기술/학문에 대한 거 아니라 걱정하지 마시길^^)

이글루스 가든 - 무적의 공대생이 되자!

'컴퓨터 > Embedded' 카테고리의 다른 글

qemu: Error registering flash memory. 해결방법  (0) 2011.03.27
AVR 책을 삼  (6) 2006.12.27
부품이 왜이리 비싸?  (5) 2006.12.22
CISC와 RISC의 차이점?  (2) 2006.09.18
Buy me a coffeeBuy me a coffee
CISC와 RISC의 차이점?

어셈블리 언어를 배우다 보니 교수님께서 CISC와 RISC에 대해 말씀 하셨습니다.
우리 학과에서 배우는 어셈블리언어는 SUN사에서 나온 SPARC Machine에서 나온 Assembly를 배운다고 하네요.
다른 대학교의 컴퓨터공학과나 전자전기공학부나 전자공학과쪽에서 에서 배우는 어셈블리언어랑 약간 차이가 있다고 합니다.
교수님께서 CISC와 RISC에 대해 말씀 했는데 갑자기 생각이 안 나서 구글링과 지식인을 찾아보니 괜찮은 내용이 있어서 올려봅니다.

RISC마이크로프로세서
  • CPU의 명령어를 최소화하여 단순하게 제작된 프로세서를 말함.
  • 속도가 빠르고, 가격이 싸며, 다양한 기술의 이용이 가능함
  • 네트워크 서버용, 워크스테이션에 주로 이용된다.

CISC마이크로프로세서
  • 복잡하고 기능이 많은 명령어로 구성된 프로세서를 말함
  • 속도가 느리고 가격이 비쌈
  • PC에서 사용되는 386, 486, 펜티엄에 사용됨.


아래 글은 인터넷에서 찾은 내용임
CISC(Complex Instruction Set Computer)
인 텔의 8086은 16비트 프로세서로, 명령어의 길이가 1바이트에서 8바이트까지 가변적으로 구성되어 있다. 명령어가 가변적이고 복잡하므로 CISC 방식이라고 하는 것이다. 이 구조는 가능한 한 명령어의 길이를 줄여서 명령어의 디코딩(decoding, 해석) 속도를 높이고 최소의 메모리 구조를 갖도록 하기 위해서 정해진 것으로, 하나의 프로세서가 일련의 명령어를 순차적으로 처리하기에는 무척 유용한 방법이며, CPU의 동작 속도가 높아짐에 따라 성능이 비례로 증가한다. CISC 방식은 32비트 프로세서인 80386까지도 아무런 문제없이 적용된 기술이므로 완벽한 하위 호환성을 유지할 수 있었다.

그러나, 80486이 등장하면서 단순히 CPU의 클럭(clock, 동작 속도)을 높이는 방식으로 성능 향상을 기대할 수 없으므로 CISC 방식의 문제점이 드러나기 시작했다. 클럭에는 한계가 있기 때문이다. 그래서, 한번에 여러 개의 명령어를 동시에 수행할 수 있는 기술이 필요하게 되었다. 즉, 동일한 클럭에서 두 개의 명령어를 한번에 처리하게 되면 두 배의 성능 향상을 기대할 수 있기 때문이다. 그러나, 슈퍼 스칼라(super scalar) 구조에서는 명령어의 길이가 가변적이기 때문에 순차적으로 해석해야 하고 조건/비조건 분기가 중간에 자주 등장하므로 여러개의 명령어를 처리하기에는 적합하지 못했다.

결국, 펜티엄부터 RISC86이라는 기법이 사용되었다. 이 방식은 AMD의 인텔 호환 CPU에서 사용된 기술로, 명령어의 해석 부분을 기존의 슈퍼 스칼라 방식으로 유지하면서 독립된 장치로 설계하여 연속적이고 고속으로 명령어를 RISC 방식으로 변환시키는 것이다. 그리고, 실제로 연산을 처리하는 장치는 RISC 방식으로 처리하여 여러 개의 명령어를 처리할 수 있도록 하는 방식이다. 그래서, 인텔 펜티엄 프로세서는 최대한 두 개의 명령어를 동시에 처리할 수 있는 것이다.


CISC 방식의 마이크로 프로세서
RISC(Reduced Instruction Set Computer)
1970년대에 등장한 RISC 방식은 최신 프로세서의 핵심 기술로, CPU에서 수행하는 모든 동작의 대부분이 몇 개의 명령어만7으로 가능하다는 사실을 전제로 하고 있다.

인 텔과 경쟁하며 제품을 개발하던 모토롤라(Motorola)의 프로세서를 사용한 애플(Apple)의 매킨토시 컴퓨터에는 68 계열의 프로세서가 장착되어 있는데, 이 프로세서가 CISC(Complex Instruction Set Computer) 방식을 채택하고 있다. 모토롤러의 RISC계열로는 88계열이, 인텔에서는 x60계열이 있었다. 말 그대로 간단한 명령어만으로 구성되는 CPU이다.
그래서, 인텔 CPU 기반으로 개발된 프로그램은 매킨토시에서 사용할수 없었는데, 이것은 CPU 아키텍처가 다르기 때문이다.

RISC CPU는 고정된 길이의 명령어를 사용하고 명령어의 종류가 미리 정해져 있으므로 해석 속도가 빠르고 여러 개의 명령어를 처리하기에 적합하다는 장점이 있다. 특히, 분기 위치가 정해져 있고 비순차 처리도 가능하다. 그러나, 처리 비트 단위가 변하거나 CPU의 구조가 조금만 바뀌어도 하위 프로세서와의 호환성이 떨어지므로 문제가 발생한다. 이것은 하위 컴퓨터의 표준이 될만한 호환 명령어라는 개념이 없고 프로세서의 단계에 따라 최적의 명령어가 정해져 있기 때문이다.

이처럼 RISC 방식의 대표적인 CPU인 모토롤라 68 계열은 소프트웨어의 호환성 결여 때문에 인텔에 비해서 뛰어난 성능을 가지고 있음에도 불구하고 많은 사용자를 확보하지 못하고 있다. 단지 고성능의 대용량 데이터 처리가 필요하고 소프트웨어 활용이 비교적 고정되어 있는 워크스테이션을 중심으로 해서 많이 사용되고 있다.

RISC는 명령어가 전부 1워드(word) 길이로 짧고 파이프라인(pipeline)과 슈퍼 스칼라(super scalar)를 통해서 멀티 태스킹이 가능하므로 CISC에 비해서 많은 레지스터를 가지고 있다는 특징을 가진다.


RISC 방식의 마이크로 프로세서


이럴땐 스크랩도 도움이 되구나 생각됩니다 -_-;;

'컴퓨터 > Embedded' 카테고리의 다른 글

qemu: Error registering flash memory. 해결방법  (0) 2011.03.27
AVR 책을 삼  (6) 2006.12.27
부품이 왜이리 비싸?  (5) 2006.12.22
윤교수의 마이크로프로세서 월드  (0) 2006.09.18
Buy me a coffeeBuy me a coffee

+ Recent posts