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

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

?? tthostlib.c

?? vxworks的完整的源代碼
?? C
字號:
/* ttHostLib.c - Host based stack trace library *//* Copyright 1995 Wind River Systems, Inc. */#include "copyright_wrs.h"/*modification history--------------------01b,13may95,p_m  store the parameters even when their number is unknown.01a,02may95,p_m  written.*//*This module provides the Target side of the Tornado shell stack tracing. It should be use in conjonction with the TCL based tt procedure.  It relieson the VxWorks trcStack routine to provide the stack trace informationand store them at a well known location (ttCallStack) where the hostwill be able to read them.*/#include "vxWorks.h"#include "taskLib.h"#include "string.h"#include "trcLib.h"#include "regs.h"/* defines */#define TT_STACK_DEPTH_MAX	40#define TT_DEFAULT_ARGS		6/* globals */UINT32	ttCallStack [TT_STACK_DEPTH_MAX][13];	/* call stack storage *//*  * Current trace level needed by ttStoreCall. This make this code  * non-reentrant. */UINT32  ttCallLevel;			/* forward declaration */static void ttStoreCall (INSTR * callAdrs, int funcAdrs, int nargs,     			 UINT32 * args);/********************************************************************************* ttHost - print a stack trace of a task** This routine prints a list of the nested routine calls that the specified* task is in.  Each routine call and its parameters are shown.** If <task> is not specified or zero, the last task referenced is* assumed.  The tt() routine can only trace the stack of a task other than* itself.  For instance, when tt() is called from the shell, it cannot trace* the shell's stack.** EXAMPLE* .CS*     -> tt "logTask"*      3ab92 _vxTaskEntry   +10 : _logTask (0, 0, 0, 0, 0, 0, 0, 0, 0, 0)*       ee6e _logTask       +12 : _read (5, 3f8a10, 20)*       d460 _read          +10 : _iosRead (5, 3f8a10, 20)*       e234 _iosRead       +9c : _pipeRead (3fce1c, 3f8a10, 20)*      23978 _pipeRead      +24 : _semTake (3f8b78)*     value = 0 = 0x0* .CE* This indicates that logTask() is currently in semTake() (with* one parameter) and was called by pipeRead() (with three parameters),* which was called by iosRead() (with three parameters), and so on.** INTERNAL* This higher-level symbolic stack trace is built on top of the* lower-level routines provided by trcLib.** CAVEAT* In order to do the trace, some assumptions are made.  In general, the* trace will work for all C language routines and for assembly language* routines that start with a LINK instruction.  Some C compilers require* specific flags to generate the LINK first.  Most VxWorks assembly language* routines include LINK instructions for this reason.  The trace facility* may produce inaccurate results or fail completely if the routine is* written in a language other than C, the routine's entry point is* non-standard, or the task's stack is corrupted.  Also, all parameters are* assumed to be 32-bit quantities, so structures passed as parameters will* be displayed as \f2long\fP integers.** RETURNS:* OK, or ERROR if the task does not exist.** SEE ALSO:* .pG "Debugging"*/STATUS ttHost     (    int task            /* task whose stack is to be traced */    )    {    REG_SET	regSet;    BOOL	resumeIt = FALSE;		/* flag to remember if */    int 	tid;						/* resuming is necessary */    /* clear trace table */    memset ((void *) ttCallStack, 0 , sizeof (ttCallStack));    tid = taskIdDefault (task);			/* set default task id */    /* get caller task's id and make sure it is not the task to be traced */    if (tid == taskIdSelf () || tid == 0)	{	return (ERROR);	}    /* make sure the task exists */    if (taskIdVerify (tid) != OK)	{	return (ERROR);	}    /* if the task is not already suspended, suspend it while we trace it */    if (!taskIsSuspended (tid))	{	resumeIt = TRUE;		/* we want to resume it later */	taskSuspend (tid);		/* suspend the task if need be */	}    /* trace the stack */    ttCallLevel  = 0;    taskRegsGet (tid, &regSet);    trcStack (&regSet, (FUNCPTR) ttStoreCall, tid);    if (resumeIt)	taskResume (tid);		/* resume task if we suspended it */    return (OK);    }/********************************************************************************* ttStoreCall - print a stack frame** This routine is called by trcStack to store each stack level entry * information in the table ttCallStack[] where the host tool will be able* to get them.*/void ttStoreCall     (    INSTR *	callAdrs,       /* address from which function was called */    int 	funcAdrs,       /* address of function called */    int 	nargs,          /* number of arguments in function call */    UINT32 *	args		/* pointer to function args */    )    {    int ix;    /* store call address and name of calling function plus offset */    ttCallStack [ttCallLevel][0] = (UINT32) callAdrs;	    ttCallStack [ttCallLevel][1] = (UINT32) funcAdrs;	    ttCallStack [ttCallLevel][2] = (UINT32) nargs;	    /* set number of arguments to default if unknown */    if (nargs == 0)	nargs = TT_DEFAULT_ARGS;    /* store args */    for (ix = 0; ix < nargs; ix++)	{	ttCallStack [ttCallLevel][ix+3] = args [ix];	}    /* next call will be for next call level */    ttCallLevel++;    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩女优电影在线观看| 综合在线观看色| 欧美日韩中文另类| 欧美中文字幕不卡| 日韩视频一区二区在线观看| 国产亚洲精品bt天堂精选| 国产女主播一区| 亚洲成人7777| 国产91色综合久久免费分享| 日本久久一区二区三区| 欧美电影免费观看高清完整版在线观看 | 国产精品毛片高清在线完整版| 综合电影一区二区三区 | 久久精品人人爽人人爽| 亚洲欧美激情视频在线观看一区二区三区 | 精品国产91亚洲一区二区三区婷婷| 国产日韩欧美麻豆| 亚洲国产日韩在线一区模特| 激情六月婷婷久久| 91国产成人在线| 国产欧美精品一区aⅴ影院| 亚洲一二三四在线观看| 国产高清不卡一区二区| 欧美蜜桃一区二区三区| 欧美高清在线一区二区| 日韩av午夜在线观看| 91美女片黄在线| 欧美极品aⅴ影院| 日韩精品成人一区二区在线| 波多野结衣在线一区| 精品欧美乱码久久久久久 | 日韩精品每日更新| 成人精品视频一区| 久久综合色综合88| 青青草原综合久久大伊人精品 | 日本中文字幕一区二区有限公司| 成人黄色电影在线| 久久久天堂av| 麻豆国产精品一区二区三区 | 亚洲高清视频的网址| 成人视屏免费看| 精品国产自在久精品国产| 婷婷开心激情综合| 欧美性xxxxxx少妇| 亚洲欧美色一区| 色综合色狠狠天天综合色| 国产精品无人区| 成人中文字幕在线| 国产无人区一区二区三区| 黄色精品一二区| 国产亚洲精品bt天堂精选| 韩国av一区二区三区四区| 精品久久国产97色综合| 亚洲一区二区三区美女| 欧美午夜精品一区二区三区| 亚洲欧美日韩国产综合在线| 91麻豆精品一区二区三区| 亚洲日本在线观看| 91看片淫黄大片一级在线观看| 久久久777精品电影网影网| 狠狠色丁香婷综合久久| 欧美mv日韩mv| 国产精品18久久久久久久久久久久 | 91国产免费看| 午夜免费欧美电影| 日韩亚洲欧美在线| 国产一区二区美女| 国产欧美一区二区三区沐欲 | 91精品福利在线| 亚洲自拍偷拍麻豆| 成人福利视频网站| 亚洲综合激情小说| 日韩精品一区二区三区在线播放| 国产一区二区三区久久悠悠色av| 国产亚洲人成网站| 91网站最新网址| 一区二区三区四区不卡在线| 欧美撒尿777hd撒尿| 日韩精品国产欧美| 欧美精品一区二区不卡| 99精品一区二区| **性色生活片久久毛片| 欧美三级日韩在线| 国产一区二区三区电影在线观看| 国产精品毛片无遮挡高清| 欧美在线小视频| 久久99国产精品麻豆| 中文字幕一区二区在线播放| 欧美精三区欧美精三区| 国产成人亚洲综合色影视| 久久无码av三级| 欧美综合色免费| 国产一区二区三区免费看| 一区二区三区色| 精品国产成人在线影院 | 一区二区三区四区视频精品免费| 欧美日韩国产区一| 成人av电影免费在线播放| 五月天中文字幕一区二区| 精品三级av在线| 色伊人久久综合中文字幕| 日日夜夜精品免费视频| 中文字幕一区二区三区视频| 91精品国产欧美一区二区成人 | 日韩综合在线视频| 综合激情成人伊人| 欧美精品一卡两卡| 91亚洲国产成人精品一区二区三 | 91碰在线视频| 精品制服美女丁香| 日本午夜一本久久久综合| 亚洲v中文字幕| 性做久久久久久免费观看欧美| 亚洲激情网站免费观看| 亚洲欧美激情小说另类| 亚洲日本va午夜在线影院| 中文字幕亚洲欧美在线不卡| 欧美国产日本韩| 国产日韩精品一区二区三区在线| 久久九九全国免费| 国产日韩高清在线| 国产精品国产馆在线真实露脸 | 欧美一级专区免费大片| 3atv一区二区三区| 日韩一区二区三区视频| 日韩一卡二卡三卡| 精品免费99久久| 久久久噜噜噜久久中文字幕色伊伊| 久久久久久久国产精品影院| 国产欧美日韩三级| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 国产精品12区| 99久久精品国产一区| 欧美中文字幕一区二区三区| 欧美精品免费视频| 337p日本欧洲亚洲大胆色噜噜| 国产精品无遮挡| 亚洲一区二区三区四区五区黄| 日日骚欧美日韩| 国产**成人网毛片九色 | 国产一区在线观看视频| 成人做爰69片免费看网站| 91免费看视频| 91精品国产综合久久久久久| 国产香蕉久久精品综合网| 亚洲视频在线一区观看| 午夜亚洲福利老司机| 国产一区二区日韩精品| 欧洲生活片亚洲生活在线观看| 欧美一区二区三区免费在线看| 日本一区二区三区电影| 亚洲一区影音先锋| 狠狠网亚洲精品| 在线影院国内精品| 国产亚洲欧美中文| 性做久久久久久免费观看欧美| 国产一区不卡视频| 欧美亚洲一区三区| 国产喂奶挤奶一区二区三区| 亚洲成人av在线电影| 成人激情动漫在线观看| 日韩欧美成人激情| 亚洲柠檬福利资源导航| 国产一区二区在线观看免费| 欧美日韩成人综合天天影院 | 国产欧美一区二区在线| 亚洲电影视频在线| 成人97人人超碰人人99| 精品成人免费观看| 午夜亚洲国产au精品一区二区| 成人天堂资源www在线| 日韩欧美国产综合一区 | 亚洲va在线va天堂| 99久久精品国产毛片| 国产午夜精品理论片a级大结局| 亚洲第一主播视频| 色欧美日韩亚洲| 国产精品免费视频网站| 激情综合色丁香一区二区| 欧美日韩在线观看一区二区| 亚洲人成7777| 成人动漫一区二区在线| 久久久91精品国产一区二区精品| 视频一区中文字幕国产| 欧美午夜精品一区二区蜜桃| 亚洲另类春色国产| 91蜜桃网址入口| 国产精品久久久久影院| 国产精品996| 久久理论电影网| 国产在线观看免费一区| 91 com成人网| 五月婷婷色综合| 51精品国自产在线| 日本不卡一二三| 欧美xingq一区二区| 日韩av一级片| 精品国内片67194| 国产河南妇女毛片精品久久久| 国产日韩欧美精品在线|