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

📄 vxw_pt6.html

📁 vxworks及tornado常见问题解答
💻 HTML
📖 第 1 页 / 共 2 页
字号:
Anothor solution is this program from cedilnik andrej(acedil1@irix1.gl.umbc.edu). It can be started using the commandSync("IP-address"), for example Sync ("18.72.0.3"). Here is the program:<a href="ntp.c">ntp.c</a>.<p><hr WIDTH="60%"><p><h3><a NAME="6.6"><center>6.6 Performance / Benchmarks</center></a></h3><a NAME="6.6-A"></a>Q: What is the performance of VxWorks on my target?<p>A: There are a number of benchmark results published by Wondriver. Ask yourFAE for more information about this. These documents include details oncontext switching, interrupts etc.<p><hr WIDTH="60%"><p><h3><a NAME="6.7"><center>6.7 SNMP</center></a></h3><a NAME="6.7-A"></a>Q: How do I generate the Envoy SNMP server?<p>A: I've actually built the beast, including v3 support.You will have to build it outside of Tornado 2.0, andthen refer to the library as an EXTRA_MODULE within Tornado.<p>Part 1<p>Ill assume that $SNMP is the installation directoy of theepilogue stuff.  Some of what is listed below is identicalto section 5.2 of the getting started guide.<ol><li>Copy the snark/vxworks/cfgs/wind.cfg to the $SNMP dir.</li><li>Edit it to make the two key changes:<br>The first loadconfig statement in the file<br><code>loadconfig 'vxppc' ;my system</code><br>The SRCDIR setting:<br><code>equate SRCDIR 'yourdirectory to the SNMP dir' ;would be $SNMP</code></li><li>Now, make sure you have copied <em>$SNMP/snark/vxworks/h/snmpdLib.h</em>to <em>$WIND_BASE/target/h</em>.  Also, replace all contents of<em>$WIND_BASE/target/h/snmp</em> with <em>$SNMP/snark/vxworks/h/snmp</em>.</li><li>Run makmak in the $SNMP directory specifying this cfg file.</li><li>In the SNMP directory, type in "<code>make all</code>".</li></ol>If you get compile errors, try defining the following environmentvariables.  I set them for my NT box with Tornado under C:\Tornado:<pre>WIND_BASE               C:\TornadoWIND_BASE_TYPE          x86-win32WIND_HOST_TYPE          x86-win32</pre>Set these variables on an NT using the properties menu by right-mouseclicking over your 'my computer'.  On this dialog use the environmenttab.<br>Open up a new DOS shell and try the make all again.<p>Part 2<ol><li>Make sure you go to your BSP directory and edit config.has per section 5.2 to add the defines BEFORE the configAll include.</li><li>Fire up tornado</li><li>Start a new vxWorks bootable image project based on this BSP.</li><li>Open up the build properties and click on the MACROS tab and findthe EXTRA_MODULES.  In the value field, add the full path and nameof the snmp library.  For some reason, it has no extension.</li><li>Rebuild all.</li></ol>That should do the trick.  Now, if you actually are able to adda MIB to the agent let me know.  I can add a MIB, but for somereason, none of my get/set routines ever get called.<br>(From: Doug Dyer, doug_dyer@yahoo.com)<p><hr WIDTH="50%"><a NAME="6.7-C"></a><p>Q: How do I extend the Envoy SNMP agent?<p>A: The steps to the extension of the MIB agent should be as follows:<ol><li> Write your mib file say ex.mib</li><li> Compile it using the mibcompiler<pre>$mibcomp -stub -start (name of the module identity in your mib file) \ -o ex.c (list of mibs on which ex.mib depends) ex.mib</pre>Before doing this make sure that you set your MIBCOMP environmentvariable to point to the MIB search path where all your standardMIBs are located (i.e set MIBCOMP = -l MIB-search-path)<br>Once the <em>ex.c</em> file is created copy it to the directory<em>...\snark\vxworks\agent</em> and modify it as per your needs.</li><li> Edit the file <em>makefile.cfg</em> under <em>..\snark\vxworks\agent</em><ul><li>add ex to SNMP_OBJS2 i.e        $#equate(SNMP_OBJS2 $#objs(snmpsys mib snmptcp snmpudp saiolib ex))</li><li>add ex.mib to MIBSRC i.e</li></ul></li><li> Run <code>makmak</code> in the $SNMP directory specifying wind.cfg</li><li> Type <code>make all</code></li><li> You can see if you are able to get/set variables by using utilities     like getif/snmputil.</li></ol>(From: pintu_12@my-deja.com)<p><hr WIDTH="50%"><a NAME="6.7-C"></a><p>Q: Where can I find some information about (free) SNMP managers?<p>A: There are a couple.<ul><li><a href="http://net-snmp.sourceforge.net/">http://net-snmp.sourceforge.net/</a>(this was formerly ucd-snmp, a great package of tools)</li><li><a href="http://www.gxsnmp.org/">http://www.gxsnmp.org/</a>This is a good general purpose manager.</li><li>FYI, a good place to begin:<a href="http://www.snmpworld.com">http://www.snmpworld.com</a>or<a href="http://www.SNMPLink.org">http://www.SNMPLink.org</a></li></ul><br>(From: David Oberbeck, oberbdg@stamps.stortek.com)<a NAME="6.7-C1"></a><p>Lawrence T.Hoff worked on a SNMP implementation on VxWorks. See hisremarks that he made to me:<p>I still have the source code at this site :<A HREF="http://pubweb.bnl.gov/people/hoff/snmp2.tar.Z">http://pubweb.bnl.gov/people/hoff/snmp2.tar.Z</A>.<br>It is based on public domain software from Carnegie Mellon University.However, I have not done anything to support this code in 6 or 7years. In the meanwhile, Wind River has released a fully supportedSNMP agent.<br>(From: Andrew Cardoza, acardoza@nicon.co.za)<p><hr WIDTH="60%"><p><h3><a NAME="6.8"><center>6.8 Lint</center></a></h3><a NAME="6.8-A"></a>Q: I want to use PC-Lint, how do I configure it you be used with Tornado?<p>A: We are using PC-lint 7.5 to check our VxWorks projects for two yearsnow, using a lint parameter file with the following contents:<pre> -A                            /* ANSI-C checking                           */+fdi                          /* begin include search at including file    */+fcp                          /* use c++ not only for cpp and cxx ext.     */+fcu                          /* character is unsigned                     */+fva                          /* variable argument size                    */+fwc                          /* wchar_t is built in type                  */+ppw(option)                  /* add preprocessor word <option>            */-si4                          /* Integers are 4 Byte long                  */-sl4                          /* Longs are 4 Byte long                     */-sp4                          /* Pointers are 4 Byte long                  */-t2                           /* Tab size is 2                             */-v                            /* turn off all verbosity messages           */-width(0,3)                   /* Output format no breaking and indent 3    */-hsb#3                        /* Error display format                      */-"format=%f(%l): Error %n: %m"/* Error message format                      */-elib(???)                    /* I can`t fix errors in library headers     */-e537                         /* repeated include is controlled by #ifdev  */-e716                         /* while(1) is ok!                           */-e783                         /* file end without new line is ok           */-e765                         /* external could be made static             *//* NOT REFERENCED (see weak defines; check at end of project) */-e714                         /* function not referenced                   */-e749                         /* local enumeration constant not referenced */-e750                         /* local macro not referenced                */-e751                         /* local typedef not referenced              */-e752                         /* local declarator not referenced           */-e753                         /* local struct, union or enum tag not ref.  */-e754                         /* local structure member not referenced     */-e755                         /* global macro not referenced               */-e756                         /* global typedef not referenced             */-e757                         /* global declarator not referenced          */-e758                         /* global struct, union or enum tag not ref. */-e768                         /* global structure member not referenced    */-e769                         /* global enumeration constant not ref.      */-e1714                        /* member function not referenced            */-e1715                        /* static member not referenced              */-e1716                        /* virtual member function not referenced    */-e1750                        /* local template not referenced             */-e1755                        /* global template not referenced            */-esym(1512, unary_function<*>)         /* from stl in file stl_function.h  */-esym(1512, binary_function<*>)        /*            - "" -                */-emacro(611,clearerr)         /* ignore errors in macro                    */-emacro(666,clearerr)         /* ignore errors in macro                    */-emacro(740,clearerr)         /* ignore errors in macro                    */-emacro(534,putc)             /* ignore errors in macro                    */-emacro(611,putc)             /* ignore errors in macro                    */-emacro(666,putc)             /* ignore errors in macro                    */-emacro(740,putc)             /* ignore errors in macro                    */-emacro(534,putchar)          /* ignore errors in macro                    */-emacro(611,putchar)          /* ignore errors in macro                    */-emacro(666,putchar)          /* ignore errors in macro                    */-emacro(734,putchar)          /* ignore errors in macro                    */-emacro(740,putchar)          /* ignore errors in macro                    */-emacro(534,getchar)          /* ignore errors in macro                    */-emacro(611,getchar)          /* ignore errors in macro                    */-emacro(666,getchar)          /* ignore errors in macro                    */-emacro(740,getchar)          /* ignore errors in macro                    */-emacro(611,feof)             /* ignore errors in macro                    */-emacro(740,feof)             /* ignore errors in macro                    */-emacro(611,ferror)           /* ignore errors in macro                    */-emacro(740,ferror)           /* ignore errors in macro                    */-emacro(611,fileno)           /* ignore errors in macro                    */-emacro(613,fileno)           /* ignore errors in macro                    */-emacro(666,fileno)           /* ignore errors in macro                    */-emacro(740,fileno)           /* ignore errors in macro                    */-emacro(611,__sfileno)        /* ignore errors in macro                    */-emacro(613,__sfileno)        /* ignore errors in macro                    */-emacro(666,__sfileno)        /* ignore errors in macro                    */-emacro(740,__sfileno)        /* ignore errors in macro                    */-emacro(  26,va_start)        /* ignore errors in macro                    */-emacro( 522,va_start)        /* ignore errors in macro                    */-emacro( 534,va_start)        /* ignore errors in macro                    */-emacro( 746,va_start)        /* ignore errors in macro                    */-emacro(1055,va_start)        /* ignore errors in macro                    *//***  Ignore these constructs..*/-d__extension__()             /* for va_xxx macros                         */-d__attribute__=;             /* from stl in file exception part one       */-d((__noreturn__))=;          /*          - "" -            part two       */-d_IH=-d_SWI=-d_TRAP()=-d_SPL()=-d_GPL()=/*  The following functions exhibit variable return modes.**  That is, they may equally-usefully be called for a value**  as called just for their effects.  Accordingly we inhibit**  Warning 534 for these functions.**  Feel free to add to or subtract from this list.*/-esym(534,close,creat,fclose,fprintf,fputc)-esym(534,fputs,fscanf,fseek,fwrite,lseek,memcpy,memmove,memset)-esym(534,printf,puts,scanf,sprintf,sscanf,strcat,strcpy)-esym(534,strncat,strncpy,unlink,write)-esym(534,cprintf,CTerminalIO::cprintf,printErr,xfclose)</pre>The important line is 

⌨️ 快捷键说明

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