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

📄 http_demo.htm

📁 LPC2368 网络服务器程序
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\Obj\Http_demo.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Obj\Http_demo.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, RVCT3.1 [Build 914]: Last Updated: Wed Feb 06 16:26:14 2008
<BR><P>
<H3>Maximum Stack Usage =        388 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
http_listener &rArr; cgi_process_var &rArr; __0sscanf &rArr; __vfscanf_char &rArr; __vfscanf &rArr; _scanf_longlong &rArr; __aeabi_lmul &rArr; __aeabi_llsl
<P>
<H3>
Functions with no stack information
</H3><UL>
 <LI><a href="#[c7c9f8]">Reset_Handler</a>
 <LI><a href="#[c7ccc8]">Undef_Handler</a>
 <LI><a href="#[c7cc80]">SWI_Handler</a>
 <LI><a href="#[c7cc38]">PAbt_Handler</a>
 <LI><a href="#[c7cbf0]">DAbt_Handler</a>
 <LI><a href="#[c7cba8]">IRQ_Handler</a>
 <LI><a href="#[c7cb60]">FIQ_Handler</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[c7e148]">sys_error</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7e148]">sys_error</a><BR>
 <LI><a href="#[1078eb8]">mem_test</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[1078eb8]">mem_test</a><BR>
 <LI><a href="#[c7ccc8]">Undef_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7ccc8]">Undef_Handler</a><BR>
 <LI><a href="#[c7cc80]">SWI_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7cc80]">SWI_Handler</a><BR>
 <LI><a href="#[c7cc38]">PAbt_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7cc38]">PAbt_Handler</a><BR>
 <LI><a href="#[c7cbf0]">DAbt_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7cbf0]">DAbt_Handler</a><BR>
 <LI><a href="#[c7cba8]">IRQ_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7cba8]">IRQ_Handler</a><BR>
 <LI><a href="#[c7cb60]">FIQ_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7cb60]">FIQ_Handler</a><BR>
 <LI><a href="#[1078d50]">str_up_case</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[1078d50]">str_up_case</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
 <LI><a href="#[c7c9f8]">Reset_Handler</a>
 <LI><a href="#[c7ccc8]">Undef_Handler</a>
 <LI><a href="#[c7cc80]">SWI_Handler</a>
 <LI><a href="#[c7cc38]">PAbt_Handler</a>
 <LI><a href="#[c7cbf0]">DAbt_Handler</a>
 <LI><a href="#[c7cba8]">IRQ_Handler</a>
 <LI><a href="#[c7cb60]">FIQ_Handler</a>
 <LI><a href="#[10f6d20]">__main</a>
 <LI><a href="#[c7bd70]">interrupt_ethernet</a>
 <LI><a href="#[127d2f8]">_sgetc</a>
 <LI><a href="#[127d2b0]">_sbackspace</a>
 <LI><a href="#[c829c8]">main</a>
 <LI><a href="#[127d0f8]">_scanf_char_input</a>
 <LI><a href="#[127bf00]">isspace</a>
 <LI><a href="#[127ffd8]">_sputc</a>
 <LI><a href="#[107ed00]">dhcp_listener</a>
 <LI><a href="#[1083430]">http_listener</a>
 <LI><a href="#[10806e0]">nbns_listener</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[c7c9f8]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, lpc2300.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> lpc2300.o(RESET)
</UL>
<P><STRONG><a name="[10f6d20]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, entry.o($$startup$$))
<BR><BR>[Calls]<UL><LI><a href="#[127dbb0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__init (via Veneer)
</UL>

<P><STRONG><a name="[127dbf8]"></a>__call_main</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, init.o(.emb_text))
<BR><BR>[Called By]<UL><LI><a href="#[127dbb0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__init
</UL>

<P><STRONG><a name="[c82aa0]"></a>sendchar</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, http_demo.o(.text), UNUSED)

