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

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

?? smobjshow.c

?? vxworks的完整的源代碼
?? C
字號:
/* smObjShow.c - shared memory objects show routines (VxMP Option) *//* Copyright 1984-2002 Wind River Systems, Inc. *//*modification history--------------------01h,06may02,mas  cache flush and volatile fix (SPR 68334); bridge flush fix		 (SPR 68844)01g,24oct01,mas  doc update (SPR 71149)01f,14feb93,jdi  documentation cleanup for 5.1.01e,29jan93,pme  added little endian support.01d,08dec92,jdi  documentation cleanup.01c,02oct92,pme  added SPARC support. documentation cleanup.01b,29sep92,pme  added anchor local address in smObjShow.01a,19jul92,pme  written.*//*DESCRIPTIONThis library provides routines to show shared memory objectstatistics, such as the current number of shared tasks, semaphores,message queues, etc.CONFIGURATIONThe routines in this library are included by default if the componentINCLUDE_SM_OBJ is included.AVAILABILITYThis module is distributed as a component of the unbundled shared memoryobjects support option, VxMP.INCLUDE FILES: smObjLib.hSEE ALSO: smObjLib,\tb VxWorks Programmer's Guide: Shared Memory Objects*//* includes */#include "vxWorks.h"#include "cacheLib.h"#include "errno.h"#include "intLib.h"#include "logLib.h"#include "qFifoGLib.h"#include "smDllLib.h"#include "smLib.h"#include "smUtilLib.h"#include "smNameLib.h"#include "semLib.h"#include "stdio.h"#include "stdlib.h"#include "string.h"#include "private/smObjLibP.h"#include "private/msgQSmLibP.h"#include "private/semSmLibP.h"#include "private/smMemLibP.h"#include "private/memPartLibP.h"/* smObj Information Structure */typedef struct sm_obj_info      /* SM_OBJ_INFO */    {    int numCpuAttached;         /* number of attached CPU */    int maxSems;                /* maximum number of semaphores */    int maxMsgQueues;           /* maximum number of messages queues */    int maxTasks;		/* maximum number of tasks */    int maxMemParts;            /* max # of shared memory partitions */    int maxNames;               /* max # of name of shared objects */    int curNumSemB;		/* current number of binary semaphores */    int curNumSemC;		/* current number of counting semaphores */    int curNumMsgQ;		/* current number of messages queues */    int curNumTask;		/* current number of tasks */    int curNumPart;             /* current number of shared partitions */    int curNumName;             /* current number of names */    int curMaxLockTries;	/* current number of maximum number of tries */    } SM_OBJ_INFO;/******************************************************************************** smObjShowInit - initialize shared memory objects show routine** This routine links the shared memory objects show routine into the VxWorks* system.  These routines are included automatically by defining* \%INCLUDE_SHOW_ROUTINES in configAll.h.** RETURNS: N/A** NOMANUAL*/void smObjShowInit (void)    {    }/******************************************************************************** smObjShow - display the current status of shared memory objects (VxMP Option)** This routine displays useful information about the current status of* shared memory objects facilities.** WARNING* The information returned by this routine is not static and may be obsolete* by the time it is examined.  This information is generally used for* debugging purposes only.** EXAMPLE:* \cs*     -> smObjShow*     Shared Mem Anchor Local Addr: 0x600.*     Shared Mem Hdr Local Addr:    0xb1514.*     Attached CPU :                5*     Max Tries to Take Lock:       1* *     Shared Object Type    Current    Maximum  Available*     -------------------- ---------- --------- ----------*     Tasks                         1        20         19*     Binary Semaphores             8        30         20*     Counting Semaphores           2        30         20*     Messages Queues               3        10          7*     Memory Partitions             1         4          3*     Names in Database            16       100         84* \ce** AVAILABILITY* This routine is distributed as a component of the unbundled shared memory* objects support option, VxMP.* * RETURNS: OK, or ERROR if no shared memory objects are initialized.** ERRNO:*  S_smObjLib_NOT_INITIALIZED** SEE ALSO: smObjLib*/STATUS smObjShow (void)     {    SM_INFO            smInfo;		/* shared mem info */    SM_FIX_BLK_PART_ID pTcbPartId;	/* pointer to shared tcb partition */    SM_OBJ_MEM_HDR     localSmObjHdr; 	/* local copy of smObj Header */    int		       numTask;		/* number of tasks using smObj */    pTcbPartId = (SM_FIX_BLK_PART_ID) GLOB_TO_LOC_ADRS (smTcbPartId);    /* check if smObj facility is initialized */    if (pSmObjHdr == NULL)	{	errno = S_smObjLib_NOT_INITIALIZED;	return (ERROR);	}    /* get number of attached CPU using smInfoGet */    if (smInfoGet (&smObjDesc.smDesc, &smInfo) != OK)        {	return (ERROR);        }    /* copy the shared memory header all at once to reduce bus traffic */    bcopy ((char *) pSmObjHdr, (char *) &localSmObjHdr, 	   sizeof (SM_OBJ_MEM_HDR));    /*      * Get current number of task using shared memory objects     * by the number of allocated blocks in the shared TCB partition.     */     numTask = ntohl (pTcbPartId->curBlocksAllocated);    /* now print important data */    printf ("\n");    printf ("%-29s: %#-10x\n", "Shared Mem Anchor Local Addr", 	    localToGlobalOffset);    printf ("%-29s: %#-10x\n", "Shared Mem Hdr Local Addr", 	    (unsigned int) pSmObjHdr);    printf ("%-29s: %-10d\n", "Attached CPU", smInfo.attachedCpus);    printf ("%-29s: %-10d\n", "Max Tries to Take Lock", smCurMaxTries);      printf ("\n");    printf ("Shared Object Type     Current   Maximum  Available\n");    printf ("-------------------- ---------- --------- ----------\n");    printf ("Tasks                      %4d      %4d       %4d\n",	    numTask, ntohl (localSmObjHdr.maxTasks), 	    ntohl (localSmObjHdr.maxTasks) - numTask);    printf ("Binary Semaphores          %4d      %4d       %4d\n",	    ntohl (localSmObjHdr.curNumSemB), ntohl (localSmObjHdr.maxSems), 	    ntohl (localSmObjHdr.maxSems) - ntohl (localSmObjHdr.curNumSemB) - 	    ntohl (localSmObjHdr.curNumSemC));    printf ("Counting Semaphores        %4d      %4d       %4d\n",	    ntohl (localSmObjHdr.curNumSemC), ntohl (localSmObjHdr.maxSems), 	    ntohl (localSmObjHdr.maxSems) - ntohl (localSmObjHdr.curNumSemC) - 	    ntohl (localSmObjHdr.curNumSemB));    printf ("Messages Queues            %4d      %4d       %4d\n",	    ntohl (localSmObjHdr.curNumMsgQ), 	    ntohl (localSmObjHdr.maxMsgQueues), 	    ntohl (localSmObjHdr.maxMsgQueues)-ntohl(localSmObjHdr.curNumMsgQ));    printf ("Memory Partitions          %4d      %4d       %4d\n",	    ntohl (localSmObjHdr.curNumPart), ntohl (localSmObjHdr.maxMemParts),	    ntohl (localSmObjHdr.maxMemParts)-ntohl (localSmObjHdr.curNumPart));    printf ("Names in Database          %4d      %4d       %4d\n\n",	    ntohl (localSmObjHdr.curNumName), ntohl (localSmObjHdr.maxNames),	    ntohl (localSmObjHdr.maxNames) - ntohl (localSmObjHdr.curNumName));        return (OK);    }/******************************************************************************** smObjObjShow - generic shared memory objects object show routine** This routine calls the appropriate show routine for each type * of shared memory object.** RETURNS: N/A** NOMANUAL*/void smObjObjShow     (    int smObjId,	/* shared object identifier to use */    int level		/* level of information displayed */    )    {    SM_SEM_ID volatile pseudoSmObjId;	/* hack to get a compatible type */     void *             tmp;    pseudoSmObjId = (SM_SEM_ID volatile) SM_OBJ_ID_TO_ADRS (smObjId);    CACHE_PIPE_FLUSH ();                        /* CACHE FLUSH   [SPR 68334] */    tmp = (void *) pseudoSmObjId->verify;       /* PCI bridge bug [SPR 68844]*/    if (SM_OBJ_VERIFY (pseudoSmObjId) != OK)	{	printf ("Object not found.\n");	return;	}        switch (ntohl (pseudoSmObjId->objType))	{	case SEM_TYPE_SM_BINARY :	case SEM_TYPE_SM_COUNTING :	    {	    (*semSmShowRtn) ((SM_SEM_ID) SM_OBJ_ID_TO_ADRS (smObjId), level);	    break;	    }	case MSG_Q_TYPE_SM :	    {	    (*msgQSmShowRtn) ((SM_MSG_Q_ID) SM_OBJ_ID_TO_ADRS (smObjId),level);	    break;	    }	case MEM_PART_TYPE_SM_STD :	    {	    (*smMemPartShowRtn) ((SM_PART_ID) SM_OBJ_ID_TO_ADRS (smObjId), 				  level);	    break;	    }	default :	    break;	}    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人免费视频网站| 亚洲制服丝袜一区| 国产精品亚洲成人| 久久精品一区二区| 大桥未久av一区二区三区中文| 久久蜜桃av一区二区天堂| 九色porny丨国产精品| 国产欧美一区二区在线| www.在线成人| 亚洲一区二区三区在线播放| 欧美美女一区二区| 美洲天堂一区二卡三卡四卡视频| 精品国产免费人成电影在线观看四季| 狠狠色丁香婷综合久久| 国产视频911| 色综合 综合色| 日韩成人一级大片| 久久久久久久久一| 色欧美片视频在线观看| 琪琪久久久久日韩精品| 欧美激情在线一区二区三区| 色综合一个色综合亚洲| 亚洲成人激情社区| 久久久国产精品午夜一区ai换脸| 91免费观看国产| 日韩黄色在线观看| 国产精品丝袜久久久久久app| 日本精品裸体写真集在线观看| 肉丝袜脚交视频一区二区| 久久久不卡网国产精品一区| 色噜噜狠狠色综合中国| 免费高清在线一区| 亚洲欧美日韩国产综合在线| 91麻豆精品国产91久久久久久| 国产高清不卡一区| 偷拍亚洲欧洲综合| 国产精品久久看| 欧美一区二区三区免费观看视频| 不卡一区中文字幕| 精品一区二区三区视频在线观看 | 欧美色视频一区| 奇米精品一区二区三区四区| 国产精品人妖ts系列视频| 在线电影一区二区三区| 91美女精品福利| 精品在线观看免费| 五月婷婷激情综合网| 中文字幕视频一区| 2023国产精品自拍| 制服视频三区第一页精品| 成a人片亚洲日本久久| 国产一区在线看| 亚洲第一搞黄网站| 亚洲色图欧美偷拍| 国产日韩欧美高清在线| 日韩一区二区三区视频在线观看| 色婷婷久久综合| 丰满白嫩尤物一区二区| 精品一区二区三区在线观看国产| 亚洲va韩国va欧美va精品| 中文字幕在线不卡| 国产欧美视频在线观看| 精品精品国产高清a毛片牛牛 | 国产乱码精品一区二区三区av | 麻豆精品国产91久久久久久| 亚洲精品亚洲人成人网| 中文字幕欧美激情| 国产日韩欧美一区二区三区综合| 欧美一区二区三区视频在线观看| 欧美做爰猛烈大尺度电影无法无天| 成人在线视频一区二区| 国产成人自拍网| 国产精品一区二区视频| 国产精品亚洲一区二区三区妖精| 免费一级欧美片在线观看| 日本亚洲天堂网| 三级一区在线视频先锋 | 日韩视频免费直播| 日韩欧美一区二区免费| 91精品国产入口| 91福利在线播放| 欧美色涩在线第一页| 欧美性大战xxxxx久久久| 91福利在线免费观看| 欧美色图天堂网| 欧美日韩成人激情| 制服丝袜一区二区三区| 欧美一区二区三级| 精品国产网站在线观看| 欧美国产国产综合| 中文字幕日韩av资源站| 亚洲精品免费一二三区| 亚洲国产精品久久不卡毛片| 午夜欧美视频在线观看| 日韩成人免费看| 国内一区二区视频| 91视频在线观看免费| 97久久久精品综合88久久| 欧美午夜精品理论片a级按摩| 欧美日韩精品一区二区三区四区| 欧美久久久久中文字幕| 欧美www视频| 国产日韩成人精品| 樱桃国产成人精品视频| 日本亚洲欧美天堂免费| 国产精品资源站在线| 色94色欧美sute亚洲线路二| 8x8x8国产精品| 久久久另类综合| 亚洲私人黄色宅男| 日本不卡在线视频| 成人午夜视频在线| 欧美精选在线播放| 日本一区二区三级电影在线观看 | 国产伦精品一区二区三区在线观看 | 成人精品在线视频观看| 欧美在线999| 久久一区二区视频| 亚洲午夜电影在线观看| 狠狠色综合日日| 欧美性生活影院| 国产网站一区二区三区| 亚洲mv大片欧洲mv大片精品| 国产成人一级电影| 欧美丰满少妇xxxxx高潮对白| 中文字幕乱码久久午夜不卡| 日日夜夜精品视频免费| 成人国产一区二区三区精品| 欧美日韩在线电影| 久久综合九色综合欧美98| 亚洲一级片在线观看| 懂色一区二区三区免费观看| 欧美日韩精品一二三区| 自拍偷拍国产亚洲| 国产伦精品一区二区三区免费迷 | 日精品一区二区三区| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 亚洲成人av资源| 成人激情综合网站| 欧美成人一区二区三区| 亚洲第一成年网| 99久久综合精品| 国产亚洲制服色| 免费观看成人鲁鲁鲁鲁鲁视频| 色婷婷综合久久| 中文在线一区二区| 另类成人小视频在线| 欧美日韩国产综合一区二区| 中文字幕日韩av资源站| 国产精品资源站在线| 精品国产精品网麻豆系列| 三级久久三级久久| 欧美日韩视频在线观看一区二区三区 | 日韩综合小视频| 欧美亚洲国产一区在线观看网站 | 在线国产电影不卡| 成人欧美一区二区三区| 成人一级片在线观看| 26uuu精品一区二区三区四区在线| 亚洲高清免费视频| 欧美天堂一区二区三区| 一区二区三区不卡视频| 色先锋aa成人| 亚洲激情在线激情| 色94色欧美sute亚洲线路一久| 日韩毛片一二三区| 99re视频精品| 一区二区三区影院| 色呦呦国产精品| 亚洲一级电影视频| 欧美片网站yy| 日本怡春院一区二区| 精品欧美乱码久久久久久| 韩国精品久久久| 国产偷v国产偷v亚洲高清| 成人高清伦理免费影院在线观看| 亚洲国产电影在线观看| av欧美精品.com| 一区二区在线观看视频| 欧美精品色综合| 日韩高清在线电影| 久久综合狠狠综合久久综合88 | 日韩一区在线播放| 色综合中文字幕国产| 亚洲国产日日夜夜| 91精品国产乱| 国内精品久久久久影院一蜜桃| 久久尤物电影视频在线观看| 国产999精品久久久久久绿帽| 亚洲国产精品激情在线观看| 91香蕉视频mp4| 亚洲国产美女搞黄色| 欧美xingq一区二区| jizzjizzjizz欧美| 亚洲韩国一区二区三区| 精品国产乱码久久久久久1区2区| 国产成人精品影院| 一区二区在线观看视频| 精品国产凹凸成av人导航| 成人午夜大片免费观看|