»óǰ»ó¼¼
Embedded Sketches
ÀÔ¹®ÀÚ¿ë ÀÓº£µðµå ÇÁ·Î±×·¡¹Ö ÀÔ¹®¼­ ÀúÀÚ : Soto | ÃâÆÇ»ç : ÄÚ³ÊºÏ | ÃÊÆÇ 2¼â ¹ßÇà 2015³â 3¿ù 10ÀÏ | 776ÂÊ | 150*220 ¹èÆÇ | 1ÆÇ

ÆÇ¸Å°¡°Ý 33,000¿ø
¼ÒºñÀÚ°¡°Ý 33,000¿ø
Àû¸³±Ý0¿ø
»óǰ»óŽŻóǰ
Á¦Ç°ÄÚµåIT-0903
Á¦Á¶»çÄڳʺÏ
Ãâ½ÃÀÏ2015-03-10
±¸¸Å¼ö·®
°³
°í°´¼±È£µµ¡Ú¡Ú
ÃÑ ±Ý¾× :

 

ISBN : 978-89-961489-2-0

 


 

¢Ñ º» ¼­ÀûÀº ÃâÆÇ»çÀΠÄÚ³ÊºÏ È¨ÆäÀÌÁöÀÇ ¿Â¶óÀÎ ÁÖ¹®À» ÅëÇØ¼­¸¸ ±¸¸ÅÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
¢Ñ ÁÖ¹®ÇϽŠåÀڴ ¸ÂÃãÁÖ¹®µÈ µµ¼­Àü¿ë »È»ÈÀÌ + µµ¼­Àü¿ë ¹Ú½º¿¡ º¸È£µÇ¾î
    ±× ¾î¶² µµ¼­Àü¹® ¼¥º¸´Ù ¾ÈÀüÇÏ°Ô ¹è¼ÛµË´Ï´Ù.
¢Ñ ¹è¼ÛÁßÀÇ ÆÄ¼Õ¿¡ ´ëÇØ¼­´Â 100% ȯºÒ/±³È¯Çص帳´Ï´Ù.


 

  INTRODUCTION
 

 

ÀúÀÚ ¼­¹®

 

