⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keil_test.htm

📁 实现最新的uc/os嵌入式操作系统在LPC2470系列上面的移植(添加了定时器的管理代码);
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\output\keil_test.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\output\keil_test.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, RVCT3.1 [Build 903]: Last Updated: Fri Mar 27 16:04:36 2009
<BR><P>
<H3>Maximum Stack Usage =        160 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main &rArr; OSInit &rArr; OS_InitTaskIdle &rArr; OSTaskCreateExt &rArr; OS_TCBInit &rArr; OS_EXIT_CRITICAL
<P>
<H3>
Functions with no stack information
</H3><UL>
 <LI><a href="#[10e2f78]">Reset</a>
 <LI><a href="#[10e2f30]">SoftwareInterruptAdd</a>
 <LI><a href="#[10e2ee8]">IRQ_Handler</a>
 <LI><a href="#[10e2ea0]">__user_initial_stackheap</a>
 <LI><a href="#[10e2e58]">_sys_exit</a>
 <LI><a href="#[10e2e10]">__rt_div0</a>
 <LI><a href="#[10e2dc8]">_sys_close</a>
 <LI><a href="#[10e2d80]">_sys_command_string</a>
 <LI><a href="#[10e2d38]">_sys_ensure</a>
 <LI><a href="#[10e2cf0]">_sys_flen</a>
 <LI><a href="#[10e2ca8]">_sys_istty</a>
 <LI><a href="#[10e2c60]">_sys_read</a>
 <LI><a href="#[10e2c18]">_sys_seek</a>
 <LI><a href="#[10e2bd0]">_sys_tmpnam</a>
 <LI><a href="#[10e2b88]">_sys_write</a>
 <LI><a href="#[10e2b40]">InitStack</a>
 <LI><a href="#[10e2a68]">RunFirst</a>
 <LI><a href="#[10e28b8]">vicControl</a>
 <LI><a href="#[10e5640]">SoftwareInterrupt</a>
 <LI><a href="#[10e55f8]">OSIntCtxSw</a>
 <LI><a href="#[10e55b0]">TaskEntry</a>
 <LI><a href="#[10e95c0]">OSTaskStkInit</a>
 <LI><a href="#[10e5910]">TASK_SW</a>
 <LI><a href="#[10e58c8]">ENTER_CRITICAL</a>
 <LI><a href="#[10e5880]">EXIT_CRITICAL</a>
 <LI><a href="#[10e5838]">ChangeToSYSMode</a>
 <LI><a href="#[10e57f0]">ChangeToUSRMode</a>
 <LI><a href="#[10e57a8]">ISRBegin</a>
 <LI><a href="#[10e5760]">OSISRNeedSwap</a>
 <LI><a href="#[10e5718]">_OSStartHighRdy</a>
 <LI><a href="#[10e31b8]">Undefined</a>
 <LI><a href="#[10e3170]">PrefetchAbort</a>
 <LI><a href="#[10e3128]">DataAbort</a>
 <LI><a href="#[10e30e0]">FIQ_Handler</a>
 <LI><a href="#[10e3098]">ResetInit</a>
 <LI><a href="#[10e0968]">SetvicIrqFunc</a>
 <LI><a href="#[10e0920]">ClrvicIrqFunc</a>
 <LI><a href="#[10e08d8]">EnablevicIrq</a>
 <LI><a href="#[10e0890]">DisablevicIrq</a>
 <LI><a href="#[10e0848]">GetvicIrqStatus</a>
 <LI><a href="#[10e0800]">SetvicFiq</a>
 <LI><a href="#[10e07b8]">ClrvicFiq</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[10e31b8]">Undefined</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[10e31b8]">Undefined</a><BR>
 <LI><a href="#[10e3170]">PrefetchAbort</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[10e3170]">PrefetchAbort</a><BR>
 <LI><a href="#[10e3128]">DataAbort</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[10e3128]">DataAbort</a><BR>
 <LI><a href="#[10e2e58]">_sys_exit</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[10e2e58]">_sys_exit</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
 <LI><a href="#[10e3098]">ResetInit</a>
 <LI><a href="#[10e31b8]">Undefined</a>
 <LI><a href="#[10e2f30]">SoftwareInterruptAdd</a>
 <LI><a href="#[10e3170]">PrefetchAbort</a>
 <LI><a href="#[10e3128]">DataAbort</a>
 <LI><a href="#[10e2ee8]">IRQ_Handler</a>
 <LI><a href="#[10e30e0]">FIQ_Handler</a>
 <LI><a href="#[10e55f8]">OSIntCtxSw</a>
 <LI><a href="#[1148848]">__ARM_get_argv</a>
 <LI><a href="#[10e2f78]">Reset</a>
 <LI><a href="#[10de6f0]">main</a>
 <LI><a href="#[10e0968]">SetvicIrqFunc</a>
 <LI><a href="#[10e0920]">ClrvicIrqFunc</a>
 <LI><a href="#[10e08d8]">EnablevicIrq</a>
 <LI><a href="#[10e0890]">DisablevicIrq</a>
 <LI><a href="#[10e0848]">GetvicIrqStatus</a>
 <LI><a href="#[10e0800]">SetvicFiq</a>
 <LI><a href="#[10e07b8]">ClrvicFiq</a>
 <LI><a href="#[10e5910]">TASK_SW</a>
 <LI><a href="#[10e5718]">_OSStartHighRdy</a>
 <LI><a href="#[10e58c8]">ENTER_CRITICAL</a>
 <LI><a href="#[10e5880]">EXIT_CRITICAL</a>
 <LI><a href="#[10e5838]">ChangeToSYSMode</a>
 <LI><a href="#[10e57f0]">ChangeToUSRMode</a>
 <LI><a href="#[10e57a8]">ISRBegin</a>
 <LI><a href="#[10e5760]">OSISRNeedSwap</a>
 <LI><a href="#[10e55b0]">TaskEntry</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[10e2f78]"></a>Reset</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))

