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

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

?? net_os.c

?? ucos porting source for samsung sam7x256
?? C
?? 第 1 頁 / 共 5 頁
字號:
/*
*********************************************************************************************************
*                                              uC/TCP-IP
*                                      The Embedded TCP/IP Suite
*
*                          (c) Copyright 2003-2006; Micrium, Inc.; Weston, FL
*
*                   All rights reserved.  Protected by international copyright laws.
*                   Knowledge of the source code may not be used to write a similar
*                   product.  This file may only be used in accordance with a license
*                   and should not be redistributed in any way.
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*
*                                      OPERATING SYSTEM SUPPORT
*
*                                          Micrium uC/OS-II
*
* Filename      : net_os.c
* Version       : V1.86
* Programmer(s) : ITJ
*********************************************************************************************************
* Note(s)       : (1) Assumes uC/OS-II is included in the product build.
*
*                 (2) REQUIREs the following uC/OS-II features to be ENABLED :
*
*                         ---- FEATURE ----         --- MINIMUM NUMBER TO CONFIGURE FOR NET/OS PORT ---
*
*                     (a) Semaphores                    NET_OS_NBR_SEM (see 'OS OBJECT DEFINES')
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                            INCLUDE FILES
*********************************************************************************************************
*/

#define    NET_OS_MODULE
#include  <net.h>
#include  <app_cfg.h>


/*
*********************************************************************************************************
*                                            LOCAL DEFINES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                           LOCAL CONSTANTS
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                          LOCAL DATA TYPES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                            LOCAL TABLES
*********************************************************************************************************
*/


/*$PAGE*/
/*
*********************************************************************************************************
*                                       LOCAL GLOBAL VARIABLES
*
* Note(s) : (1) (a) Signals & locks are implemented using binary   semaphores.
*
*               (b) Queues          are implemented using counting semaphores.
*********************************************************************************************************
*/

                                                                /* -------------------- TASK STKs --------------------- */
static  OS_STK     NetOS_Tmr_TaskStk[NET_OS_CFG_TMR_TASK_STK_SIZE];
static  OS_STK     NetOS_IF_RxTaskStk[NET_OS_CFG_IF_RX_TASK_STK_SIZE];


                                                                /* --------------------- SIGNALS ---------------------- */
static  OS_EVENT  *NetOS_InitSignalPtr;
static  OS_EVENT  *NetOS_NIC_TxRdySignalPtr;

#if    (NET_CFG_LOAD_BAL_EN == DEF_ENABLED)
static  OS_EVENT  *NetOS_TxSuspendSignalPtr;
#endif

#ifdef  NET_SOCK_MODULE_PRESENT
#if    (NET_SOCK_CFG_TYPE_STREAM_EN == DEF_ENABLED)
static  OS_EVENT  *NetOS_Sock_ConnReqSignalPtr[NET_SOCK_CFG_NBR_SOCK];
static  OS_EVENT  *NetOS_Sock_ConnAcceptSignalPtr[NET_SOCK_CFG_NBR_SOCK];
static  OS_EVENT  *NetOS_Sock_ConnCloseSignalPtr[NET_SOCK_CFG_NBR_SOCK];
#endif
#endif

                                                                /* ---------------------- LOCKS ----------------------- */
static  OS_EVENT  *NetOS_LockPtr;


                                                                /* --------------------- QUEUES ----------------------- */
static  OS_EVENT  *NetOS_IF_RxQPtr;


                                                                /* ---------------------- SEMS ------------------------ */
#ifdef  NET_TCP_MODULE_PRESENT
static  OS_EVENT  *NetOS_TCP_RxQ_SemPtr[NET_TCP_CFG_NBR_CONN];
static  OS_EVENT  *NetOS_TCP_TxQ_SemPtr[NET_TCP_CFG_NBR_CONN];
#endif