º» Ã¥ÀÚ´Â È÷¾ð´ÔÀÇ Ä£ÀýÇÑ ÀÓº£µðµå ½Ã½ºÅÛ °³¹ßÀÚ µÇ±â °­Á ºí·Î±×(http://recipes.egloos.com/5207842) ½ÃÁð3 °­Àǽǿ¡ ¿¬ÀçµÇ¾ú´ø ³»¿ëÀ» Ã¥À¸·Î ¿«Àº °ÍÀÔ´Ï´Ù. ±âÁ¸ÀÇ À¥ÀÇ ³»¿ëÀ» º¸¿ÏÇϰí Ãß°¡ÇÏ¿´À¸¸ç, ¼ö¸¹Àº À̹ÌÁö¸¦ Ã¥ÀÚ¿ëÀ¸·Î ¾÷±×·¹À̵åÇÏ¿© Àбâ ÁÁ°Ô ÆíÁýµÈ ¼­ÀûÀÔ´Ï´Ù.

ÀÓº£µðµå ÀÔ¹®¼­·Î ±âº»¿¡ Ãæ½ÇÇÏ°í ±íÀÌ ÀÖ°Ô ´Ù·ç°í ÀÖ½À´Ï´Ù. 8³â°£ ½Ç¹«¿¡¼­ ÀÖ¾ú´ø know-what, know-how, know-why À» Á¤¸®Çؼ­ Ã¥À¸·Î Ãâ°£Çß½À´Ï´Ù
.
 

±âº»ÀÌ ºÎÁ·ÇÏ¿© Àü°ø¼­ÀûÀ» ÀоîºÁµµ ¾î·Æ´Ù°í ´À³¢´Â ºÐµé
±âº»ÀÌ·ÐÀº ¾ËÁö¸¸ ±âº»½Ç¹«°¡ ºÎÁ·ÇÏ´Ù°í ´À³¢´Â ºÐµé
Ãë¾÷ Áغñ¸¦ À§ÇØ ¹«¾ùÀ» °øºÎÇØ¾ß µÉÁö ¸ð¸£´Â ºÐµé
±Ûº¸´Ù ±×¸²ÀÌ ÀÌÇØ°¡ ´õ Àß µÇ°í, ÀúÀÚ¿¡°Ô Áú¹®À» ³²°Ü Á÷Á¢ ´äº¯À» ¹Þ°í ½ÍÀº ºÐµé
Æò¼Ò ´©±º°¡¿¡°Ô ¹¯°í ½Í¾úÁö¸¸ ¹°¾î º¼ »ç¶÷ÀÌ ¾ø´Â ºÐµé

´©±º°¡¿¡°Ô Áú¹®À» ÇßÁö¸¸ ¸í±¥ÇÑ ´äº¯À» ¾òÁö ¸øÇ߰ųª Áú¹®À» ¹Þ¾ÒÁö¸¸ ¸í±¥ÇÑ ´äº¯À» ¸ø ÇØ ÁÖ´Â ºÐµé

½ÅÀÔ »ç¿ø¿¡°Ô ½Ç¹«ÀÇ ±âº»À» °¡¸£ÃÄ Áà¾ß Çϴµ¥ ¾îµð¼­ºÎÅÍ ½ÃÀÛÇØ¾ß µÉÁö ¸ð¸£´Â ºÐµé
¸Å³â¸¶´Ù ½ÅÀÔ »ç¿øÀÇ ¹Ýº¹ÀûÀÎ ¶È °°Àº Áú¹®ÀÌ Áö°Ü¿î ºÐµé
¼±ÀÓ ¿¬±¸¿øÀ¸·Î ½ÂÁøÀ» ¿øÇϽô ºÐµé

»õ·Î¿î Ä¿¸®Å§·³À» µµÀÔÇϰíÀÚ ÇϽô ºÐµé

±âº»À» ¹ÙÅÁÀ¸·Î ÀÌÁ÷À» °í·ÁÇϽô ºÐµé

 

  ¿¡°Ô ¹ÙĨ´Ï´Ù.

 

  TABLE OF CONTENTS

1Àå Embedded System Begin


100 ÀÓº£µðµå ½Ã½ºÅÛÀÌ ¹¹ÁÒ?
101 ¿Ö ÀÓº£µðµå ½Ã½ºÅÛ¿¡¼­´Â C¾ð¾î¸¦ °¡Àå ¸¹ÀÌ »ç¿ëÇϳª¿ä?
102 ¾î¶² °øºÎºÎÅÍ ½ÃÀÛÇØ¾ß µÉÁö ¸ð¸£°Ú¾î¿ä?
103 Çб³¿¡¼­ °øºÎÇÑ ³»¿ëÀÌ Çö¾÷¿¡¼­ ¾î¶»°Ô ¾²À̳ª¿ä?
104 Ãë¾÷ÀÌ³Ä ÁøÇÐÀ̳Ä?
105 ¿¬ºÀ ¸¹ÀÌ ¹ÞÀ¸·Á¸é?
106 Á¹¾÷ Àü±îÁö ¹Ýµå½Ã ÇØ¾ß µÉ ÀÏÀº?
107 LED¸¦ ON/OFF Á¦¾îÇÏ·Á¸é?
108 MCU vs Processor vs Core Â÷ÀÌÁ¡ÀÌ ¹»±î¿ä?
109 ³ªÀÇ ÀÎ(ìÑ)¶óÀÎÀº?

 


2Àå Hardware Analyse


200 CPU°¡ ÇÏ´Â ÀÏÀÌ ¹¹ÁÒ?
201 ÄÚ ÇÁ·Î¼¼¼­(Co-processor)°¡ ÇÏ´Â ÀÏÀÌ ¹¹ÁÒ?
202 ij½Ã ¸Þ¸ð¸®(Cache Memory)°¡ ¹¹ÁÒ?
203 ³ë¾î Ç÷¡½Ã(NOR Flash)°¡ ¹¹ÁÒ?
204 ³½µå Ç÷¡½Ã(NAND Flash)°¡ ¹¹ÁÒ?
205 SDRAMÀÌ ¹¹ÁÒ?
206 ÀÎÅÍ·´Æ®(Interrupt)°¡ ¹¹ÁÒ?
207 Á¦ÀÌÅØ(JTAG)ÀÌ ¹¹ÁÒ?
208 ½Ã¸®¾ó Æ÷Æ®(Serial port)°¡ ¹¹ÁÒ?
209 LCD°¡ ¹¹ÁÒ?

 

 

3Àå Software Analyse


300 Å©·Î½º ÄÄÆÄÀÏ·¯(Cross Compiler)°¡ ¹¹ÁÒ?
301 Startup(Startup.S) ÆÄÀÏÀÌ ¹¹ÁÒ?
302 ¸ÞÀÌÅ© ÆÄÀÏ(Makefile)ÀÌ ¹¹ÁÒ?
303 ¸µÄ¿ ½ºÅ©¸³Æ®(Linker Script) ÆÄÀÏÀÌ ¹¹ÁÒ?
304 C ¾ð¾î¿¡¼­ º¯¼ö´Â ¾îµð¿¡ ÀúÀå µÇ³ª¿ä?
305 C ¾ð¾î¿¡¼­ C++ ÇÔ¼ö¸¦ ÄÝÇÏ´Â ¹æ¹ýÀº?
306 ÀζóÀÎ ¾î¼Àºí¸®¸¦ »ç¿ëÇÏ·Á¸é?
307 ¼Ò½º ·¹º§ µð¹ö±ëÀÌ ¹¹ÁÒ?
308 MMU¸¦ Àο¡À̺í(Enable)ÇÏ·Á¸é?
309 Cache¸¦ Àο¡À̺í(Enable) ÇÏ·Á¸é?

 


4Àå RTOS Analyse


400 Monolithic kernel°ú Micro kernel Â÷ÀÌÁ¡Àº?
401 ÀÓº£µðµå OSÀÇ ¿ë¾î Á¤ÀÇ
402 ARM ÇÁ·Î¼¼¼­¿¡ uC/OS2 Æ÷ÆÃÀ» À§ÇÑ Áغñ»çÇ×Àº?
403 uC/OS2 Æ÷ÆÃ ¿Ï·á±îÁöÀÇ ÀýÂ÷°¡ ¾î¶»°Ô µÇÁÒ?
404 ARM ÇÁ·Î¼¼¼­¿¡ Linux Æ÷ÆÃÀ» À§ÇÑ Áغñ»çÇ×Àº?
405 Linux Æ÷ÆÃ ¿Ï·á±îÁöÀÇ ÀýÂ÷°¡ ¾î¶»°Ô µÇÁÒ?
406 Linux¿¡¼­ ¶óÀ̺귯¸®¸¦ ¸¸µå´Â ¹æ¹ýÀº?
407 ARM ÇÁ·Î¼¼¼­¿¡ WinCE Æ÷ÆÃÀ» À§ÇÑ Áغñ»çÇ×Àº?
408 WINCE Æ÷ÆÃ ¿Ï·á±îÁöÀÇ ÀýÂ÷°¡ ¾î¶»°Ô µÇÁÒ?
409 WINCE¿¡¼­ ¾îÇø®ÄÉÀ̼ǰú DLLÀ» ¸¸µå´Â ¹æ¹ýÀº?

 


5Àå ARM Processor Analyse


500 ARM ÇÁ·Î¼¼¼­°¡ ¸¹ÀÌ ¾²ÀÌ´Â ÀÌÀ¯´Â?
501 ARM Mode¿Í PSR..³ÊÈñµéÀº ´©±¸³Ä?
502 R13, R14¿¡°Ô ¹ÝÇß´Ù?
503 ÆÄÀÌÇÁ ¶óÀÎ(Pipe Line)ÀÇ ¹ýÄ¢?
504 ¿ì¸®´Â ÆÐ¹Ð¸®(ARM, THUMB, Co-processor, NEON)
505 ¾î¼Àºí¸® ¸í·É¾îÀÇ Àý´ë°­ÀÚ

506 ¸ðµå ºñÆ®(Mode bit)¿Í Exception ó¸®
507 ARM ÇÁ·Î¼¼¼­¿Í Çϵå¿þ¾î µð¹ö°Å?
508 Çϵå¿þ¾î µð¹ö°Å¿Í Breakpoint?
509 Çϵå¿þ¾î µð¹ö°Å¿Í Array, ±×¸®°í Pointer?

 


6Àå Digital Photo project


601 Startup ÆÄÀÏÀ» ¸¸µé¾î º¸¾Æ¿ä.
602 Main.c ÆÄÀÏÀ» ¸¸µé¾î º¸¾Æ¿ä.
603 Makefile°ú linker.ld ÆÄÀÏÀ» ¸¸µé¾î º¸¾Æ¿ä.
604 Çϵå¿þ¾î µð¹ö°Å¸¦ »ç¿ëÇØ º¸¾Æ¿ä.
605 LCD µå¶óÀ̹ö¸¦ ¸¸µé¾î º¸¾Æ¿ä.
606 ¾îÇø®ÄÉÀ̼ÇÀ» ¸¸µé¾î º¸¾Æ¿ä.
607 Á¶±Ý ´õ ºü¸£°Ô ¸¸µé¾î º¸¾Æ¿ä.
608 NOR Flash¿¡ ´Ù¿î·Î´õ¸¦ ÇØ º¸¾Æ¿ä.
609 ¼ÒÇÁÆ®¿þ¾î Å×½ºÆÃÀ» ÇØ º¸¾Æ¿ä.

 


7Àå Embedded Platform Analyse


700 µð¹ö±ëÀÇ ´ÞÀÎ
701 °í±Þ µð¹ö±ëÀÇ ±â¼ú
702 Android¿Í ù ¸¸³²
703 Android ±¸¼º¿ä¼Ò
704 Android ÇÁ·Î¼¼½ºÀÇ ¸Þ¸ð¸® ±¸Á¶
705 Android Start Kernel¿¡¼­ Init ÇÁ·Î¼¼½º±îÁö
706 Android Init ÇÁ·Î¼¼½º µ¿ÀÛ °úÁ¤
707 Android Servicemanager, Zygote, System_server
708 Android New ÇÁ·Î¼¼½º »ý¼º °úÁ¤
709 Android RAM Dump Solution
Appendix
Appendix 1. Dec-Hex-Size
Appendix 2. WINCE600 booting sequence
Appendix 3. MMU command
Appendix 4. Android User space memory map

¹è¼Ûºñ : ±âº»¹è¼Û·á´Â 2,500¿ø ÀÔ´Ï´Ù. (µµ¼­,»ê°£,¿ÀÁö ÀϺÎÁö¿ªÀº ¹è¼Ûºñ°¡ Ãß°¡µÉ ¼ö ÀÖ½À´Ï´Ù)  50,000¿ø ÀÌ»ó ±¸¸Å½Ã ¹«·á¹è¼ÛÀÔ´Ï´Ù.
º» »óǰÀÇ Æò±Õ ¹è¼ÛÀÏÀº ÀÏÀÔ´Ï´Ù.(ÀÔ±Ý È®ÀÎ ÈÄ) ¼³Ä¡ »óǰÀÇ °æ¿ì ´Ù¼Ò ´Ê¾îÁú¼ö ÀÖ½À´Ï´Ù.[¹è¼Û¿¹Á¤ÀÏÀº ÁÖ¹®½ÃÁ¡(ÁÖ¹®¼ø¼­)¿¡ µû¸¥ À¯µ¿¼ºÀÌ ¹ß»ýÇϹǷΠÆò±Õ ¹è¼ÛÀϰú´Â Â÷À̰¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.]
º» »óǰÀÇ ¹è¼Û °¡´ÉÀÏÀº ÀÏ ÀÔ´Ï´Ù. ¹è¼Û °¡´ÉÀÏÀ̶õ º» »óǰÀ» ÁÖ¹® ÇϽŠ°í°´´Ôµé²² »óǰ ¹è¼ÛÀÌ °¡´ÉÇÑ ±â°£À» ÀǹÌÇÕ´Ï´Ù. (´Ü, ¿¬ÈÞ ¹× °øÈÞÀÏÀº ±â°£ °è»ê½Ã Á¦¿ÜÇϸç Çö±Ý ÁÖ¹®ÀÏ °æ¿ì ÀÔ±ÝÀÏ ±âÁØ ÀÔ´Ï´Ù.)
»óǰ û¾àöȸ °¡´É±â°£Àº »óǰ ¼ö·ÉÀÏ·Î ºÎÅÍ ÀÏ À̳» ÀÔ´Ï´Ù.
»óǰ ÅÃ(tag)Á¦°Å ¶Ç´Â °³ºÀÀ¸·Î »óǰ °¡Ä¡ ÈÑ¼Õ ½Ã¿¡´Â ÀÏ À̳»¶óµµ ±³È¯ ¹× ¹ÝǰÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù.
Àú´Ü°¡ »óǰ, ÀϺΠƯ°¡ »óǰÀº °í°´ º¯½É¿¡ ÀÇÇÑ ±³È¯, ¹ÝǰÀº °í°´²²¼­ ¹è¼Ûºñ¸¦ ºÎ´ãÇÏ¼Å¾ß ÇÕ´Ï´Ù(Á¦Ç°ÀÇ ÇÏÀÚ,¹è¼Û¿À·ù´Â Á¦¿Ü)
ÀϺΠ»óǰÀº ½Å¸ðµ¨ Ãâ½Ã, ºÎǰ°¡°Ý º¯µ¿ µî Á¦Á¶»ç »çÁ¤À¸·Î °¡°ÝÀÌ º¯µ¿µÉ ¼ö ÀÖ½À´Ï´Ù.
½Å¹ßÀÇ °æ¿ì, ½Ç¿Ü¿¡¼­ ÂøÈ­ÇÏ¿´°Å³ª »ç¿ëÈçÀûÀÌ ÀÖ´Â °æ¿ì¿¡´Â ±³È¯/¹Ýǰ ±â°£³»¶óµµ ±³È¯ ¹× ¹ÝǰÀÌ ºÒ°¡´É ÇÕ´Ï´Ù.
¼öÁ¦È­ Áß °³º° ÁÖ¹®Á¦ÀÛ»óǰ(±Á³ôÀÌ,¹ßº¼,»çÀÌÁî º¯°æ)ÀÇ °æ¿ì¿¡´Â Á¦ÀÛ¿Ï·á, Àμö ÈÄ¿¡´Â ±³È¯/¹Ýǰ±â°£³»¶óµµ ±³È¯ ¹× ¹ÝǰÀÌ ºÒ°¡´É ÇÕ´Ï´Ù.
¼öÀÔ,¸íǰ Á¦Ç°ÀÇ °æ¿ì, Á¦Ç° ¹× º» »óǰÀÇ ¹Ú½º ÈѼÕ, ºÐ½Ç µîÀ¸·Î ÀÎÇÑ »óǰ °¡Ä¡ ÈÑ¼Õ ½Ã ±³È¯ ¹× ¹ÝǰÀÌ ºÒ°¡´É ÇÏ¿À´Ï, ¾çÇØ ¹Ù¶ø´Ï´Ù.
ÀϺΠƯ°¡ »óǰÀÇ °æ¿ì, Àμö ÈÄ¿¡´Â Á¦Ç° ÇÏÀÚ³ª ¿À¹è¼ÛÀÇ °æ¿ì¸¦ Á¦¿ÜÇÑ °í°´´ÔÀÇ ´Ü¼øº¯½É¿¡ ÀÇÇÑ ±³È¯, ¹ÝǰÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖ»ç¿À´Ï, °¢ »óǰÀÇ »óǰ»ó¼¼Á¤º¸¸¦ ²À ÂüÁ¶ÇϽʽÿÀ.