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

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

?? net_os.c

?? uCOS-II 2.8和uC-TCP/IP在ATMEL AT91SAM9261上移植
?? C
?? 第 1 頁 / 共 5 頁
字號:


/*$PAGE*/
/*
*********************************************************************************************************
*                                       NetOS_IF_RxTaskSignal()
*
* Description : Signal network interface receive task of NIC receive ISR.
*
* Argument(s) : psignal     Pointer to signal value to post to network interface receive queue.
*
*               perr        Pointer to variable that will receive the return error code from this function :
*
*                               NET_IF_ERR_NONE                 Network interface receive queue successfully
*                                                                   signaled.
*                               NET_IF_ERR_RX_Q_FULL            Network interface receive queue full.
*                               NET_IF_ERR_RX_Q_SIGNAL_FAULT    Network interface receive queue signal fault.
*
* Return(s)   : none.
*
* Caller(s)   : NetNIC_RxISR_Handler(),  for packet   -based NICs.
*               NetNIC_RxPktHandler(),   for character-based NICs.
*
*               This function is a network protocol suite to network interface controller (NIC) function
*               & SHOULD be called only by appropriate network interface controller function(s).
*
* Note(s)     : (1) To balance network receive versus transmit packet loads for certain network connection
*                   types (e.g. stream-type connections), network receive & transmit packets SHOULD be 
*                   handled in an APPROXIMATELY balanced ratio.
*
*                   (b) To implement network receive versus transmit load balancing :
*
*                       (1) The availability of network receive packets MUST be managed at the network 
*                           interface layer :
*
*                           (A) Increment the number of available network receive packets queued for
*                               each network packet received.
*
*                   See also 'NETWORK RECEIVE PACKET MACRO'S  Note #1'.
*********************************************************************************************************
*/

void  NetOS_IF_RxTaskSignal (NET_ERR  *perr)
{
#if ((NET_CFG_LOAD_BAL_EN     == DEF_ENABLED)                    && \
     (CPU_CFG_CRITICAL_METHOD == CPU_CRITICAL_METHOD_STATUS_LOCAL))
    CPU_SR  cpu_sr;
#endif
    INT8U   os_err;


    os_err = OSSemPost(NetOS_IF_RxQ_SignalPtr);                 /* Signal network interface receive queue.              */

    switch (os_err) {
        case OS_ERR_NONE:
                                                                /* Increment number of queued receive packets ...       */
             NET_RX_PKT_INC();                                  /* ... available (see Note #1b1A).                      */
            *perr = NET_IF_ERR_NONE;
             break;


        case OS_SEM_OVF:
            *perr = NET_IF_ERR_RX_Q_FULL;
             break;


        case OS_ERR_PEVENT_NULL:
        case OS_ERR_EVENT_TYPE:
        default:
            *perr = NET_IF_ERR_RX_Q_SIGNAL_FAULT;
             break;
    }
}