<P><STRONG><a name="[c82a58]"></a>LED_out</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, http_demo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c817d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cgi_process_data
<LI><a href="#[c82fb0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blink_led
</UL>

<P><STRONG><a name="[c82a10]"></a>AD_in</STRONG> (Thumb, 46 bytes, Stack size 0 bytes, http_demo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c81788]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cgi_func
</UL>

<P><STRONG><a name="[c829c8]"></a>main</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, http_demo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 320 + Unknown Stack Size
<LI>Call Chain = main &rArr; main_TcpNet &rArr; run_system &rArr; run_eth_link &rArr; process_hl_tcp &rArr; process_tcp &rArr; tcp_send_reset &rArr; tcp_send_ctrl &rArr; tcp_send_frame &rArr; ip_send_frame &rArr; dispatch_frame &rArr; eth_send_frame &rArr; arp_cache_find &rArr; arp_send_req &rArr; alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c82fb0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blink_led
<LI><a href="#[c82ff8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init
<LI><a href="#[c83040]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dhcp_check
<LI><a href="#[10ff390]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_tick
<LI><a href="#[10ff3d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main_TcpNet
</UL>
<BR>[Address Reference Count : 1]<UL><LI> init.o(.text)
</UL>
<P><STRONG><a name="[c81818]"></a>cgi_process_var</STRONG> (Thumb, 312 bytes, Stack size 56 bytes, http_cgi.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 348 + Unknown Stack Size
<LI>Call Chain = cgi_process_var &rArr; __0sscanf &rArr; __vfscanf_char &rArr; __vfscanf &rArr; _scanf_longlong &rArr; __aeabi_lmul &rArr; __aeabi_llsl
</UL>
<BR>[Calls]<UL><LI><a href="#[1077088]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;free_mem
<LI><a href="#[10770d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alloc_mem
<LI><a href="#[1078d98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;str_scomp
<LI><a href="#[1082e00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;http_get_var
<LI><a href="#[127ed58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0sscanf
</UL>
<BR>[Called By]<UL><LI><a href="#[1083430]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;http_listener
</UL>

<P><STRONG><a name="[c817d0]"></a>cgi_process_data</STRONG> (Thumb, 374 bytes, Stack size 56 bytes, http_cgi.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = cgi_process_data &rArr; alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c82a58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_out
<LI><a href="#[1077088]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;free_mem
<LI><a href="#[10770d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alloc_mem
<LI><a href="#[1078d98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;str_scomp
<LI><a href="#[1078e28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;str_copy
<LI><a href="#[1078fd8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mem_comp
<LI><a href="#[1082e00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;http_get_var
<LI><a href="#[10f6790]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
</UL>
<BR>[Called By]<UL><LI><a href="#[1083430]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;http_listener
</UL>

<P><STRONG><a name="[c81788]"></a>cgi_func</STRONG> (Thumb, 890 bytes, Stack size 64 bytes, http_cgi.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = cgi_func &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[c82a10]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AD_in
<LI><a href="#[1082e90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;http_get_lang
<LI><a href="#[10f6670]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strcmp
<LI><a href="#[10f7458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_switch8 (via Veneer)
<LI><a href="#[127deb8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2f
<LI><a href="#[127e070]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_scalbn
<LI><a href="#[127e190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
<LI><a href="#[127e360]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
<LI><a href="#[127fd08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__1sprintf
</UL>
<BR>[Called By]<UL><LI><a href="#[1082d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;run_http_server
</UL>

<P><STRONG><a name="[c7e148]"></a>sys_error</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, net_config.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[c7e148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sys_error
</UL>
<BR>[Called By]<UL><LI><a href="#[c73e80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;udp_get_socket
<LI><a href="#[c778c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;tcp_get_socket
<LI><a href="#[c77ab8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_tcp
<LI><a href="#[c7e148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sys_error
<LI><a href="#[1077088]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;free_mem
<LI><a href="#[10770d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alloc_mem
</UL>

<P><STRONG><a name="[c7e100]"></a>init_system</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = init_system &rArr; init_http &rArr; tcp_get_socket
</UL>
<BR>[Calls]<UL><LI><a href="#[c73fa0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_udp
<LI><a href="#[c77b00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_tcp
<LI><a href="#[107ca00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_eth_link
<LI><a href="#[107e910]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_dhcp
<LI><a href="#[10802f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_nbns
<LI><a href="#[1082db8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_http
</UL>
<BR>[Called By]<UL><LI><a href="#[10ff420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_TcpNet
</UL>

<P><STRONG><a name="[c7e0b8]"></a>run_system</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 296 + Unknown Stack Size
<LI>Call Chain = run_system &rArr; run_eth_link &rArr; process_hl_tcp &rArr; process_tcp &rArr; tcp_send_reset &rArr; tcp_send_ctrl &rArr; tcp_send_frame &rArr; ip_send_frame &rArr; dispatch_frame &rArr; eth_send_frame &rArr; arp_cache_find &rArr; arp_send_req &rArr; alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c777a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;tcp_poll_sockets
<LI><a href="#[107c970]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;run_eth_link
<LI><a href="#[107e8c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;run_dhcp_client
<LI><a href="#[1082d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;run_http_server
</UL>
<BR>[Called By]<UL><LI><a href="#[10ff3d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main_TcpNet
</UL>

<P><STRONG><a name="[c7e070]"></a>process_hl_udp</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 44 + Unknown Stack Size
<LI>Call Chain = process_hl_udp &rArr; process_udp &rArr; CalcChksumBuf
</UL>
<BR>[Calls]<UL><LI><a href="#[c73f58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_udp
</UL>
<BR>[Called By]<UL><LI><a href="#[107c970]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;run_eth_link
</UL>

<P><STRONG><a name="[c7e028]"></a>process_hl_tcp</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 272 + Unknown Stack Size
<LI>Call Chain = process_hl_tcp &rArr; process_tcp &rArr; tcp_send_reset &rArr; tcp_send_ctrl &rArr; tcp_send_frame &rArr; ip_send_frame &rArr; dispatch_frame &rArr; eth_send_frame &rArr; arp_cache_find &rArr; arp_send_req &rArr; alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c77ab8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_tcp
</UL>
<BR>[Called By]<UL><LI><a href="#[107c970]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;run_eth_link
</UL>

<P><STRONG><a name="[c7dfe0]"></a>dispatch_frame</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = dispatch_frame &rArr; eth_send_frame &rArr; arp_cache_find &rArr; arp_send_req &rArr; alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[107ca48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;eth_send_frame
</UL>
<BR>[Called By]<UL><LI><a href="#[10faa70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ip_send_frame
</UL>

<P><STRONG><a name="[c7b980]"></a>init_ethernet</STRONG> (Thumb, 440 bytes, Stack size 24 bytes, lpc23_emac.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = init_ethernet
</UL>
<BR>[Calls]<UL><LI><a href="#[c7bce0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_PHY
<LI><a href="#[c7bd28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_PHY
</UL>
<BR>[Called By]<UL><LI><a href="#[107ca00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_eth_link
</UL>

<P><STRONG><a name="[c7b938]"></a>int_enable_eth</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, lpc23_emac.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[1076ff8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;resize_mem
<LI><a href="#[1077088]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;free_mem
<LI><a href="#[10770d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alloc_mem
<LI><a href="#[107ca00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_eth_link
</UL>

<P><STRONG><a name="[c7b8f0]"></a>int_disable_eth</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, lpc23_emac.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[1076ff8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;resize_mem
<LI><a href="#[1077088]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;free_mem
<LI><a href="#[10770d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alloc_mem
<LI><a href="#[107ca00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_eth_link
<LI><a href="#[10ff420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_TcpNet
</UL>

⌨️ 快捷键说明

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