[93] | 1 | #
|
---|
| 2 | # TOPPERS/ASP Kernel
|
---|
| 3 | # Toyohashi Open Platform for Embedded Real-Time Systems/
|
---|
| 4 | # Advanced Standard Profile Kernel
|
---|
| 5 | #
|
---|
| 6 | # Copyright (C) 2003 by Embedded and Real-Time Systems Laboratory
|
---|
| 7 | # Toyohashi Univ. of Technology, JAPAN
|
---|
| 8 | # Copyright (C) 2005-2008 by Embedded and Real-Time Systems Laboratory
|
---|
| 9 | # Graduate School of Information Science, Nagoya Univ., JAPAN
|
---|
| 10 | # Copyright (C) 2010 by Meika Sugimoto
|
---|
| 11 | # Copyright (C) 2015 by Naoki Saito
|
---|
| 12 | # Nagoya Municipal Industrial Research Institute, JAPAN
|
---|
| 13 | #
|
---|
| 14 | # ãLì ÒÍCȺÌ(1)`(4)Ìðð½·êÉÀèC{\tgEF
|
---|
| 15 | # Ai{\tgEFAðüϵ½àÌðÜÞDȺ¯¶jðgpE¡»Eü
|
---|
| 16 | # ÏEÄzziȺCpÆÄÔj·é±Æð³Åø·éD
|
---|
| 17 | # (1) {\tgEFAð\[XR[hÌ`Åp·éêÉÍCãLÌì
|
---|
| 18 | # \¦C±Ìpð¨æÑºLÌ³ÛØKèªC»ÌÜÜÌ`Å\[
|
---|
| 19 | # XR[hÉÜÜêĢ鱯D
|
---|
| 20 | # (2) {\tgEFAðCCu`®ÈÇC¼Ì\tgEFAJÉg
|
---|
| 21 | # pÅ«é`ÅÄzz·éêÉÍCÄzzɺ¤hL
|
---|
| 22 | gip
|
---|
| 23 | # Ò}j
|
---|
| 24 | AÈÇjÉCãLÌì \¦C±Ìpð¨æÑºL
|
---|
| 25 | # Ì³ÛØKèðfÚ·é±ÆD
|
---|
| 26 | # (3) {\tgEFAðC@íÉgÝÞÈÇC¼Ì\tgEFAJÉg
|
---|
| 27 | # pūȢ`ÅÄzz·éêÉÍCÌ¢¸ê©Ìðð½·±
|
---|
| 28 | # ÆD
|
---|
| 29 | # (a) Äzzɺ¤hL
|
---|
| 30 | gipÒ}j
|
---|
| 31 | AÈÇjÉCãLÌ
|
---|
| 32 | # ì \¦C±Ìpð¨æÑºLÌ³ÛØKèðfÚ·é±ÆD
|
---|
| 33 | # (b) ÄzzÌ`ÔðCÊÉèßéû@ÉæÁÄCTOPPERSvWFNgÉ
|
---|
| 34 | # ñ·é±ÆD
|
---|
| 35 | # (4) {\tgEFAÌpÉæè¼ÚIܽÍÔÚIɶ¶é¢©Èé¹
|
---|
| 36 | # Q©çàCãLì Ò¨æÑTOPPERSvWFNgðÆÓ·é±ÆD
|
---|
| 37 | # ܽC{\tgEFAÌ[UܽÍGh[U©çÌ¢©Èé
|
---|
| 38 | # RÉîÿ©çàCãLì Ò¨æÑTOPPERSvWFNgð
|
---|
| 39 | # ÆÓ·é±ÆD
|
---|
| 40 | #
|
---|
| 41 | # {\tgEFAÍC³ÛØÅñ³êÄ¢éàÌÅ éDãLì Ò¨
|
---|
| 42 | # æÑTOPPERSvWFNgÍC{\tgEFAÉÖµÄCÁèÌgpÚI
|
---|
| 43 | # ÉηéK«àÜßÄC¢©ÈéÛØàsíÈ¢DܽC{\tgEF
|
---|
| 44 | # AÌpÉæè¼ÚIܽÍÔÚIɶ¶½¢©Èé¹QÉÖµÄàC»
|
---|
| 45 | # ÌÓCðíÈ¢D
|
---|
| 46 | #
|
---|
| 47 |
|
---|
| 48 | #
|
---|
| 49 | # J[lÌt@C\¬Ìè`
|
---|
| 50 | #
|
---|
| 51 |
|
---|
| 52 | #
|
---|
| 53 | # 1ÂÌ\[Xt@C©ç¡ÌIuWFNgt@Cð¶¬·éæ¤Éì
|
---|
| 54 | # ¬³ê½\[Xt@CÌXg
|
---|
| 55 | #
|
---|
| 56 | KERNEL_FCSRCS = startup.c task.c task_manage.c \
|
---|
| 57 | interrupt.c exception.c sys_manage.c cyclic.c \
|
---|
| 58 | alarm.c time_manage.c time_event.c \
|
---|
| 59 | eventflag.c dataqueue.c
|
---|
| 60 |
|
---|
| 61 | #
|
---|
| 62 | # e\[Xt@C©ç¶¬³êéIuWFNgt@CÌXg
|
---|
| 63 | #
|
---|
| 64 | startup = sta_ker.o ext_ker.o
|
---|
| 65 |
|
---|
| 66 | task = tskini.o get_ipri.o get_ipriself.o tsksched.o \
|
---|
| 67 | tskact.o tskrun.o tskdsp.o tskdmt.o
|
---|
| 68 |
|
---|
| 69 | time_event = tmevtini.o tmevtenq.o tmevtdeq.o sig_tim.o
|
---|
| 70 |
|
---|
| 71 | task_manage = act_tsk.o iact_tsk.o
|
---|
| 72 |
|
---|
| 73 | time_manage = get_tim.o
|
---|
| 74 |
|
---|
| 75 | eventflag = iniflg.o set_flg.o iset_flg.o clr_flg.o pol_flg.o
|
---|
| 76 |
|
---|
| 77 | dataqueue = dtqini.o dtqenq.o dtqdeq.o psnd_dtq.o ipsnd_dtq.o prcv_dtq.o
|
---|
| 78 |
|
---|
| 79 | cyclic = cycini.o sta_cyc.o stp_cyc.o cyccal.o
|
---|
| 80 |
|
---|
| 81 | alarm = almini.o sta_alm.o ista_alm.o stp_alm.o istp_alm.o almcal.o
|
---|
| 82 |
|
---|
| 83 | sys_manage = loc_cpu.o iloc_cpu.o unl_cpu.o iunl_cpu.o dis_dsp.o ena_dsp.o \
|
---|
| 84 | sns_ctx.o sns_loc.o sns_dsp.o sns_dpn.o sns_ker.o
|
---|
| 85 |
|
---|
| 86 | interrupt = intini.o dis_int.o ena_int.o
|
---|
| 87 |
|
---|
| 88 | exception = excini.o
|
---|
| 89 |
|
---|
| 90 | #
|
---|
| 91 | # ¶¬³êéIuWFNgt@CÌ˶ÖWÌè`
|
---|
| 92 | #
|
---|
| 93 | $(startup) $(startup:.o=.s) $(startup:.o=.d): startup.c
|
---|
| 94 | $(task) $(task:.o=.s) $(task:.o=.d): task.c
|
---|
| 95 | $(time_event) $(time_event:.o=.s) $(time_event:.o=.d): time_event.c
|
---|
| 96 | $(task_manage) $(task_manage:.o=.s) $(task_manage:.o=.d): task_manage.c
|
---|
| 97 | $(time_manage) $(time_manage:.o=.s) $(time_manage:.o=.d): time_manage.c
|
---|
| 98 | $(eventflag) $(eventflag:.o=.s) $(eventflag:.o=.d): eventflag.c
|
---|
| 99 | $(dataqueue) $(dataqueue:.o=.s) $(dataqueue:.o=.d): dataqueue.c
|
---|
| 100 | $(cyclic) $(cyclic:.o=.s) $(cyclic:.o=.d): cyclic.c
|
---|
| 101 | $(alarm) $(alarm:.o=.s) $(alarm:.o=.d): alarm.c
|
---|
| 102 | $(sys_manage) $(sys_manage:.o=.s) $(sys_manage:.o=.d): sys_manage.c
|
---|
| 103 | $(interrupt) $(interrupt:.o=.s) $(interrupt:.o=.d): interrupt.c
|
---|
| 104 | $(exception) $(exception:.o=.s) $(exception:.o=.d): exception.c
|
---|