#ifdef  NET_SOCK_MODULE_PRESENT
static  OS_EVENT  *NetOS_Sock_RxQ_SemPtr[NET_SOCK_CFG_NBR_SOCK];
#endif


                                                                /* ---------------------- TMRS ------------------------ */
#if    (NET_CFG_LOAD_BAL_EN == DEF_ENABLED)
static  INT16U     NetOS_TxSuspendTimeout_tick;
#endif

#ifdef  NET_TCP_MODULE_PRESENT
static  INT16U     NetOS_TCP_RxQ_TimeoutTbl_tick[NET_TCP_CFG_NBR_CONN];
static  INT16U     NetOS_TCP_TxQ_TimeoutTbl_tick[NET_TCP_CFG_NBR_CONN];
#endif

#ifdef  NET_SOCK_MODULE_PRESENT
static  INT16U     NetOS_Sock_RxQ_TimeoutTbl_tick[NET_SOCK_CFG_NBR_SOCK];

#if    (NET_SOCK_CFG_TYPE_STREAM_EN == DEF_ENABLED)
static  INT16U     NetOS_Sock_ConnReqTimeoutTbl_tick[NET_SOCK_CFG_NBR_SOCK];
static  INT16U     NetOS_Sock_ConnAcceptTimeoutTbl_tick[NET_SOCK_CFG_NBR_SOCK];
static  INT16U     NetOS_Sock_ConnCloseTimeoutTbl_tick[NET_SOCK_CFG_NBR_SOCK];
#endif
#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                      LOCAL FUNCTION PROTOTYPES
*********************************************************************************************************
*/

                                                                        /* ---- NETWORK TIMER MANAGEMENT FUNCTIONS ---- */
static  void        NetOS_Tmr_Task           (void        *p_data);


                                                                        /* ---- NETWORK INTERFACE LAYER FUNCTIONS ----- */
static  void        NetOS_IF_RxTask          (void        *p_data);


                                                                        /* - NETWORK/OS TIMEOUT CALCULATION FUNCTIONS - */
#if ((NET_CFG_LOAD_BAL_EN == DEF_ENABLED) || \
     (defined(NET_TCP_MODULE_PRESENT ))   || \
     (defined(NET_SOCK_MODULE_PRESENT)))

static  INT16U      NetOS_TimeoutCalc_OS_tick(CPU_INT32U   timeout_ms,
                                              NET_ERR     *perr);

static  CPU_INT32U  NetOS_TimeoutCalc_ms     (INT16U       os_tick);

#endif


/*
*********************************************************************************************************
*                                     LOCAL CONFIGURATION ERRORS
*********************************************************************************************************
*/

#ifndef  NET_OS_CFG_IF_RX_TASK_PRIO
#error  "NET_OS_CFG_IF_RX_TASK_PRIO            not #define'd in 'app_cfg.h'"
#error  "                                [MUST be  >= 0]                   "
#elif   (NET_OS_CFG_IF_RX_TASK_PRIO < 0)
#error  "NET_OS_CFG_IF_RX_TASK_PRIO      illegally #define'd in 'app_cfg.h'"
#error  "                                [MUST be  >= 0]                   "
#endif


#ifndef  NET_OS_CFG_TMR_TASK_PRIO
#error  "NET_OS_CFG_TMR_TASK_PRIO              not #define'd in 'app_cfg.h'"
#error  "                                [MUST be  >= 0]                   "
#elif   (NET_OS_CFG_TMR_TASK_PRIO < 0)
#error  "NET_OS_CFG_TMR_TASK_PRIO        illegally #define'd in 'app_cfg.h'"
#error  "                                [MUST be  >= 0]                   "
#endif



#ifndef  NET_OS_CFG_TMR_TASK_STK_SIZE
#error  "NET_OS_CFG_TMR_TASK_STK_SIZE          not #define'd in 'app_cfg.h'"
#error  "                                [MUST be  > 0]                    "
#elif   (NET_OS_CFG_TMR_TASK_STK_SIZE < 1)
#error  "NET_OS_CFG_TMR_TASK_STK_SIZE    illegally #define'd in 'app_cfg.h'"
#error  "                                [MUST be  > 0]                    "
#endif