<P><STRONG><a name="[10e2f30]"></a>SoftwareInterruptAdd</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR><BR>[Calls]<UL><LI><a href="#[10e28b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;vicControl
<LI><a href="#[10e5640]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SoftwareInterrupt
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup.o(RESET)
</UL>
<P><STRONG><a name="[10e2ee8]"></a>IRQ_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR><BR>[Stack]<UL><LI>Max Depth = 16 + Unknown Stack Size
<LI>Call Chain = IRQ_Handler &rArr; OSIntExit &rArr; OS_EXIT_CRITICAL
</UL>
<BR>[Calls]<UL><LI><a href="#[c80d48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSIntExit
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup.o(RESET)
</UL>
<P><STRONG><a name="[10e2ea0]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR><BR>[Called By]<UL><LI><a href="#[114b5e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>

<P><STRONG><a name="[10e2e58]"></a>_sys_exit</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)
<BR><BR>[Calls]<UL><LI><a href="#[10e2e58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_sys_exit
</UL>
<BR>[Called By]<UL><LI><a href="#[10e2e58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_sys_exit
<LI><a href="#[114bb80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_abort
</UL>

<P><STRONG><a name="[10e2e10]"></a>__rt_div0</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2dc8]"></a>_sys_close</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2d80]"></a>_sys_command_string</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2d38]"></a>_sys_ensure</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2cf0]"></a>_sys_flen</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2ca8]"></a>_sys_istty</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2c60]"></a>_sys_read</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2c18]"></a>_sys_seek</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2bd0]"></a>_sys_tmpnam</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2b88]"></a>_sys_write</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET), UNUSED, KEPT)

<P><STRONG><a name="[10e2b40]"></a>InitStack</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR><BR>[Called By]<UL><LI><a href="#[10e3098]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ResetInit
</UL>