/*$PAGE*/
/*
*********************************************************************************************************
*********************************************************************************************************
*                          INTERNET CONTROL MESSAGE PROTOCOL LAYER FUNCTIONS
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                        NetOS_ICMP_TxMsgReq()
*
* Description : Transmit ICMP Request Message.
*
*               (1) NetOS_ICMP_TxMsgReq() is the correct API function for network & end-user applications to
*                   transmit ICMP Request Messages (see also 'net_icmp.c  NetICMP_TxMsgReq()  Note #3').
*
*               (2) See 'net_icmp.h  ICMP MESSAGE TYPES & CODES  Notes #2 & #3' for supported ICMP message
*                   types & codes.
*
*
* Argument(s) : type        ICMP Request Message type (see Note #2) :
*
*                               NET_ICMP_MSG_TYPE_ECHO_REQ
*                               NET_ICMP_MSG_TYPE_TS_REQ
*                               NET_ICMP_MSG_TYPE_ADDR_MASK_REQ
*
*               code        ICMP Request Message code (see Note #2).
*
*               TOS         Specific TOS to transmit IP packet
*                               (see 'net_ip.h  IP HEADER TYPE OF SERVICE (TOS) DEFINES').
*
*               TTL         Specific TTL to transmit IP packet (see 'net_ip.h  IP HEADER DEFINES').
*
*               addr_dest   Destination IP address.
*
*               flags       Flags to select transmit options; bit-field flags logically OR'd :
*
*                               NET_IP_FLAG_NONE                No  IP transmit flags selected.
*                               NET_IP_FLAG_TX_DONT_FRAG        Set IP 'Don't Frag' flag.
*
*               popts       Pointer to one or more IP options configuration data structures :
*
*                               NULL                            NO IP transmit options configuration.
*                               NET_IP_OPT_CFG_ROUTE_TS         Route &/or Internet Timestamp options configuration.
*                               NET_IP_OPT_CFG_SECURITY         Security options configuration
*                                                                   (see 'net_ip.h  Note #1f').
*
*               perr        Pointer to variable that will receive the return error code from this function :
*
*                                                               ------ RETURNED BY NetICMP_TxMsgReq() : ------
*                               NET_ICMP_ERR_NONE               ICMP Request Message successfully transmitted.
*                               NET_ERR_INIT_INCOMPLETE         Network initialization NOT complete.
*                               NET_ERR_TX                      Transmit error; packet discarded.
*
* Return(s)   : ICMP Request Message's Identification (ID) & Sequence Numbers, if NO errors.
*
*               NULL                   Identification (ID) & Sequence Numbers, otherwise.
*
* Caller(s)   : Application.
*
*               This function is a network protocol suite application interface (API) function & MAY be 
*               called by application function(s).
*
* Note(s)     : (3) (a) RFC #792 states that the Identifier field is an "aid in matching [requests] and
*                       replies, may be zero ... For example, the identifier might be used like a port
*                       in TCP or UDP to identify a session" (Sections 'Echo or Echo Reply Message :
*                       Identifier, Description' & 'Timestamp or Timestamp Reply Message : Identifier,
*                       Description').
*
*                   (b) Use uC/OS-II task priority number as ICMP Request Message Identification field.
*
*               (4) #### ICMP Receive Error/Reply Messages NOT yet implemented.
*
*                   See also 'net_icmp.c  NetICMP_Rx()  Note #4'.
*********************************************************************************************************
*/
/*$PAGE*/
NET_ICMP_REQ_ID_SEQ  NetOS_ICMP_TxMsgReq (CPU_INT08U    type,
                                          CPU_INT08U    code,
                                          NET_IP_TOS    TOS,
                                          NET_IP_TTL    TTL,
                                          NET_IP_ADDR   addr_dest,
                                          CPU_INT16U    flags,
                                          void         *popts,
                                          void         *p_data,
                                          CPU_INT16U    data_len,
                                          NET_ERR      *perr)
{
#if (CPU_CFG_CRITICAL_METHOD == CPU_CRITICAL_METHOD_STATUS_LOCAL)
    CPU_SR               cpu_sr;
#endif
    CPU_INT16U           id;
    NET_ICMP_REQ_ID_SEQ  id_seq;


    CPU_CRITICAL_ENTER();
    id     = (CPU_INT16U)OSTCBCur->OSTCBPrio;                   /* Set task prio as ICMP Req Msg id (see Note #3b).     */
    CPU_CRITICAL_EXIT();

    id_seq =  NetICMP_TxMsgReq(type, code, id, TOS, TTL, addr_dest, flags, popts, p_data, data_len, perr);

    return (id_seq);
}


