º» ±³Àç´Â, C-¾ð¾î¿Í ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼¿¡ ´ëÇÑ ±âº» Áö½ÄÀ» °¡Áö°í ÀÖ´Â ÇкΠ3,4 Çгâ ÇлýµéÀÌ ¸®´ª½º ¿î¿µÃ¼Á¦¸¦ °®Ãá ARM ±â¹ÝÀÇ ÀÓº£µðµå ½Ã½ºÅÛ¿¡¼, ÀåÄ¡ »ç¿ë¿¡ ÇÊ¿äÇÑ µð¹ÙÀ̽º µå¶óÀ̹ö¸¦ ¸¸µé°í À̸¦ È°¿ëÇÏ´Â ÀÀ¿ëÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ÀÍÈú ¼ö ÀÖµµ·Ï ÇÏ´Â °ÍÀ» ¸ñÇ¥·Î ¸¸µé¾îÁ³´Ù. À̸¦ À§Çؼ 2Àå°ú 3Àå¿¡¼´Â PC¿¡ ¼³Ä¡µÈ ¸®´ª½º ȯ°æ¿¡¼,¸®´ª½º ¸í·É¾î »ç¿ë¹ý°ú C¸¦ »ç¿ëÇÑ ÀÀ¿ëÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ´Ù·ç¾î¼ À©µµ¿ì ȯ°æ¿¡ Àͼ÷ÇÑ µ¶ÀÚµéÀÌ Ä¿¸Çµå âÀ» È°¿ëÇÏ´Â ¸®´ª½º ¿î¿µÃ¼Á¦¿¡ ÀûÀÀÇÒ ¼ö ÀÖµµ·Ï ÇÏ¿´°í 4Àå ÀÌÈÄ¿¡¼´Â ARM ±â¹ÝÀÇ º¸µå¿¡ ¸®´ª½º OS¸¦ ¼³Ä¡ÇÏ°í, °³¹ßȯ°æÀ» ±¸ÃàÇؼ ÀÓº£µðµå º¸µå¿¡ Àû¿ëÇÒ µð¹ÙÀ̽º µå¶óÀ̹ö¸¦ ¸¸µé°í À̸¦ È°¿ëÇÏ´Â ÀÀ¿ëÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °úÁ¤À» ¼Ò°³ÇÏ°í ÀÖ´Ù. 1Àå ÈĹݺο¡´Â ARMÇÁ·Î¼¼¼ÀÇ ±¸Á¶¿Í ¸í·É¾î¿¡ ´ëÇؼ °£·«ÇÏ°Ô Á¤¸®ÇÏ¿´´Ù. 4Àå ÀÌÈÄÀÇ ³»¿ëÀ» ´Ù·ç±â Àü¿¡ 1Àå ÈĹݺθ¦ °øºÎÇϸé ÁÁÀ» °ÍÀ¸·Î »ý°¢ÀÌ µÈ´Ù. 4Àå ÀÌÈÄÀÇ ½Ç½À¿¡ »ç¿ëµÇ´Â ÀÓº£µðµå º¸µå´Â »ï¼ºÀÇ Exynos-5250À» È°¿ëÇÑ ÈÞÀνºÀÇ Achro-5250ÀÌ´Ù.
chapter 1. ARM ±â¹Ý ÀÓº£µðµå ½Ã½ºÅÛ
1.1 ÀÓº£µðµå ½Ã½ºÅÛ °³¿ä
1.2 ÀÓº£µðµå ½Ã½ºÅÛ Çϵå¿þ¾î
1.2.1 ½Ã½ºÅÛ ¿Â Ĩ(System on Chip : SoC)
1.2.2 ¸Þ¸ð¸® ±¸¼º
1.2.3 ÁÖº¯ÀåÄ¡(Peripheral)
1.3 ARM ÇÁ·Î¼¼¼
1.3.1 ARM ÇÁ·Î¼¼¼ °³¿ä
1.3.2 ARM ¾ÆÅ°ÅØÃÄÀÇ Æ¯Â¡
1.3.3 ARM7/9/11/ Cortex ¾ÆÅ°ÅØÃÄ
1.4 ARM9TDMI ÇÁ·Î¼¼¼ ÄÚ¾î
1.4.1 Ư¡
1.4.2 ARM9 ÇÁ·Î±×·¡¹Ö ¸ðµ¨
1.4.3 ¿¹¿Ü»çÇ×(Exceptions)
1.4.4 ¸Þ¸ð¸®, ¸Þ¸ð¸® °ø°£ I/O
1.5 ARM ¸í·É¾î
1.5.1 ¸í·É¾î °³¿ä
1.5.2 µ¥ÀÌÅÍ Ã³¸® ¸í·É¾î
1.5.3 »óÅ·¹Áö½ºÅÍ ¸í·É¾î
1.5.4 ºÐ±â ¸í·É¾î
1.5.5 °öÇϱ⠸í·É¾î
1.5.6 Immediate »ó¼ö
1.5.7 ¸Þ¸ð¸® »ç¿ë ¸í·É¾î
1.6 ¿¬½À¹®Á¦
chapter 2. ¸®´ª½º ½Ã½ºÅÛ
2.1 ¸®´ª½º ¼Ò°³
2.1.1 ¿î¿µÃ¼Á¦
2.1.2 ¸®´ª½º ¿ª»ç
2.2 ¸®´ª½º ±¸Á¶
2.2.1 ¸®´ª½º Ä¿³ÎÀÇ ±¸Á¶
2.2.2 ¸®´ª½ºÀÇ Àå´ÜÁ¡
2.2.3 ¸®´ª½ºÀÇ ÀÚ¿øÁßÀç
2.3 PC¿¡ ¸®´ª½º ¼³Ä¡Çϱâ
2.2.1 Wubi ¼ÒÇÁÆ®¿þ¾î ¼³Ä¡
2.2.2 ¸®´ª½º ¼³Ä¡
2.2.3 È£½ºÆ® ½Ã½ºÅÛ ½´ÆÛÀ¯Àú »ç¿ë¼³Á¤
2.4 ¸®´ª½º ½© ¸í·É¾î
2.4.1 µð·ºÅ丮¿Í ÆÄÀÏ °ü·Ã ¸í·É¾î
2.4.2 I/O redirection°ú Pipe Line
2.4.3 ±ÇÇÑ Á¶ÀÛ ¸í·É¾î
2.4.4 ±âŸ ¸í·É¾î
2.5 ¿¬½À¹®Á¦
chapter 3. ¸®´ª½º ÀÀ¿ëÇÁ·Î±×·¥
3.1 ÄÄÆÄÀÏ°ú Make ÆÄÀÏ
3.1.1 C ÇÁ·Î±×·¥ ÀÛ¼º ¹× ½ÇÇà
3.1.2 Makefile
3.2 ÆÄÀÏ ÀÔÃâ·Â ÇÁ·Î±×·¥
3.2.1 open, close, read, write
3.2.2 ioctl
3.2.3 mmap
3.3 ÇÁ·Î¼¼½º, ¾²·¹µå, IPC
3.3.1 ÇÁ·Î¼¼½º
3.3.2 ¾²·¹µå
3.3.3 IPC(pipe)
3.4 Çϵå¿þ¾î ÀåÄ¡ »ç¿ë
3.4.1 ÀåÄ¡(Device) »ç¿ë °³¿ä
3.4.2 Á÷·ÄÅë½Å ÀåÄ¡ »ç¿ë
3.5 ¿¬½À¹®Á¦
chapter 4. ÀÓº£µðµå ¸®´ª½º °³¹ßȯ°æ
4.1 ÀÓº£µðµå ¸®´ª½º ±¸¼º
4.2 ÀÔÃâ·Â °¨½Ã ¹× µ¥ÀÌÅÍ Àü¼ÛÀ» À§ÇÑ ÇÁ·Î±×·¥ ¼³Ä¡
4.2.1 tftp ¼³Ä¡
4.2.2 NFS ¼³Ä¡(Network File System)
4.2.3 minicom ¼³Ä¡
4.2.4 Cross Complier ¼³Ä¡
4.3 ºÎÆ®·Î´õ(Boot Loader)
4.3.1 ºÎÆ®·Î´õ ÄÄÆÄÀÏ
4.3.2 ºÎÆ®·Î´õ ±â·Ï
4.3.3 u-boot ¸í·É¾î
4.4 ÀÓº£µðµå º¸µå¿ë Ä¿³Î(Kernel) ÄÄÆÄÀÏ
4.4.1 Ä¿³Î¼Ò½º ¼Ò½º Áغñ
4.4.2 Ä¿³Î ±â·Ï
4.5 ·çÆ® ÆÄÀÏ ½Ã½ºÅÛ(Root File System)
4.5.1 Root File SystemÀÇ ±¸¼º
4.6 Network File System(NFS) ¼³Á¤
4.6.1 È£½ºÆ® PCÀÇ network ¼³Á¤
4.6.2 network È®ÀÎ
4.6.3 Ÿ±êº¸µå¿¡¼ÀÇ NFS Æ÷ÆÃ
4.6.4 NFS ¿¬°á È®ÀÎ
chapter 5. µð¹ÙÀ̽º µå¶óÀ̹ö
5.1 Ÿ±êº¸µå¸¦ À§ÇÑ ÀÀ¿ëÇÁ·Î±×·¥ ÀÛ¼º
5.1.1 ¼Ò½ºÄÚµå ÀÛ¼º ¹× Å©·Î½ºÄÄÆÄÀÏ
5.1.2 ½Ç½À
5.2 ¸®´ª½º ¸ðµâ ÀÛ¼º¹ý
5.3 µð¹ÙÀ̽º µå¶óÀ̹ö ÀÎÅÍÆäÀ̽º
5.3.1 °£´ÜÇÑ LED µð¹ÙÀ̽º µå¶óÀ̹ö ¿¹Á¦
5.4 µð¹ÙÀ̽º µå¶óÀ̹ö °ü·Ã Ä¿³Î API
5.4.1 ioremap ÇÔ¼ö
5.4.2 request_irq ÇÔ¼ö
5.5 ¿¬½À¹®Á¦
Á¦6Àå Ÿ±êº¸µå¿ë ÀÀ¿ëÇÁ·Î±×·¥
6.1 ±×·¡ÇÈ LCDÈ°¿ë
6.1.1 ´Ü»ö µð½ºÇ÷¹ÀÌ
6.1.2 ½Ã°è ±¸Çö
6.2 ¸¶¿ì½º È°¿ë
6.2.1 Linux Input Subsystem
6.2.2 Event Handler È°¿ë
6.3 ŸÀÌ¸Ó È°¿ë
6.3.1 ŸÀÌ¸Ó °ü·Ã API
6.3.2 È°¿ë ¿¹
6.4 ¿¬½À¹®Á¦