#ifndef  NET_OS_CFG_IF_RX_TASK_STK_SIZE
#error  "NET_OS_CFG_IF_RX_TASK_STK_SIZE        not #define'd in 'app_cfg.h'"
#error  "                                [MUST be  > 0]                    "
#elif   (NET_OS_CFG_IF_RX_TASK_STK_SIZE < 1)
#error  "NET_OS_CFG_IF_RX_TASK_STK_SIZE  illegally #define'd in 'app_cfg.h'"
#error  "                                [MUST be  > 0]                    "
#endif


/*$PAGE*/
/*
*********************************************************************************************************
*********************************************************************************************************
*                                          NETWORK FUNCTIONS
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                            NetOS_Init()
*
* Description : (1) Perform network/OS initialization :
*
*                   (a) Implement  network initialization signal by creating a counting semaphore.
*
*                       Initialize network initialization signal with no signal by setting the semaphore 
*                       count to 0 to block the initialization signal semaphore.
*
*                   (b) Implement global network lock by creating a binary semaphore.
*
*                       Initialize network lock as released by setting the semaphore count to 1.
*
*                   (c) Implement  network transmit suspend signal by creating a counting semaphore.
*
*                       Initialize network transmit suspend signal with no signal by setting the semaphore 
*                       count to 0 to block the transmit suspend signal semaphore.
*
*
* Argument(s) : perr        Pointer to variable that will receive the return error code from this function :
*
*                               NET_OS_ERR_NONE                         Network/OS initialization successful.
*
*                               NET_OS_ERR_INIT_SIGNAL                  Network    initialization signal 
*                                                                           NOT successfully initialized.
*                               NET_OS_ERR_INIT_SIGNAL_NAME             Network    initialization signal name
*                                                                           NOT successfully configured.
*
*                               NET_OS_ERR_INIT_LOCK                    Network    lock           signal 
*                                                                           NOT successfully initialized.
*                               NET_OS_ERR_INIT_LOCK_NAME               Network    lock           signal name
*                                                                           NOT successfully configured.
*
*                               NET_OS_ERR_INIT_TX_SUSPEND              Network  transmit suspend signal
*                                                                           NOT successfully initialized.
*                               NET_OS_ERR_INIT_TX_SUSPEND_NAME         Network  transmit suspend signal name
*                                                                           NOT successfully configured.
*                               NET_OS_ERR_INIT_TX_SUSPEND_TIMEOUT      Network  transmit suspend signal timeout
*                                                                           NOT successfully configured.
*
* Return(s)   : none.
*
* Caller(s)   : Net_Init().
*
* Note(s)     : none.
*********************************************************************************************************
*/
/*$PAGE*/
void  NetOS_Init (NET_ERR  *perr)
{
#if (OS_EVENT_NAME_SIZE >= NET_OBJ_NAME_SIZE_MAX)
    INT8U    os_err;
#endif
#if (NET_CFG_LOAD_BAL_EN == DEF_ENABLED)
    NET_ERR  net_err;
#endif


    NetOS_InitSignalPtr = OSSemCreate((INT16U)0);           /* Create network initialization signal (see Note #1a).     */
    if (NetOS_InitSignalPtr == (OS_EVENT *)0) {
       *perr = NET_OS_ERR_INIT_SIGNAL;
        return;
    }

#if (OS_EVENT_NAME_SIZE >= NET_OBJ_NAME_SIZE_MAX)
    OSEventNameSet((OS_EVENT *) NetOS_InitSignalPtr,
                   (INT8U    *) NET_INIT_NAME,
                   (INT8U    *)&os_err);
    if (os_err != OS_NO_ERR) {
       *perr = NET_OS_ERR_INIT_SIGNAL_NAME;
        return;
    }
#endif


    NetOS_LockPtr = OSSemCreate((INT16U)1);                 /* Create network lock (see Note #1b).                      */
    if (NetOS_LockPtr == (OS_EVENT *)0) {
       *perr = NET_OS_ERR_INIT_LOCK;
        return;
    }

#if (OS_EVENT_NAME_SIZE >= NET_OBJ_NAME_SIZE_MAX)
    OSEventNameSet((OS_EVENT *) NetOS_LockPtr,
                   (INT8U    *) NET_LOCK_NAME,
                   (INT8U    *)&os_err);
    if (os_err != OS_NO_ERR) {
       *perr = NET_OS_ERR_INIT_LOCK_NAME;
        return;
    }
#endif


#if (NET_CFG_LOAD_BAL_EN == DEF_ENABLED)
    NetOS_TxSuspendSignalPtr = OSSemCreate((INT16U)0);      /* Create network transmit suspend signal (see Note #1c).   */
    if (NetOS_TxSuspendSignalPtr == (OS_EVENT *)0) {
       *perr = NET_OS_ERR_INIT_TX_SUSPEND;
        return;
    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产综合色产在线精品| 欧美精品tushy高清| 欧美无砖砖区免费| 欧美精品一区二区高清在线观看| 日韩毛片高清在线播放| 精品无码三级在线观看视频 | 国产在线精品视频| 欧日韩精品视频| 国产精品福利影院| 国产真实乱对白精彩久久| 欧美人xxxx| 亚洲少妇屁股交4| 国产成人在线观看免费网站| 91精品国产一区二区三区| 亚洲伦在线观看| 国产99久久久久| 久久久久国产精品麻豆ai换脸| 亚洲国产aⅴ成人精品无吗| 91同城在线观看| 国产精品久久国产精麻豆99网站| 美腿丝袜在线亚洲一区| 欧美日韩大陆一区二区| 亚洲国产精品久久久久秋霞影院 | 男人的天堂久久精品| 欧美在线一二三| 亚洲另类中文字| 成人高清av在线| 中文字幕不卡的av| 成人午夜视频网站| 国产视频一区二区在线| 国产一区二区伦理片| 欧美videofree性高清杂交| 蜜桃视频在线观看一区二区| 欧美狂野另类xxxxoooo| 青青青爽久久午夜综合久久午夜| 8x8x8国产精品| 秋霞av亚洲一区二区三| 精品国偷自产国产一区| 国产一本一道久久香蕉| 中文字幕 久热精品 视频在线| 成人一区二区在线观看| 亚洲欧洲综合另类| 欧美亚洲精品一区| 韩国一区二区在线观看| 欧美精品一区在线观看| 成人性生交大片免费看在线播放| 中文字幕欧美日韩一区| 99精品视频免费在线观看| 一区二区三区影院| 欧美区在线观看| 久久99精品久久久久久久久久久久 | 日韩一级片网址| 国产精品夜夜爽| 亚洲人精品午夜| 欧美久久久久久久久久| 久久99精品视频| 综合色天天鬼久久鬼色| 欧美美女网站色| 国产精品综合在线视频| 一区二区三区日韩| 日韩欧美成人一区二区| 成人免费毛片高清视频| 亚洲成人一区二区在线观看| 精品国产乱码久久久久久浪潮| 本田岬高潮一区二区三区| 亚洲已满18点击进入久久| 日韩三级免费观看| 99久久免费视频.com| 日韩av电影免费观看高清完整版| 久久精品欧美一区二区三区麻豆| 色综合天天综合网国产成人综合天 | 8x8x8国产精品| 成人sese在线| 久久99九九99精品| 亚洲精品中文字幕乱码三区| 精品久久一二三区| 在线观看欧美黄色| 丁香一区二区三区| 日韩 欧美一区二区三区| 国产精品久久久久久久久图文区| 91精品免费观看| 色婷婷一区二区| 国产精品99久| 全部av―极品视觉盛宴亚洲| 亚洲免费观看高清完整版在线| 久久伊人蜜桃av一区二区| 欧美日韩激情在线| 99久久精品费精品国产一区二区 | 午夜视频一区二区| 中文字幕在线不卡| 26uuu久久综合| 欧美老肥妇做.爰bbww| 在线视频亚洲一区| 成人免费的视频| 国产精品一区二区不卡| 日韩精品三区四区| 一区二区三区在线观看视频| 天堂蜜桃一区二区三区| 亚洲四区在线观看| 欧美国产乱子伦 | 丁香激情综合国产| 久久99日本精品| 日日夜夜精品视频天天综合网| 亚洲精品欧美二区三区中文字幕| 国产日韩高清在线| 久久先锋资源网| 精品久久久久久亚洲综合网 | 精品一区二区精品| 琪琪一区二区三区| 日韩国产精品91| 日产欧产美韩系列久久99| 亚洲国产成人91porn| 一区二区三区在线高清| 亚洲精品视频一区二区| 亚洲综合色丁香婷婷六月图片| 亚洲另类在线制服丝袜| 一区二区免费视频| 亚洲一级片在线观看| 亚洲成av人**亚洲成av**| 午夜电影网亚洲视频| 日韩精品一二区| 激情图区综合网| 国产黄色精品网站| 波多野结衣欧美| 色婷婷av久久久久久久| 精品视频一区三区九区| 欧美一级日韩免费不卡| 欧美成人高清电影在线| 久久精品一二三| 中文字幕一区二区三区在线不卡| 亚洲人精品午夜| 午夜日韩在线电影| 国产一区二区毛片| av电影天堂一区二区在线观看| 91黄色在线观看| 欧美不卡激情三级在线观看| 亚洲天堂网中文字| 欧美在线观看视频在线| 亚洲乱码一区二区三区在线观看| 欧美一级久久久| 国产无一区二区| 亚洲国产成人av| 国产一区二区精品久久99| 丰满少妇久久久久久久| 色婷婷精品久久二区二区蜜臂av| 欧美日韩色综合| 国产亚洲欧美激情| 欧美精品在欧美一区二区少妇| 精品成a人在线观看| 亚洲欧洲三级电影| 日韩精品91亚洲二区在线观看| 国产精品自产自拍| 在线亚洲免费视频| 亚洲精品一区二区三区精华液 | 成人深夜福利app| 欧美日韩亚洲另类| 国产色婷婷亚洲99精品小说| 亚洲成人激情自拍| 国产99久久久国产精品| 欧美丰满嫩嫩电影| 国产精品久久久久久久久图文区| 日本不卡123| 91麻豆蜜桃一区二区三区| 精品国产伦一区二区三区观看体验| 亚洲欧美激情在线| 国产伦精品一区二区三区视频青涩 | 日韩精品一区二区三区视频| 综合电影一区二区三区 | 久久久亚洲精华液精华液精华液| 一区二区成人在线视频| 丁香婷婷综合激情五月色| 这里只有精品视频在线观看| 中文字幕佐山爱一区二区免费| 国内成人精品2018免费看| 在线不卡一区二区| 一区二区在线免费| 波多野结衣精品在线| 久久久精品天堂| 韩国理伦片一区二区三区在线播放| 欧美日韩一区二区在线视频| 亚洲人成在线播放网站岛国| 国产xxx精品视频大全| 亚洲精品一区二区三区香蕉| 免费在线观看视频一区| 欧美日韩视频在线观看一区二区三区| 国产精品福利在线播放| 成人开心网精品视频| 久久久久久夜精品精品免费| 麻豆国产欧美日韩综合精品二区| 欧美日韩亚洲国产综合| 亚洲伊人伊色伊影伊综合网| 日本精品视频一区二区三区| ㊣最新国产の精品bt伙计久久| 成人免费高清视频在线观看| 中文av一区特黄| av不卡免费电影| 亚洲人成小说网站色在线| voyeur盗摄精品| 亚洲色图色小说| 色88888久久久久久影院野外 |