📄 bootinit.html
字号:
<html><head><!-- /vobs/wpwr/docs/vxworks/ref/bootInit.html - generated by refgen from /vobs/wpwr/target/config/all/bootInit.c --> <title> bootInit </title></head><body bgcolor="#FFFFFF"> <hr><a name="top"></a><p align=right><a href="libIndex.htm"><i>VxWorks API Reference : OS Libraries</i></a></p></blockquote><h1>bootInit</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote> <p><strong>bootInit</strong> - ROM initialization module </p></blockquote><h4>ROUTINES</h4><blockquote><p><p><b><a href="./bootInit.html#romStart">romStart</a>( )</b> - generic ROM initialization<br><p></blockquote><h4>DESCRIPTION</h4><blockquote><p>This module provides a generic boot ROM facility. The target-specific<b>romInit.s</b> module performs the minimal preliminary board initialization andthen jumps to the C routine <b><a href="./bootInit.html#romStart">romStart</a>( )</b>. This routine, still executing outof ROM, copies the first stage of the startup code to a RAM address andjumps to it. The next stage clears memory and then uncompresses theremainder of ROM into the final VxWorks ROM image in RAM.<p>A modified version of the Public Domain <b>zlib</b> library is used touncompress the VxWorks boot ROM executable linked with it. Compressingobject code typically achieves over 55% compression, permitting muchlarger systems to be burned into ROM. The only expense is the added fewseconds delay while the first two stages complete.<p></blockquote><h4>ROM AND RAM MEMORY LAYOUT</h4><blockquote><p>Example memory layout for a 1-megabyte board:<pre> -------------- 0x00100000 = LOCAL_MEM_SIZE = sysMemTop() | | | RAM | | 0 filled | | | |------------| = (romInit+ROM_COPY_SIZE) or binArrayStart | ROM image | |----------- | 0x00090000 = RAM_HIGH_ADRS | STACK_SAVE | |------------| | | 0x00080000 = 0.5 Megabytes | | | | | 0 filled | | | | | 0x00001000 = RAM_ADRS & RAM_LOW_ADRS | | | | exc vectors, bp anchor, exc msg, bootline | | | | -------------- 0x00000000 = LOCAL_MEM_LOCAL_ADRS</pre><pre> -------------- | ROM | | | 0xff8xxxxx = binArrayStart | | | | 0xff800008 = ROM_TEXT_ADRS -------------- 0xff800000 = ROM_BASE_ADRS</pre></blockquote><h4>SEE ALSO</h4><blockquote><p><p><b><a href="./inflateLib.html#inflate">inflate</a>( )</b>, <b>romInit( )</b>, and deflate<p></blockquote><h4>AUTHOR</h4><blockquote><p>The original compression software for zlib was written by Jean-loup Gaillyand Mark Adler. See the manual pages of inflate and deflate formore information on their freely available compression software.<hr><a name="romStart"></a><p align=right><a href="rtnIndex.htm"><i>OS Libraries : Routines</i></a></p></blockquote><h1>romStart( )</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote> <p><strong>romStart( )</strong> - generic ROM initialization</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>void romStart ( int startType /* start type */ )</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This is the first C code executed after reset.<p>This routine is called by the assembly start-up code in <b>romInit( )</b>.It clears memory, copies ROM to RAM, and possibly invokes the uncompressor.It then jumps to the entry point of the uncompressed object code.<p></blockquote><h4>RETURNS</h4><blockquote><p>N/A</blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./bootInit.html#top">bootInit</a></b></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -