[363] | 1 |
|
---|
| 2 | ï¼ TOPPERS/JSPã«ã¼ãã« ã¦ã¼ã¶ãºããã¥ã¢ã« ï¼
|
---|
| 3 | ï¼ARMv4 ã¿ã¼ã²ããä¾åé¨ï¼
|
---|
| 4 |
|
---|
| 5 | ï¼Release 1.4.3対å¿ï¼æçµæ´æ°: 10-May-2007ï¼
|
---|
| 6 |
|
---|
| 7 | ------------------------------------------------------------------------
|
---|
| 8 | TOPPERS/JSP Kernel
|
---|
| 9 | Toyohashi Open Platform for Embedded Real-Time Systems/
|
---|
| 10 | Just Standard Profile Kernel
|
---|
| 11 |
|
---|
| 12 | Copyright (C) 2000-2007 by Embedded and Real-Time Systems Laboratory
|
---|
| 13 | Toyohashi Univ. of Technology, JAPAN
|
---|
| 14 |
|
---|
| 15 | ä¸è¨èä½æ¨©è
|
---|
| 16 | ã¯ï¼ä»¥ä¸ã® (1)ã(4) ã®æ¡ä»¶ãï¼Free Software Foundation
|
---|
| 17 | ã«ãã£ã¦å
|
---|
| 18 | ¬è¡¨ããã¦ãã GNU General Public License ã® Version 2 ã«è¨
|
---|
| 19 | è¿°ããã¦ããæ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ã¢ï¼æ¬ã½ããã¦ã§ã¢
|
---|
| 20 | ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹å¤ã»åé
|
---|
| 21 | å¸ï¼ä»¥ä¸ï¼
|
---|
| 22 | å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
|
---|
| 23 | (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
|
---|
| 24 | 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
|
---|
| 25 | ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼
|
---|
| 26 | (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
|
---|
| 27 | ç¨ã§ããå½¢ã§åé
|
---|
| 28 | å¸ããå ´åã«ã¯ï¼åé
|
---|
| 29 | å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨
|
---|
| 30 | è
|
---|
| 31 | ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
|
---|
| 32 | ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
|
---|
| 33 | (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
|
---|
| 34 | ç¨ã§ããªãå½¢ã§åé
|
---|
| 35 | å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
|
---|
| 36 | ã¨ï¼
|
---|
| 37 | (a) åé
|
---|
| 38 | å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è
|
---|
| 39 | ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
|
---|
| 40 | ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
|
---|
| 41 | (b) åé
|
---|
| 42 | å¸ã®å½¢æ
|
---|
| 43 | ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã«
|
---|
| 44 | å ±åãããã¨ï¼
|
---|
| 45 | (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
|
---|
| 46 | 害ãããï¼ä¸è¨èä½æ¨©è
|
---|
| 47 | ããã³TOPPERSããã¸ã§ã¯ããå
|
---|
| 48 | 責ãããã¨ï¼
|
---|
| 49 |
|
---|
| 50 | æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
|
---|
| 51 | ã
|
---|
| 52 | ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã
|
---|
| 53 | å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´
|
---|
| 54 | æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼
|
---|
| 55 |
|
---|
| 56 | @(#) $Id: armv4.txt,v 1.11 2007/05/11 06:07:54 honda Exp $
|
---|
| 57 | ------------------------------------------------------------------------
|
---|
| 58 |
|
---|
| 59 |
|
---|
| 60 | ï¼ï¼ARMv4 ã¿ã¼ã²ããä¾åé¨ã®æ¦è¦
|
---|
| 61 |
|
---|
| 62 |
|
---|
| 63 | 1.1 ã¿ã¼ã²ããã·ã¹ãã ã¨éçºç°å¢
|
---|
| 64 |
|
---|
| 65 | ARMV4 ããã»ããµã®ã¿ã¼ã²ããã·ã¹ãã ã¨ãã¦ã¯ï¼ARMv4ã¢ã¼ããã¯ãã£ã®CPU
|
---|
| 66 | ã³ã¢ãæè¼ãã以ä¸ã®ãã¼ãããµãã¼ããã¦ããï¼ãªãï¼Thumbå½ä»¤ã¯ãµãã¼
|
---|
| 67 | ããã¦ããªãï¼
|
---|
| 68 |
|
---|
| 69 | ã»ARM製㮠Integrator/CM922T-ETM(ARM922T) + Integrator/AP
|
---|
| 70 | ã»YDK製㮠AZ9360MB(ARM926EJ-S)
|
---|
| 71 |
|
---|
| 72 | éçºç°å¢ã«ã¯ï¼GCC ãªã©ã® GNUéçºç°å¢ãç¨ãï¼ãªãã¸ã§ã¯ããã¡ã¤ã«ãã©ã¼
|
---|
| 73 | ããã㯠ELF ãæ¨æºã¨ããï¼
|
---|
| 74 |
|
---|
| 75 | Integratorã§ã¯ï¼å®è¡éç°å¢ã¨ãã¦JTAG-ICEãç¨ãããã¨ãæ³å®ãã¦ããï¼
|
---|
| 76 | JTAG-ICEã¨ãã¦ã¯ï¼ARM社製㮠Multi-ICE ã¨ï¼ã½ãã£ã¢ã·ã¹ãã ãºè£½ã®
|
---|
| 77 | UniSTAC II/J ETM for ARM9 ã§åä½ç¢ºèªãã¦ããï¼
|
---|
| 78 |
|
---|
| 79 |
|
---|
| 80 | 1.2 ãµãã¼ãããæ©è½ã®æ¦è¦
|
---|
| 81 |
|
---|
| 82 | ARMv4 ä¾åã®æ©è½ã¨ãã¦ãæ§è½è©ä¾¡ç¨ã·ã¹ãã æå»åç
|
---|
| 83 | §æ©è½(vxget_tim)ããµã
|
---|
| 84 | ã¼ããã¦ãããå²è¾¼ã¿ã®ç¦æ¢ã¨è¨±å¯(dis_intãena_int)ã¯ãµãã¼ããã¦ããªãã
|
---|
| 85 |
|
---|
| 86 |
|
---|
| 87 | 1.3 ä»ã®ã¿ã¼ã²ããã¸ã®ãã¼ãã£ã³ã°
|
---|
| 88 |
|
---|
| 89 | ä»ã®ã¿ã¼ã²ããã«ãã¼ãã£ã³ã°ããããã«ã¯ï¼ã·ã¹ãã ä¾åé¨ã«ä»¥ä¸ã®ã³ã¼ã
|
---|
| 90 | ãå¿
|
---|
| 91 | è¦ã¨ãªãï¼
|
---|
| 92 |
|
---|
| 93 | ã»å²è¾¼ã¿ã®åºå
|
---|
| 94 | ¥ãå£å¦çï¼sys_support.Sï¼
|
---|
| 95 | ã»ã¿ã¤ãã¼ãã©ã¤ã
|
---|
| 96 | ã»ã·ãªã¢ã«ãã©ã¤ã
|
---|
| 97 |
|
---|
| 98 |
|
---|
| 99 | 1.4 Integrator ã®åæå
|
---|
| 100 |
|
---|
| 101 |
|
---|
| 102 | 1.5 ã·ãªã¢ã«ãã¼ã
|
---|
| 103 |
|
---|
| 104 | Integrator ã§ã¯Integrator/AP ä¸ã® UART ãã«ã¼ãã«ãã°åºåç¨ã«ä½¿ç¨ããï¼
|
---|
| 105 | ãã£ãã©ã«ãã§ã¯ï¼é度115200bps,ãã¼ã¿:8bit,Parity:none,Stop:1bitã§ã
|
---|
| 106 | ãã
|
---|
| 107 |
|
---|
| 108 |
|
---|
| 109 | 1.6 Thumbã³ã¼ãã«ã¤ãã¦
|
---|
| 110 |
|
---|
| 111 | Thumbã³ã¼ãã®å©ç¨ã«ã¤ãã¦ã¯ï¼ç¾æç¹ã§ã¯ãµãã¼ããã¦ãªãï¼
|
---|
| 112 |
|
---|
| 113 |
|
---|
| 114 | ï¼ï¼ARMv4 ããã»ããµä¾åé¨ã®æ©è½
|
---|
| 115 |
|
---|
| 116 | ãã®ç¯ã§ã¯ãã«ã¼ãã«ããã³ã·ã¹ãã ãµã¼ãã¹ã®æ©è½ã®ä¸ã§ãARMv4ä¾åã®é¨å
|
---|
| 117 | ã«ã¤ãã¦è§£èª¬ããã
|
---|
| 118 |
|
---|
| 119 |
|
---|
| 120 | 2.1 ãã¼ã¿å
|
---|
| 121 |
|
---|
| 122 | intåããã³ unsigned intåã®ãµã¤ãºã¯ 32ãããã§ããã
|
---|
| 123 |
|
---|
| 124 | 2.2 å²è¾¼ã¿ç®¡çæ©è½ã¨å²è¾¼ã¿ãã³ãã©
|
---|
| 125 |
|
---|
| 126 | ã«ã¼ãã«ç®¡çå¤ã®å²è¾¼ã¿ã¨ãã¦ã¯ FIQãããããã£ã¦ãCPUããã¯ç¶æ
|
---|
| 127 | ãå
|
---|
| 128 | æåã«ã¼ãã³å
|
---|
| 129 | ã§ã¯ãFIQ 以å¤ã®å²è¾¼ã¿ã¯ãã¹ã¦ç¦æ¢ããã¦ãããå
|
---|
| 130 | ·ä½çã«ã¯ã
|
---|
| 131 | CPSR(ã«ã¬ã³ãããã°ã©ã ç¶æ
|
---|
| 132 | ã¬ã¸ã¹ã¿)ã®IRQç¦æ¢ããã(ããã7)ã 1 ã«è¨
|
---|
| 133 | å®ãããã
|
---|
| 134 |
|
---|
| 135 |
|
---|
| 136 | DEF_INH ã§æå®ããå²è¾¼ã¿ãã³ãã©çªå·(inhno)ã¯ãKS32C50100 ã§å¨è¾ºã¢ã¸ã¥ã¼
|
---|
| 137 | ã«æ¯ã«å®ç¾©ããã¦ããå²ãè¾¼ã¿çªå·ã§ããï¼LH79532 ã§ã¯å²è¾¼ã¿ã³ã³ããã¼ã©
|
---|
| 138 | ã®åãã£ãã«çªå·ã§ããããã¼ã¿å(INHNO)㯠unsigned intåã«å®ç¾©ããã¦ã
|
---|
| 139 | ãã
|
---|
| 140 |
|
---|
| 141 |
|
---|
| 142 | 2.3 CPUä¾å¤ç®¡çæ©è½ã¨CPUä¾å¤ãã³ãã©
|
---|
| 143 |
|
---|
| 144 | DEF_EXC ã§æå®ããå²è¾¼ã¿ãã³ãã©çªå·(excno)ã¯ãARMv4 ã§å®ç¾©ããã¦ããï¼
|
---|
| 145 | ä¾å¤è¦å ã§ããï¼ãã®ãã¼ã¿å(EXCNO)㯠unsigned int åã«å®ç¾©ããã¦ããã
|
---|
| 146 | DEF_EXC ã§ãä¾å¤ã³ã¼ãçªå·ã¨ãã¦æå¹ã§ãªãå¤ããCPUä¾å¤ã«å¯¾å¿ããªãçªå·
|
---|
| 147 | ãæå®ããå ´åã®åä½ã¯ä¿è¨¼ãããªãã
|
---|
| 148 |
|
---|
| 149 | CPUä¾å¤ãã³ãã©ã«æ¸¡ãããp_excinfã¯ï¼CPUä¾å¤çºçæã®ã³ã³ããã¹ããä¿å
|
---|
| 150 | ããã¹ã¿ãã¯ã¸ã®ãã¤ã³ã¿ã渡ãããï¼ã¹ã¿ãã¯ã®æ§é ã以ä¸ã«ç¤ºãï¼
|
---|
| 151 |
|
---|
| 152 |
|
---|
| 153 | ----------------------
|
---|
| 154 | | CPSR | <-- p_excinf
|
---|
| 155 | ----------------------
|
---|
| 156 | | R0 |
|
---|
| 157 | ----------------------
|
---|
| 158 | | R1 |
|
---|
| 159 | ----------------------
|
---|
| 160 | | R2 |
|
---|
| 161 | ----------------------
|
---|
| 162 | | R3 |
|
---|
| 163 | ----------------------
|
---|
| 164 | | ip |
|
---|
| 165 | ----------------------
|
---|
| 166 | | lr |
|
---|
| 167 | ----------------------
|
---|
| 168 | | PC |
|
---|
| 169 | ----------------------
|
---|
| 170 |
|
---|
| 171 |
|
---|
| 172 | 2.4 ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«
|
---|
| 173 |
|
---|
| 174 | ARMv4 ä¾åã®ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«(start.S)ã§ã¯ã次ã®åæåå¦çãè¡ãã
|
---|
| 175 |
|
---|
| 176 | (A) ããã»ããµã¢ã¼ãã®åæåã¨ã¹ã¿ãã¯ãã¤ã³ã¿ã®åæå
|
---|
| 177 |
|
---|
| 178 | æåã«ãããã»ããµã¢ã¼ããã¹ãã¼ãã¤ã¶ã¼ã¢ã¼ã(SVC)ãIRQ,FIQå²è¾¼ã¿ãç¦æ¢
|
---|
| 179 | ã«ããï¼
|
---|
| 180 |
|
---|
| 181 | 次ã«ãã¹ã¿ãã¯ãã¤ã³ã¿(sp)ã STACKTOP ã«è¨å®ãããããã§å²è¾¼ã¿ã¹ã¿ã
|
---|
| 182 | ã¯ãã¤ã³ã¿ã«è¨å®ãããã¹ã¿ãã¯é åã¯ãã«ã¼ãã«èµ·åå¾ã¯éã¿ã¹ã¯ã³ã³ãã
|
---|
| 183 | ã¹ãç¨ã®ã¹ã¿ãã¯é åã¨ãã¦ä½¿ããããSTACKTOP ã¯ãsys_config.h é¨ã§å®ç¾©
|
---|
| 184 | ãããã¨ãæ³å®ãã¦ããã
|
---|
| 185 |
|
---|
| 186 | (B) hardware_init_hook ã®å¼åºã
|
---|
| 187 |
|
---|
| 188 | hardware_init_hook ã 0 ã§ãªãå ´åã«ã¯ãhardware_init_hook ãå¼ã³åºãã
|
---|
| 189 | hardware_init_hook ã¯ãã«ã¼ãã«ãèµ·åãããåã«è¡ãå¿
|
---|
| 190 | è¦ãããã¿ã¼ã²ã
|
---|
| 191 | ãä¾åã®åæåãè¡ãããã«ç¨æãã¦ãããhardware_init_hook ãã©ãã§ã
|
---|
| 192 | å®ç¾©ããã¦ããªãå ´åããªã³ã«ã§ãã®ã·ã³ãã«ã 0 ã«å®ç¾©ãã(ãªã³ã«ã¹ã¯
|
---|
| 193 | ãªããå
|
---|
| 194 | ã«è¨è¿°ãã)ã
|
---|
| 195 |
|
---|
| 196 | (C) bssã»ã¯ã·ã§ã³ã¨ dataã»ã¯ã·ã§ã³ã®åæå
|
---|
| 197 |
|
---|
| 198 | bssã»ã¯ã·ã§ã³ãã¼ãã¯ãªã¢ãããã¾ããdataã»ã¯ã·ã§ã³ãåæåããã
|
---|
| 199 |
|
---|
| 200 | (D) software_init_hook ã®å¼åºã
|
---|
| 201 |
|
---|
| 202 | software_init_hook ã 0 ã§ãªãå ´åã«ã¯ãsoftware_init_hook ãå¼ã³åºãã
|
---|
| 203 | software_init_hook ã¯ãã«ã¼ãã«ãèµ·åãããåã«è¡ãå¿
|
---|
| 204 | è¦ãããã½ããã¦ã§
|
---|
| 205 | ã¢ç°å¢(å
|
---|
| 206 | ·ä½çã«ã¯ãã©ã¤ãã©ãª)ä¾åã®åæåãè¡ãããã«ç¨æãã¦ããã
|
---|
| 207 | software_init_hook ãã©ãã§ãå®ç¾©ããã¦ããªãå ´åããªã³ã«ã§ãã®ã·ã³ã
|
---|
| 208 | ã«ã 0 ã«å®ç¾©ãã(ãªã³ã«ã¹ã¯ãªããå
|
---|
| 209 | ã«è¨è¿°ãã)ã
|
---|
| 210 |
|
---|
| 211 | (E) ã«ã¼ãã«ã®èµ·å
|
---|
| 212 |
|
---|
| 213 | kernel_start ã¸åå²ããã«ã¼ãã«ãèµ·åãããkernel_start ãããªã¿ã¼ã³ã
|
---|
| 214 | ã¦ãããã¨ã¯æ³å®ãã¦ããªãã
|
---|
| 215 |
|
---|
| 216 |
|
---|
| 217 |
|
---|
| 218 | ï¼ï¼ã·ã¹ãã ä¾åé¨ã®æ©è½
|
---|
| 219 |
|
---|
| 220 |
|
---|
| 221 | 3.1 ã·ã¹ãã ã¯ããã¯ãã©ã¤ã
|
---|
| 222 |
|
---|
| 223 | ã·ã¹ãã ã¯ããã¯ãã©ã¤ãã isig_tim ãå¼ã³åºãå¨æã¯ãsys_defs.h ä¸ã®
|
---|
| 224 | TIC_NUME 㨠TIC_DENO ã§å®ç¾©ããã¦ãã(æ¨æºã¯ 1ããªç§å¨æ)ããã®å®ç¾©
|
---|
| 225 | ãå¤æ´ãããã¨ã§ãisig_tim ãå¼ã³åºãå¨æãå¤æ´ãããã¨ãã§ããããã
|
---|
| 226 | ããã¿ã¤ãã®ç²¾åº¦ã 1μç§ã§ããããã1μç§åä½ã§ç«¯æ°ã«ãªãå¤ãè¨å®ãã
|
---|
| 227 | å ´åã«ã¯ãisig_tim ã®å¼åºãå¨æã«èª¤å·®ãçãããã¨ã«ãªãã
|
---|
| 228 |
|
---|
| 229 |
|
---|
| 230 | 3.2 æ§è½è©ä¾¡ç¨ã·ã¹ãã æå»åç
|
---|
| 231 | §æ©è½
|
---|
| 232 |
|
---|
| 233 | ARMv4 ä¾åé¨ã§ã¯ãæ§è½è©ä¾¡ç¨ã·ã¹ãã æå»åç
|
---|
| 234 | §æ©è½(vxget_tim)ããµãã¼ãã
|
---|
| 235 | ã¦ãããæ§è½è©ä¾¡ç¨ã·ã¹ãã æå»ã®ç²¾åº¦ã¯ 1μç§åä½ã§ããããã¿ã¤ãã®ç¾å¨å¤
|
---|
| 236 | ãèªã¿åºãããã«ä¸æçã«ã¿ã¤ããåæ¢ãããå¿
|
---|
| 237 | è¦ããããããvxget_tim ãå¼
|
---|
| 238 | ã¶åº¦ã«ã·ã¹ãã ã¯ããã¯ãå°ãã¥ã¤é
|
---|
| 239 | ãããã¨ã«ãªãããªããSYSUTIMå㯠UDå
|
---|
| 240 | (64ãããã®ç¬¦å·ç¡ãæ´æ°å)ã«å®ç¾©ãã¦ããã
|
---|
| 241 |
|
---|
| 242 |
|
---|
| 243 | 3.3 ã·ãªã¢ã«ã¤ã³ã¿ãã§ã¼ã¹ãã©ã¤ã
|
---|
| 244 |
|
---|
| 245 | Integrator ä¾åé¨ã§ã¯ï¼Intergrator/APä¸ã® UART ããµãã¼ããã¦ããï¼
|
---|
| 246 |
|
---|
| 247 |
|
---|
| 248 | ï¼ï¼éçºç°å¢ã®æ§ç¯
|
---|
| 249 |
|
---|
| 250 | éçºç°å¢ã®æ§ç¯æ¹æ³ã«ã¤ãã¦ã¯ï¼GNUéçºç°å¢æ§ç¯ããã¥ã¢ã«ãåç
|
---|
| 251 | §ã®ãã¨ï¼
|
---|
| 252 |
|
---|
| 253 |
|
---|
| 254 | 4.1 éçºç°å¢ã®ãã¼ã¸ã§ã³
|
---|
| 255 | åä½ç¢ºèªãããã¼ã«ã®ãã¼ã¸ã§ã³ã¯ä»¥ä¸ã®éãã§ããï¼
|
---|
| 256 |
|
---|
| 257 | BINUTILS : 2.11.2
|
---|
| 258 | GCC-CORE : 3.0.2
|
---|
| 259 | GDB : 5.0
|
---|
| 260 | NEWLIB : 1.9.0
|
---|
| 261 |
|
---|
| 262 | ãããã¯
|
---|
| 263 |
|
---|
| 264 | BINUTILS : 2.14
|
---|
| 265 | GCC-CORE : 3.3
|
---|
| 266 | GDB : 5.3
|
---|
| 267 | NEWLIB : 1.11.0
|
---|
| 268 |
|
---|
| 269 | 4.2 ãã¼ã«ã½ã¼ã¹ã®ä¿®æ£
|
---|
| 270 | ä¸è¨ã®ãã¼ã¸ã§ã³ã®ãã¼ã«ãæ§ç¯ãããã以ä¸ã®ä¿®æ£ãå¿
|
---|
| 271 | è¦ã¨ãªãï¼
|
---|
| 272 |
|
---|
| 273 | 4.2.1 GDB
|
---|
| 274 | ./gdb/rdi-share/devsw.c
|
---|
| 275 | 39è¡ç®ï¼69è¡ç® ã®struct tm lmã®å®£è¨ãã¦ããè¡ãã³ã¡ã³ãã¢ã¦ãããï¼
|
---|
| 276 |
|
---|
| 277 |
|
---|
| 278 | 4.3 GDBã¹ã¿ãã«ããããã°ã©ã ã®ãã¦ã³ãã¼ã
|
---|
| 279 | ãã¹ãPCã¨ãã¼ããã·ãªã¢ã«ã±ã¼ãã«ã§ç¹ãï¼gdbã«ãã¦ã³ãã¼ãããã
|
---|
| 280 | ããã°ã©ã ãæå®ããï¼
|
---|
| 281 | 次ã«ä»¥ä¸ã®ã³ãã³ããå®è¡ããï¼ttySXXã®XXã¯ã·ãªã¢ã«ãæ¥ç¶ãã¦ã
|
---|
| 282 | ããã¼ãçªå·ã§ããï¼
|
---|
| 283 |
|
---|
| 284 | set remotebaud 57600
|
---|
| 285 | set endian little
|
---|
| 286 | set rdi /dev/ttySXX
|
---|
| 287 | å¾ã¯ï¼loadã§ããã°ã©ã ããã¦ã³ãã¼ããã¦ï¼continueã§å®è¡ããï¼
|
---|
| 288 | ã¾ãï¼Ctrl-Cã§åä½ä¸ã®ããã°ã©ã ãåæ¢ã§ããï¼
|
---|
| 289 |
|
---|
| 290 |
|
---|
| 291 |
|
---|
| 292 | ï¼ï¼ãã®ä»
|
---|
| 293 |
|
---|
| 294 | 5.1 ãã£ã¬ã¯ããªã»ãã¡ã¤ã«æ§æ
|
---|
| 295 |
|
---|
| 296 | ARMv4 ã¿ã¼ã²ããä¾åé¨ã®åãã¡ã¤ã«ã®æ¦è¦ã¯æ¬¡ã®éãï¼
|
---|
| 297 |
|
---|
| 298 | config/armv4/
|
---|
| 299 | Makefile.config Makefileã®ARMv4ä¾åå®ç¾©
|
---|
| 300 | armelf.ld ããã°ã¨ã³ãã£ã¢ã³ç¨ãªã³ã«ã¹ã¯ãªãã
|
---|
| 301 | armv4.h ARMv4ã®å®ç¾©
|
---|
| 302 | cpu_config.c ããã»ããµä¾åé¨ã®é¢æ°
|
---|
| 303 | cpu_config.h ããã»ããµä¾åé¨ã®æ§æå®ç¾©
|
---|
| 304 | cpu_context.h ã³ã³ããã¹ãæä½
|
---|
| 305 | cpu_defs.h ããã»ããµä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 306 | cpu_insn.h ä½ã¬ãã«ã®ããã»ããµæä½ã«ã¼ãã³
|
---|
| 307 | cpu_rename.def ã«ã¼ãã«ã®å
|
---|
| 308 | é¨èå¥åã®ãªãã¼ã å®ç¾©
|
---|
| 309 | cpu_rename.h ã«ã¼ãã«ã®å
|
---|
| 310 | é¨èå¥åã®ãªãã¼ã
|
---|
| 311 | cpu_support.S ããã»ããµä¾åé¨ã®ãµãã«ã¼ãã³
|
---|
| 312 | cpu_unrename.h ã«ã¼ãã«ã®å
|
---|
| 313 | é¨èå¥åã®ãªãã¼ã 解é¤
|
---|
| 314 | makeoffset.c offset.h çæãµãã¼ãããã°ã©ã
|
---|
| 315 | start.S ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«
|
---|
| 316 | tool_config.h éçºç°å¢ä¾åé¨ã®æ§æå®ç¾©ï¼GNUéçºç°å¢ç¨ï¼
|
---|
| 317 | tool_defs.h éçºç°å¢ä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©ï¼GNUéçºç°å¢ç¨ï¼
|
---|
| 318 |
|
---|
| 319 | config/armv4/integrator
|
---|
| 320 | Makefile.config Makefileã® Integrator ä¾åå®ç¾©
|
---|
| 321 | hw_serial.cfg SIOãã©ã¤ãã®ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«
|
---|
| 322 | hw_serial.h SIOãã©ã¤ã
|
---|
| 323 | hw_timer.h ã¿ã¤ãæä½ã«ã¼ãã³
|
---|
| 324 | integrator.c Integrator ãã¼ãã¦ã§ã¢æä½é¢æ°
|
---|
| 325 | integrator.h Integrator ãã¼ãã¦ã§ã¢å®ç¾©
|
---|
| 326 | integrator.ld Integrator ãªã³ã«ã¹ã¯ãªãã
|
---|
| 327 | sys_config.c ã·ã¹ãã ä¾åé¨ã®é¢æ°
|
---|
| 328 | sys_config.h ã·ã¹ãã ä¾åé¨ã®æ§æå®ç¾©
|
---|
| 329 | sys_defs.h ã·ã¹ãã ä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 330 | sys_rename.def ã«ã¼ãã«ã®å
|
---|
| 331 | é¨èå¥åã®ãªãã¼ã å®ç¾©
|
---|
| 332 | sys_rename.h ã«ã¼ãã«ã®å
|
---|
| 333 | é¨èå¥åã®ãªãã¼ã
|
---|
| 334 | sys_support.S ã·ã¹ãã ä¾åé¨ã®ãµãã«ã¼ãã³
|
---|
| 335 | sys_unrename.h ã«ã¼ãã«ã®å
|
---|
| 336 | é¨èå¥åã®ãªãã¼ã 解é¤
|
---|