亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wdb.pcl

?? vxworks源碼源碼解讀是學習vxworks的最佳途徑
?? PCL
?? 第 1 頁 / 共 4 頁
字號:
/* WDB.pcl - WDB Protocol Requests *//* Copyright 1984-1998 Wind River Systems, Inc. *//*modification history--------------------01j,15jan99,dbt  updated WDB_EVENTPOINT_ADD documentation.01i,22jun98,dbt  doc: updated to WDB 2.001h,27may98,rhp  doc: Changed first heading to standard DESCRIPTION.01g,09apr98,dbt  doc : added WDB_CONTEXT_STATUS_GET documentation.		       fixed an error in WDB_MODE_GET manual. 01f,31dec96,dgp  doc: more spelling corrections01e,06dec96,dgp  doc: correct spelling01d,21nov96,dgp  doc: change Target-Server to Target Server01c,18nov96,dgp  doc: correct italic and bold formatting01b,06nov96,dgp  doc: check into Clearcase01a,23jul96,dgp  written.*//*DESCRIPTIONThis document describes the Wind River Debug (WDB) version 2.0 protocol.It is the protocol used by the Tornado target server back endsthat communicate with the target agent (WDB RPC, WDB Serial, WDB NetROMand WDB Pipe).The diagram below gives an overview of the Tornado environment..CS        +---------+             +---------+    +---------+    +---------+        |         |             |         |    |         |    |         |        |  Shell  |             | Debugger|    | Browser |    |  Other  |        |         |             |         |    |         |    |  Tools  |        +----+----+             +----+----+    +----+----+    +----+----+             |                       |              |              |             +--------------------+  |  +-----------+              |                                  |  |  |  +-----------------------+                        WTX       |  |  |  |                      Protocol    |  |  |  |                              +--+--+--+--+---+                             |               |                             | Target Server |                             |               |                             +-+--+--+--+--+-+			       |  |  |	|  |                               |  |  |  |  +--------------------------+                               |  |  |  +-----------------+	      |                          +----+  |  +--------+           |           |                          |       |           |           |           |   Target Server   +---+---+  +---+----+  +---+----+  +---+----+  +---+----+    Back Ends      |  WDB  |  |  WDB   |  |  WDB   |  |  WDB   |  |Non-WDB |                   |  RPC  |  | Netrom |  | Serial |  | Pipe   |  |Back End|                   +---+---+  +---+----+  +----+---+  +---+----+  +---+----+                       |          |            |          |           |        Host           |          |            |          |           | - - - - - - - -- - - -|- - - - - |- - - - - - |- - - - - |- - - - - -|- -  Target (or simulator)|          |            |          |           |                       |          |            |          |           |                   +---+---+  +---+----+  +----+---+  +---+----+      |                   |Network|  | Netrom |  | Serial |  |  Pipe  |      | WDB Target Agent  |Comm if|  |Comm if |  |Comm if |  |Comm if |      |  Communication    +---+---+  +---+----+  +----+---+  +---+----+      |   Interfaces          |          |            |          |           |                       +--------+ | +----------+          |           |                                | | | +-------------------+           |				| | | |                               |                             +--+-+-+-+--+                       +----+----+                             |WDB Target |                       | Non-WDB |     Agents                  |   Agent   |                       |  Agent  |                             +-----+-----+                       +----+----+                                   |                                  |                              +----+----+                             |                              |         |                             |                              | vxWorks +-----------------------------+                              |         |                              +---------+.CENOTE: If you want to create a new back end for Tornado, knowledge ofthe WDB protocol is not needed. Creating a back end that communicateswith the WDB agent requires installing a new communication pathbetween the host and target. Once the communication path is established,the target agent performs all the services needed.Creating a back end that communicates with a non-WDB agent (for example, anICE) requires implementing all the target services required.For details, refer to the .I API Programmer's Guide: Target Server Back End.The next few sections describe the format of messages sent betweenthe host and target. The rest of this chapter describes the actualset of services provided by the agent.PROTOCOL OVERVIEWThe WDB protocol is an RPC-based protocol which uses UDP. The WDB agent acts as a server for requests sent by the target server. For more information, seeone of the many generally available references on UDP and Sun RPC.Some key definitions can be found in share/src/agents/wdb/wdb.h:.iP The UDP port that the agent accepts request from, WDBPORT, is 0x4321..iPThe agent's RPC program number, WDBPROG, is 0x55555555..iPThe agent's RPC version number, WDBVERS, is 1..LPREQUESTS SENT TO THE AGENTA WDB request packet sent to the agent contains, in order:.iP A 20-byte IP header..iPAn 8-byte UDP header. It consists of four 16-bit words. WDBPORT is word 2..iPA 40-byte RPC request header. It consists of ten 32-bit words. WDBPROG isword 3. WDBVERS is word 4. The RPC procedure number is word 5..iPAn XDR stream. The first 12 bytes of this stream is WDB-parameter-wrapper information. (See `${WIND_BASE}/share/src/agents/wdb' for moreinformation on the WDB_XDR functions.).LPThe diagram below shows the layout of the WDB request packet.  The main WDB information is contained in the XDR stream.  This is where the input parametersfor the WDB functions are transferred to the target agent..CS                             +-----+ IP HEADER                   |     | 20 bytes                    |     |               		     |     | 			     |     | 			     |     | 			     +-----+ UDP HEADER                  |     | WDBPORT 8 bytes                     |     |			     +-----+ RPC REQUEST HEADER          |     | 40 bytes                    |     | WDBPROG (10 32-bit words)           |     | WDBVERS			     |     | RPC procedure #			     |     |			     |     |			     |     |			     |     | XDR Stream		     +-----+ WDB PARAMETER WRAPPER       |     | Checksum 12 bytes                    |     | Packet Size			     |     | Sequence #			     | - - | XDR encoded PARAMETERS      |     | (function input parameters) |     |			     |     |			     |     |.CEThe WDB parameter wrapper contains three 4-byte words. The first wordis a checksum over the whole RPC packet (RPC header + XDR stream).The second word is the packet size. These two words enable the agentto determine if a corrupted packet has arrived. The third word isa sequence number. The low order two bytes of the sequence numberare used to allow the agent to ignore old or duplicated requests (whichcan occur with UDP transport). The high order two bytes are the`host ID'. When a host issues a WDB_TARGET_CONNECT request,the host ID portion of the sequence number is recorded. If a requestarrives from a non-connected host, the RPC fails with the RPCerror status PROG_UNAVAIL or SYSTEM_ERR, depending on whether theagent is already connected to another target server or not.The WDB_TARGET_CONNECT request always establishes a new connection,if necessary by dropping the old one. If the host wants to test whether ornot the agent is already connected before trying to establish a connection,it should first issue a WDB_TARGET_PING request and see if the RPC failswith error status PROG_UNAVAIL. If so the connection is busy.The routine `xdr_WDB_PARAM_WRAPPER' is used to encode or decode the entire XDRstream (the procedure parameters plus the 12-byte parameter wrapper). The following example is a code stub from the host routine rpcCoreClntCall():.CS    seqNumber++ ;    ...    wdbParamWrapper.xdr = inProc;         /@ xdr func for proc params @/    wdbParamWrapper.pParams = in;         /@ pointer to proc params @/    wdbParamWrapper.seqNum = processId | seqNumber;     /@ seq nb @/    ...    clntStatus = clnt_call (pWdbClnt, procNum, xdr_WDB_PARAM_WRAPPER,                            &wdbParamWrapper,                            ...);.CEREPLIES SENT BY THE AGENTA WDB reply packet sent by the agent contains, in order:.iP A 20-byte IP header..iPAn 8-byte UDP header..iPA 24-byte RPC reply header..iPAn XDR stream. The first 12 bytes of this stream is WDB replywrapper info (see below). The rest of the stream is the XDR-encoded reply from the procedure..LPThe diagram below shows the layout of the WDB reply packet.  As with the WDBrequest packet, the main WDB information is contained in the XDR stream.  Theresult of the WDB function is returned to the host in this stream..CS                             +-----+ IP HEADER                   |     | 20 bytes                    |     |                             |     |                             |     |                             |     |                             +-----+ UDP HEADER                  |     | 8 bytes                     |     |                             +-----+ RPC REPLY HEADER            |     | 24 BYTES                    |     | WDBPROG (6 32-bit words)            |     | WDBVERS                             |     | RPC procedure #                             |     |                             |     |                             |     |                             |     | XDR Stream                  +-----+ WDB REPLY WRAPPER           |     | Checksum 12 bytes                    |     | Packet Size                             |     | WDB Error Status                             | - - | XDR encoded REPLY           |     | (function output)           |     |                             |     |                             |     |.CELike the WDB parameter wrapper, the WDB reply wrapper contains three 4-byte words. The first word is a checksum over the whole RPC packet (RPC header plus XDR stream). The second word is the packet size. These two words enable the host to determine if a corrupted reply was returned (and, if so, to reissue the request). The third word is the WDB error status. The high order bit is set if there are events pending on the target, in which case thehost can issue a WDB_EVENT_GET request to upload the event. The rest of the word is the actual error status.牋.LPREPLY ERRORSAfter a remote procedure is called, the program should perform error checking.Error status can be communicated in one of two ways: in the RPC header or inthe reply wrapper. If the failure is reported in the RPC header, then the host's`clnt_call' will return an RPC error status. These have conventional meanings according to the RPC specification. In addition, the WDB agent uses thefollowing special codes:.iP RPC_PROCUNAVAIL 5The RPC procedure requested is not configured into the agent. The agent is scalable, so this usually means the agent was built without that service..iP RPC_PROGUNAVAILThe agent refused to execute the procedure because it is connected to another host..iP RPC_SYSTEMERRORThe agent refused to execute the procedure because it is not connected to any host. If you were previously connected, the target has rebooted..LPEven if the RPC call succeeds (meaning that the agent tries to execute your command), the command may still fail. The `errCode' field in the reply wrappercan be checked; if the lower 30 bits are zero, the command succeeded. (Rememberthat the high-order bit is set if there are events pending on the target.) If the value is non-zero, then the procedure failed and the word contains the error code. Error codes have the format WDB_ERR_XXX and are defined in ${WIND_BASE}/share/src/agents/wdb/wdb.h.The routine `xdr_WDB_REPLY_WRAPPER' is used to encode or decode the entire XDR stream (the reply data plus the 12-byte reply wrapper). The followingpseudo code shows how it works:.CS    wdbReplyWrapper.xdr = outProc;              /@ reply xdr function @/    wdbReplyWrapper.pReply = out;               /@ where to decode reply @/    wdbReplyWrapper.errCode = OK;               /@ just to clear this field @/    ...    clntStatus = clnt_call (pWdbClnt, procNum, xdr_WDB_PARAM_WRAPPER,                            &wdbParamWrapper, xdr_WDB_REPLY_WRAPPER,                             &wdbReplyWrapper, timeout);    check (clntStatus)        {        if (RPC_TIMEDOUT or RPC_CANTDECODERES or RPC_CANTDECODEARGS)           try again        if (RPC_SYSTEMERROR)           if we were previously connected, then target must have rebooted           so resync and reconnect.        if (RPC_PROCUNAVAIL)           procedure not configured into agent. Try to rebuild the agent           with that facility included (e.g., virtual I/O is an optional           agent facility).        if (RPC_SUCCESS)           agent tried to execute the routine.           check high order bit of wdbReplyWrapper.errCode to see if events           are pending on the target. If so, execute a WDB_EVENT_GET request           after finishing processing this reply.           mask off the high order bit of wdbReplyWrapper.errCode.           if (wdbReplyWrapper.errCode == 0)              success! In this case wdbReplyWrapper.xdr decoded the              reply and put it in wdbReplyWrapper.pReply.           else              wdbReplyWrapper.errCode contains the reason for procedure              failure. The error coded are defined in wdb.h.        }.CEAs the above pseudo code indicates, if you do not receive an RPC error orRPC_SUCCESS, `wdbReplyWrapper.errCode' contains the reason for the procedurefailure.  The possible error codes are as follows:.CSWDB_OK                          OK      /@ success @/WDB_ERR_INVALID_PARAMS          0x501   /@ params invalid @/WDB_ERR_MEM_ACCES               0x502   /@ memory fault @/WDB_ERR_AGENT_MODE              0x503   /@ wrong agent mode @/WDB_ERR_RT_ERROR                0x504   /@ run-time callout failed @/WDB_ERR_INVALID_CONTEXT         0x505   /@ bad task ID @/WDB_ERR_INVALID_VIO_CHANNEL     0x506   /@ bad virtual I/O channel @/WDB_ERR_INVALID_EVENT           0x507   /@ no such event type @/WDB_ERR_INVALID_EVENTPOINT      0x508   /@ no such eventpoint @/WDB_ERR_GOPHER_FAULT            0x509   /@ gopher fault @/WDB_ERR_GOPHER_TRUNCATED        0x50a   /@ gopher tape too large @/WDB_ERR_EVENTPOINT_TABLE_FULL   0x50b   /@ out of room @/WDB_ERR_NO_AGENT_PROC           0x50c   /@ agent proc not installed @/WDB_ERR_NO_RT_PROC              0x50d   /@ run-time callout unavail @/WDB_ERR_GOPHER_SYNTAX           0x50e   /@ gopher syntax error @/WDB_ERR_NOT_FOUND               0x50f   /@ object not found @/WDB_ERR_HW_REGS_EXHAUSTED       0x510   /@ hardware breakpoint registers full @/WDB_ERR_INVALID_HW_BP           0x511   /@ invalid hardware breakpoint @/WDB_ERR_PROC_FAILED             0x5ff   /@ generic proc failure @/WDB_ERR_NO_CONNECTION           0x600   /@ not connected @/WDB_ERR_CONNECTION_BUSY         0x601   /@ someone else connected @/WDB_ERR_COMMUNICATION           0x6ff   /@ generic comm error @/.CEASYNCHRONOUS NOTIFICATION BY THE AGENTAsynchronous events can be generated on the target. These includeexceptions, breakpoints, and task exiting. These events are queued on thetarget until the host uploads them with the WDB_EVENT_GET service. Inorder to prevent the host from polling for events, the agent has two waysto notify the host that events are pending. One way is setting the highorder bit in the `errCode' status of the reply wrapper. The other way is bysending a "notify packet".Normally the agent only sends data to the host in response to RPCrequests. The convention is that if the host receives data when it is notwaiting for a reply, it means that an event is pending on the target. Thetarget server waits for events from other host tools as well as from thetarget.  When the target sends an event, the host issues a WDB_EVENT_GETrequest to upload the event (and keeps uploading events until the highorder bit in the `errCode' field is clear). The actual notify packet sent bythe agent is a packet that can not be confused with an RPC reply (in caseit sends the notify packet just as the host issues an RPC request). Infact, it sends a bogus RPC request.PROCEDURESWDB transactions occur as described above. We now describe the setof WDB procedures. For each procedure, we list the input and outputstructures (if any), and some possible error codes. The error codes listedare in addition to the ones described in the previous sections.The actual values for the RPC procedure number, error status,and data types can be found in `${WIND_BASE}/share/src/agents/wdb/wdb.h'.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久午夜羞羞影院免费观看| 国产视频一区在线观看| 欧美v亚洲v综合ⅴ国产v| 国产视频在线观看一区二区三区| 亚洲色图丝袜美腿| 麻豆成人久久精品二区三区红 | 亚洲午夜久久久久久久久久久| 男人的天堂久久精品| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 国产美女娇喘av呻吟久久| 欧美伊人久久久久久久久影院 | 亚洲狼人国产精品| 欧美人与性动xxxx| 免费国产亚洲视频| 风流少妇一区二区| 伊人色综合久久天天人手人婷| 99久久久久久99| 久久伊99综合婷婷久久伊| 欧美精品九九99久久| 日韩伦理免费电影| 国产不卡在线视频| 欧美大度的电影原声| 亚洲成人动漫精品| 色久优优欧美色久优优| 中文字幕一区二区三区四区 | 狠狠色狠狠色综合日日91app| 欧美午夜精品一区二区三区 | 97精品视频在线观看自产线路二| 久久久99久久| 极品少妇一区二区三区精品视频| 91精品国产入口| 婷婷久久综合九色综合绿巨人| 欧美日韩免费一区二区三区视频 | 亚洲成人免费在线| 欧美伊人久久大香线蕉综合69| 亚洲乱码日产精品bd | 国产一区二区免费视频| 亚洲精品一线二线三线| 看电影不卡的网站| 精品成人佐山爱一区二区| 美国十次了思思久久精品导航| 91精品国产综合久久福利| 五月天一区二区三区| 欧美精品免费视频| 免费高清视频精品| 久久人人爽人人爽| 丁香网亚洲国际| 欧美一二三区精品| 国产精品资源网| 欧美激情一区二区三区全黄| 成人av电影在线播放| 国产精品久久久久久亚洲毛片| 99精品视频中文字幕| 一区二区三区久久| 91精品国产一区二区| 久久精品国产亚洲a| 国产欧美精品一区| 91九色最新地址| 日韩中文字幕不卡| 日韩精品一区国产麻豆| 国产成a人亚洲精品| 国产精品盗摄一区二区三区| 欧美性大战久久久| 久久机这里只有精品| 国产精品美女久久久久aⅴ| 91视频你懂的| 水蜜桃久久夜色精品一区的特点| 久久综合九色综合97婷婷女人| 不卡av电影在线播放| 亚洲免费av在线| 欧美一区二区成人6969| 国产999精品久久久久久| 亚洲一区精品在线| 欧美大度的电影原声| 99精品热视频| 麻豆国产精品777777在线| 欧美国产欧美亚州国产日韩mv天天看完整| 色伊人久久综合中文字幕| 欧美a一区二区| 亚洲精品菠萝久久久久久久| 欧美大片拔萝卜| 欧美在线观看禁18| 国产99久久久精品| 亚洲丶国产丶欧美一区二区三区| 国产午夜一区二区三区| 欧美日韩国产在线播放网站| av高清不卡在线| 加勒比av一区二区| 午夜av电影一区| 亚洲日本护士毛茸茸| 91精品国产综合久久久蜜臀图片| 91亚洲精品久久久蜜桃网站| 国产麻豆精品在线| 天堂成人免费av电影一区| 亚洲色图在线看| 国产喷白浆一区二区三区| 日韩一级欧美一级| 欧美色爱综合网| 91高清视频在线| 成人免费不卡视频| 国产精品系列在线观看| 美女尤物国产一区| 亚洲综合图片区| 亚洲免费高清视频在线| 国产精品入口麻豆九色| 久久精品人人做人人爽97| 日韩免费成人网| 日韩视频一区在线观看| 欧美日韩一区在线| 日本韩国欧美国产| 成人高清视频免费观看| 国产成人综合亚洲91猫咪| 国产一区二区中文字幕| 伦理电影国产精品| 免费成人结看片| 久久97超碰国产精品超碰| 强制捆绑调教一区二区| 日韩有码一区二区三区| 午夜欧美视频在线观看| 婷婷亚洲久悠悠色悠在线播放| 亚洲一区免费视频| 午夜一区二区三区视频| 天天影视涩香欲综合网| 亚洲成人av中文| 视频一区欧美日韩| 美女被吸乳得到大胸91| 韩国三级在线一区| 国产呦精品一区二区三区网站| 国产伦精品一区二区三区视频青涩 | 8v天堂国产在线一区二区| 欧美猛男超大videosgay| 欧美老女人在线| 日韩视频一区二区三区| 久久奇米777| 亚洲欧洲制服丝袜| 亚洲成人av一区二区| 麻豆精品在线视频| 国产福利一区二区三区视频| 99re成人在线| 欧美丰满美乳xxx高潮www| 欧美va在线播放| 中文字幕一区二区三区在线不卡 | 色婷婷激情久久| 欧美精品一级二级| 精品欧美乱码久久久久久1区2区| 国产日产欧美一区二区三区| 亚洲精品免费看| 美女网站色91| 成人午夜精品在线| 在线一区二区三区四区| 欧美刺激脚交jootjob| 国产精品国产三级国产普通话三级| 亚洲自拍都市欧美小说| 久久精品国产精品亚洲精品| 99视频热这里只有精品免费| 6080亚洲精品一区二区| 日本一区二区三区在线不卡| 亚洲不卡av一区二区三区| 国产一区二区久久| 欧美熟乱第一页| 国产欧美日韩不卡| 美日韩一区二区| 在线观看一区日韩| 精品日韩99亚洲| 亚洲一区二区四区蜜桃| 国产在线一区观看| 欧美羞羞免费网站| 国产清纯美女被跳蛋高潮一区二区久久w | 日韩欧美成人一区二区| 中文字幕日韩av资源站| 免费视频最近日韩| 色婷婷精品大在线视频 | 69堂精品视频| 亚洲日本中文字幕区| 国产在线国偷精品免费看| 欧美日韩免费一区二区三区| 国产精品久久久久久久第一福利 | 亚洲123区在线观看| 成人免费福利片| 久久综合狠狠综合久久综合88| 午夜视频在线观看一区| 99麻豆久久久国产精品免费优播| 精品国产乱码久久久久久影片| 天堂va蜜桃一区二区三区漫画版 | 亚洲精品欧美激情| 国产成人免费视频网站高清观看视频| 欧美日韩久久不卡| 亚洲久本草在线中文字幕| 国产电影一区二区三区| 日韩你懂的电影在线观看| 午夜国产精品一区| 色婷婷精品大在线视频| 综合自拍亚洲综合图不卡区| 高清免费成人av| 国产片一区二区三区| 国产麻豆一精品一av一免费| 久久精品人人做人人综合| 国产一区二区三区久久悠悠色av| 精品久久国产97色综合| 久久99国内精品|