/*$PAGE*/
/*
*********************************************************************************************************
*********************************************************************************************************
*                            TRANSMISSION CONTROL PROTOCOL LAYER FUNCTIONS
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                          NetOS_TCP_Init()
*
* Description : (1) Perform TCP/OS initialization :
*
*                   (a) Create TCP connection receive  queue binary semaphores :
*
*                       (1) Initialize TCP connection receive queue binary semaphores with no received 
*                           packets  by setting the semaphore count to 0.
*                       (2) Initialize TCP connection receive queue timeout values.
*
*                   (b) Create TCP connection transmit queue binary semaphores :
*
*                       (1) Initialize TCP connection transmit queue binary semaphores with no transmit
*                           permissions by setting the semaphore count to 0.
*                       (2) Initialize TCP connection transmit queue timeout values.
*
*
* Argument(s) : perr        Pointer to variable that will receive the return error code from this function :
*
*                               NET_OS_ERR_NONE                     TCP/OS initialization successful.
*                               NET_OS_ERR_INIT_TCP_RX_Q            TCP receive  queue(s)         NOT 
*                                                                       successfully initialized.
*                               NET_OS_ERR_INIT_TCP_RX_Q_TIMEOUT    TCP receive  queue timeout(s) NOT 
*                                                                       successfully configured.
*                               NET_OS_ERR_INIT_TCP_TX_Q            TCP transmit queue(s)         NOT 
*                                                                       successfully initialized.
*                               NET_OS_ERR_INIT_TCP_TX_Q_TIMEOUT    TCP transmit queue timeout(s) NOT 
*                                                                       successfully configured.
*
* Return(s)   : none.
*
* Caller(s)   : NetTCP_Init().
*
*               This function is an INTERNAL network protocol suite function & MUST NOT be called by 
*               application function(s).
*
* Note(s)     : none.
*********************************************************************************************************
*/
/*$PAGE*/
#ifdef  NET_TCP_MODULE_PRESENT
void  NetOS_TCP_Init (NET_ERR  *perr)
{
    OS_EVENT          **psignal;
    NET_TCP_CONN_QTY    i;
    NET_ERR             net_err;

                                                            /* Initialize TCP connection queues (see Note #1).          */

    psignal = &NetOS_TCP_RxQ_SignalPtr[0];
    for (i = 0; i < NET_TCP_CFG_NBR_CONN; i++) {               
       *psignal = OSSemCreate((INT16U)0);                   /* Create     TCP connection receive queue semaphores.      */
        if (*psignal == (OS_EVENT *)0) {
            *perr = NET_OS_ERR_INIT_TCP_RX_Q;
             return;
        }
        psignal++;
                                                            /* Initialize TCP connection receive queue timeout values.  */
        NetOS_TCP_RxQ_TimeoutDflt(i, &net_err);
        if (net_err != NET_TCP_ERR_NONE) {
           *perr = NET_OS_ERR_INIT_TCP_RX_Q_TIMEOUT;
            return;
        }
    }


    psignal = &NetOS_TCP_TxQ_SignalPtr[0];
    for (i = 0; i < NET_TCP_CFG_NBR_CONN; i++) {               
       *psignal = OSSemCreate((INT16U)0);                   /* Create     TCP connection transmit queue semaphores.     */
        if (*psignal == (OS_EVENT *)0) {
            *perr = NET_OS_ERR_INIT_TCP_TX_Q;
             return;
        }
        psignal++;
                                                            /* Initialize TCP connection transmit queue timeout values. */
        NetOS_TCP_TxQ_TimeoutDflt(i, &net_err);
        if (net_err != NET_TCP_ERR_NONE) {
           *perr = NET_OS_ERR_INIT_TCP_TX_Q_TIMEOUT;
            return;
        }
    }


   *perr = NET_OS_ERR_NONE;
}
#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                         NetOS_TCP_RxQ_Clr()
*
* Description : Clear TCP connection receive queue signal.
*
* Argument(s) : conn_id_tcp     Handle identifier of TCP connection to clear receive queue signal.
*               -----------     Argument validated in NetTCP_RxAppData(),
*                                                     NetTCP_RxPktConnHandlerRxQ_AppData(),
*                                                     NetTCP_ConnFreeHandler().
*
*               perr        Pointer to variable that will receive the return error code from this function :
*
*                               NET_TCP_ERR_NONE                TCP connection receive queue signal 
*                                                                   successfully cleared.
*                               NET_TCP_ERR_RX_Q_SIGNAL_CLR     TCP connection receive queue signal
*                                                                   NOT          cleared.
*
* Return(s)   : none.
*
* Caller(s)   : NetTCP_RxAppData(),
*               NetTCP_RxPktConnHandlerRxQ_AppData(),
*               NetTCP_ConnFreeHandler().
*
*               This function is an INTERNAL network protocol suite function & MUST NOT be called by 
*               application function(s).
*
* Note(s)     : none.
********************************************************************

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人丝袜高跟foot| 免费看欧美女人艹b| 亚洲精品久久7777| 日本视频一区二区三区| 国产成人自拍网| 欧美日本乱大交xxxxx| 久久久久国产精品麻豆ai换脸| 亚洲男人的天堂在线观看| 免费国产亚洲视频| 色哟哟一区二区三区| 2024国产精品| 日韩 欧美一区二区三区| 99久久777色| 国产日产欧产精品推荐色| 日韩成人午夜电影| 91视频com| 国产精品国产三级国产| 国内外成人在线视频| 欧美高清一级片在线| 亚洲在线视频网站| www.欧美日韩国产在线| 日韩欧美一区二区三区在线| 亚洲人成在线观看一区二区| 国产成人免费视频精品含羞草妖精| 91精品视频网| 亚洲成人黄色小说| 99热精品国产| 国产精品久久久一区麻豆最新章节| 国产在线播放一区三区四| 91精品国产高清一区二区三区| 亚洲精品免费播放| 99九九99九九九视频精品| 久久久久久麻豆| 国产精品18久久久久久久久| 欧美电影免费观看高清完整版在线观看| 一区二区三区欧美在线观看| 97精品电影院| 国产精品久久久爽爽爽麻豆色哟哟| 国产精品香蕉一区二区三区| 久久久亚洲综合| 国产精品一卡二| 欧美激情综合五月色丁香小说| 韩国女主播成人在线观看| 日韩三级电影网址| 午夜不卡av在线| 91麻豆精品国产91久久久使用方法 | 2020国产精品自拍| 狠狠色丁香九九婷婷综合五月| 日韩视频一区二区| 国内外成人在线| 国产精品网站导航| 97久久超碰精品国产| 亚洲激情图片一区| 欧美日本一区二区三区| 蜜桃一区二区三区在线观看| 久久久亚洲综合| 99久久国产综合精品女不卡| 一区二区三区欧美日韩| 欧美顶级少妇做爰| 国产在线观看免费一区| 久久精品亚洲精品国产欧美 | 2欧美一区二区三区在线观看视频| 紧缚奴在线一区二区三区| 日本一区二区免费在线| 91麻豆文化传媒在线观看| 日韩精品成人一区二区三区| 26uuu国产日韩综合| 91污在线观看| 蜜臀av一区二区在线观看| 国产精品天美传媒| 欧美系列一区二区| 激情五月激情综合网| 亚洲老妇xxxxxx| 日韩色在线观看| 99久久久无码国产精品| 日韩精品成人一区二区三区| 国产精品视频九色porn| 欧美色欧美亚洲另类二区| 久久精品国产澳门| 亚洲色图在线看| 欧美日韩高清一区二区不卡 | 中文字幕精品一区二区精品绿巨人 | 92精品国产成人观看免费| 日韩精品一区第一页| 国产精品久线在线观看| 日韩欧美高清在线| 成人免费看片app下载| 秋霞影院一区二区| 亚洲码国产岛国毛片在线| 精品久久久久久久久久久院品网| 91国偷自产一区二区三区成为亚洲经典 | 在线视频欧美精品| 久久www免费人成看片高清| 亚洲精品福利视频网站| 精品久久一区二区| 欧美日韩一区久久| 99久久综合精品| 国产成人综合在线观看| 首页国产欧美久久| 一区二区三区国产豹纹内裤在线| 欧美国产一区二区| 久久网站热最新地址| 久久这里只有精品视频网| 在线观看一区二区视频| 成人av集中营| 国产曰批免费观看久久久| 亚洲mv在线观看| 亚洲精品视频在线看| 国产精品久久久久久久久动漫| 精品国产制服丝袜高跟| 日韩视频免费观看高清完整版在线观看 | 韩国精品免费视频| 亚洲h精品动漫在线观看| 樱桃国产成人精品视频| 久久久国产综合精品女国产盗摄| 日韩欧美亚洲国产精品字幕久久久| 欧美性色aⅴ视频一区日韩精品| 91麻豆精品秘密| 97超碰欧美中文字幕| av午夜精品一区二区三区| 懂色av一区二区三区蜜臀| 国产精品996| 丰满岳乱妇一区二区三区| 成人深夜在线观看| 波多野结衣精品在线| 99re这里只有精品视频首页| 99国产精品视频免费观看| 色综合久久66| 日本福利一区二区| 91福利小视频| 欧美性猛交xxxx乱大交退制版 | 国产一区二区三区久久久| 国产美女视频一区| 国产一区二区电影| 高清视频一区二区| 91色在线porny| 精品视频一区三区九区| 337p亚洲精品色噜噜噜| 欧美va天堂va视频va在线| 久久久久久久性| 亚洲天堂2014| 亚洲妇熟xx妇色黄| 久久99久久99| 不卡一卡二卡三乱码免费网站| 91女神在线视频| 欧美一区二区三区影视| 精品国精品国产尤物美女| 国产精品美女久久久久久2018| 亚洲美女屁股眼交| 日本91福利区| a级精品国产片在线观看| 91同城在线观看| 日韩一区二区三区电影| 国产精品欧美极品| 国产精品理论片| 日韩电影在线免费看| 激情综合网天天干| 国产a久久麻豆| 欧美一区二区三区视频在线观看 | 国产精品视频观看| 丝袜美腿亚洲一区二区图片| 国产伦精品一区二区三区免费迷 | 中文字幕av一区二区三区高 | 欧美绝品在线观看成人午夜影视| 欧美一级视频精品观看| 中文字幕日韩欧美一区二区三区| 日本不卡高清视频| 91一区一区三区| 精品福利av导航| 亚洲成人精品一区| 99九九99九九九视频精品| 日韩欧美色综合网站| 亚洲男帅同性gay1069| 国产乱子伦一区二区三区国色天香| 欧美性猛片aaaaaaa做受| 国产欧美1区2区3区| 免费人成在线不卡| 在线观看日韩电影| 久久精品网站免费观看| 午夜欧美视频在线观看| jizzjizzjizz欧美| 久久精品日产第一区二区三区高清版 | 樱桃国产成人精品视频| 国产盗摄视频一区二区三区| 欧美一级淫片007| 婷婷开心久久网| 99久久久精品免费观看国产蜜| 精品国精品国产尤物美女| 性久久久久久久久| 色综合天天综合色综合av | 色欧美片视频在线观看在线视频| 2欧美一区二区三区在线观看视频| 图片区小说区国产精品视频| 色偷偷久久一区二区三区| 国产精品超碰97尤物18| 国产成人精品影视| 国产亚洲一区二区三区四区| 国产乱码精品一区二区三区五月婷 | 日本乱人伦aⅴ精品| 亚洲欧洲无码一区二区三区|