<P><STRONG><a name="[10dbbe8]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Stack]<UL><LI>Max Depth = 64 + Unknown Stack Size
<LI>Call Chain = __main &rArr; __rt_entry &rArr; __rt_lib_init &rArr; _rand_init &rArr; srand
</UL>
<BR>[Calls]<UL><LI><a href="#[1146150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
<LI><a href="#[114bc10]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>
<BR>[Called By]<UL><LI><a href="#[10e3098]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ResetInit
</UL>

<P><STRONG><a name="[1146150]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[10dbbe8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main
</UL>

<P><STRONG><a name="[1146108]"></a>__scatterload_rt2</STRONG> (ARM, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[114bc10]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>

<P><STRONG><a name="[11460c0]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

<P><STRONG><a name="[1145e80]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

<P><STRONG><a name="[114a290]"></a>__ARM_argv_veneer</STRONG> (ARM, 16 bytes, Stack size 0 bytes, lib_init.o(.emb_text))
<BR><BR>[Called By]<UL><LI><a href="#[114a200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_init (via Veneer)
</UL>

<P><STRONG><a name="[c80eb0]"></a>OS_TaskStat</STRONG> (ARM, 180 bytes, Stack size 8 bytes, os_core.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c80640]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSTimeDly
<LI><a href="#[c80688]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSTaskSuspend
<LI><a href="#[c806d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSTaskStatHook
<LI><a href="#[c808c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_EXIT_CRITICAL
<LI><a href="#[c80910]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_ENTER_CRITICAL
<LI><a href="#[10dcb20]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
</UL>

<P><STRONG><a name="[c80e68]"></a>OS_TaskIdle</STRONG> (ARM, 44 bytes, Stack size 8 bytes, os_core.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c80718]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSTaskIdleHook
<LI><a href="#[c808c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_EXIT_CRITICAL
<LI><a href="#[c80910]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_ENTER_CRITICAL
</UL>

<P><STRONG><a name="[c80e20]"></a>OS_MemClr</STRONG> (ARM, 36 bytes, Stack size 0 bytes, os_core.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c80568]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_QInit
<LI><a href="#[c805b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_MemInit
<LI><a href="#[c805f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_FlagInit
<LI><a href="#[c823c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitTCBList
<LI><a href="#[c82410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitEventList
</UL>

<P><STRONG><a name="[c80dd8]"></a>OSInit</STRONG> (ARM, 56 bytes, Stack size 8 bytes, os_core.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 136 + Unknown Stack Size
<LI>Call Chain = OSInit &rArr; OS_InitTaskIdle &rArr; OSTaskCreateExt &rArr; OS_TCBInit &rArr; OS_EXIT_CRITICAL
</UL>
<BR>[Calls]<UL><LI><a href="#[c80568]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_QInit
<LI><a href="#[c805b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_MemInit
<LI><a href="#[c805f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_FlagInit
<LI><a href="#[c80838]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSInitHookEnd
<LI><a href="#[c80880]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OSInitHookBegin
<LI><a href="#[c82338]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitMisc
<LI><a href="#[c82380]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitRdyList
<LI><a href="#[c823c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitTCBList
<LI><a href="#[c82410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitEventList
<LI><a href="#[c82458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitTaskIdle
<LI><a href="#[c824a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_InitTaskStat
</UL>
<BR>[Called By]<UL><LI><a href="#[10de6f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c80d90]"></a>OSIntEnter</STRONG> (ARM, 56 bytes, Stack size 0 bytes, os_core.o(.text), UNUSED)

<P><STRONG><a name="[c80d48]"></a>OSIntExit</STRONG> (ARM, 180 bytes, Stack size 8 bytes, os_core.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = OSIntExit &rArr; OS_EXIT_CRITICAL
</UL>
<BR>[Calls]<UL><LI><a href="#[c808c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_EXIT_CRITICAL
<LI><a href="#[c80910]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_ENTER_CRITICAL
<LI><a href="#[c822f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;OS_SchedNew
</UL>
<BR>[Called By]<UL><LI><a href="#[10e2ee8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IRQ_Handler
</UL>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -