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

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

?? pipef.c

?? samsung 9908DVD源代碼,
?? C
字號:
/**********************************************************************************
 * pipeF.c
 * coded by hspark@ce.cnu.ac.kr
 * date : 2001/06/23
 * modified by hjahn@ce.cnu.ac.kr
 * date : 2003/03/03
 **********************************************************************************/

#include "kernel\\mk_sys.h"
#include "kernel\\mk_pipeF.h"

#if (defined(_MK_PIPE) && defined(_MK_DDI))

static INT MK_OpenFixedPipeFunction(VOID *pFd);
static INT MK_CloseFixedPipeFunction(VOID *pFd);
static INT MK_ReadFixedPipeFunction(VOID *pFd, VOID *pAddr, INT Length);
static INT MK_WriteFixedPipeFunction(VOID *pFd, VOID *pAddr, INT Length);
static INT MK_IOControlFixedPipeFunction(VOID *pFd, INT Function, INT Arg);

VOID
MK_FixedPipeInitialize(VOID)
{
}

STATUS
MK_CreateFixedPipe(MK_FIXED_PIPE *pPipe, CHAR *pName, VOID *pAddr, INT Count, 
				   UINT Size)
{
	//CHAR pTemp[MK_NAME_MAX + 8];
	STATUS Status;


	if(pPipe->fp_Magic == MK_PIPEF_MAGIC)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_CreateFixedPipe() - Magic error!\n");
#endif
		return MK_ERROR;
	}
	
	//MK_BlockCopy(pTemp, pName, MK_NAME_MAX);
	//MK_Strcat(pTemp, "_F");
	//Status = MK_CreateDDI((MK_DDI *)pPipe, pTemp, MK_OpenFixedPipeFunction, 
	Status = MK_CreateDDI((MK_DDI *)pPipe, MK_NULL, MK_OpenFixedPipeFunction, 
		MK_CloseFixedPipeFunction, MK_ReadFixedPipeFunction, 
		MK_WriteFixedPipeFunction, MK_IOControlFixedPipeFunction);
	if( Status < 0)
	{
#if MK_DEBUG_PRINT
		MK_InfoPrintf(MK_TASK_WARNING, "MK_CreateFixedPipe() - DDI is not created! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return Status;
	}
	Status = MK_CreateFixedMsgQueue(&pPipe->fp_MsgQF, MK_NULL, pAddr, Count, Size, 
		MK_SERVICE_FIFO);
	//Status = MK_CreateFixedMsgQueue(&pPipe->fp_MsgQF, pTemp, pAddr, Count, Size, 
	//	MK_SERVICE_FIFO);
	if( Status < 0)
	{
		MK_DeleteDDI(&pPipe->fp_DDI);

#if MK_DEBUG_PRINT		
		MK_InfoPrintf(MK_TASK_WARNING, "MK_CreatFixedPipe() - FixedMsgQueue is not created! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return Status;
	}

	pPipe->fp_Magic = MK_PIPEF_MAGIC;

	return MK_NO_ERROR;
}

STATUS
MK_DeleteFixedPipe(MK_FIXED_PIPE *pPipe)
{
	if(pPipe->fp_Magic != MK_PIPEF_MAGIC)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_DeleteFixedPipe() - Magic error! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return MK_RESOURCE_ERROR;
	}

	pPipe->fp_Magic = 0;

	MK_DeleteDDI(&pPipe->fp_DDI);
	MK_DeleteFixedMsgQueue(&pPipe->fp_MsgQF);

	return MK_NO_ERROR;
}

BOOLEAN
MK_IsFixedPipeOpened(MK_FIXED_PIPE *pPipe)
{
	if(pPipe->fp_Magic == MK_PIPEF_MAGIC)
		return TRUE;
	return FALSE;
}

static INT
MK_OpenFixedPipeFunction(VOID *pFd)
{
	MK_FIXED_PIPE *pPipe;

	pPipe = (MK_FIXED_PIPE *)pFd;
	pPipe->fp_Magic = MK_PIPEF_MAGIC;
	return MK_Open(&pPipe->fp_DDI);
}

static INT
MK_CloseFixedPipeFunction(VOID *pFd)
{
	MK_FIXED_PIPE *pPipe;

	pPipe = (MK_FIXED_PIPE *)pFd;

	if(pPipe->fp_Magic != MK_PIPEF_MAGIC)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_CloseFixedPipeFunction() - Magic error! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return MK_RESOURCE_ERROR;
	}

	pPipe->fp_Magic = 0;

	return MK_Close(&pPipe->fp_DDI);
}

static INT
MK_ReadFixedPipeFunction(VOID *pFd, VOID *pBuf, INT BufSize)
{
	MK_FIXED_PIPE *pPipe;
	UINT	Length;
	STATUS Status;

	pPipe = (MK_FIXED_PIPE *)pFd;
	if(pPipe->fp_Magic != MK_PIPEF_MAGIC)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_ReadFixedPipeFunction() - Magic error! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return MK_RESOURCE_ERROR;
	}
	Status = MK_FixedMsgQueuePend(&pPipe->fp_MsgQF, pBuf, BufSize, 
		&Length, MK_WAIT_FOREVER);
	if( Status < 0)
	{
#if MK_DEBUG_PRINT
		MK_InfoPrintf(MK_TASK_ERROR, "MK_ReadFixedPipeFunction() - FixedMsgQueuePend is magic error or timeout! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		 return Status;
	}
	return Length;
}

static INT
MK_WriteFixedPipeFunction(VOID *pFd, VOID *pAddr, INT Length)
{
	MK_FIXED_PIPE *pPipe;
	STATUS Status;

	pPipe = (MK_FIXED_PIPE *)pFd;
	if(pPipe->fp_Magic != MK_PIPEF_MAGIC)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_WriteFixedPipeFunction() - Magic error! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return MK_RESOURCE_ERROR;
	}
	Status = MK_FixedMsgQueuePost(&pPipe->fp_MsgQF, pAddr, Length,
		MK_WAIT_FOREVER);
	if( Status < 0)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_WriteFixedPipeFunction() - FixedMsgQueuePost is magic error or timeout! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return Status;
	}
	return Length;
}

static INT
MK_IOControlFixedPipeFunction(VOID *pFd, INT Function, INT Arg)
{
	MK_FIXED_PIPE *pPipe;

	pPipe = (MK_FIXED_PIPE *)pFd;
	if(pPipe->fp_Magic != MK_PIPEF_MAGIC)
	{
#if MK_DEBUG_PRINT
		MK_Panic("MK_IOControlFixedPipeFunction() - Magic error! Task(%s)\n", MK_GetCurrentTask()->t_pName);
#endif
		return MK_RESOURCE_ERROR;
	}

	return MK_NO_ERROR;
}

#endif /* #if (defined(_MK_PIPE) && defined(_MK_DDI)) */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品沙发午睡系列990531| 欧美在线观看视频一区二区三区| 亚洲激情网站免费观看| 欧美成人性福生活免费看| 91麻豆视频网站| 国产成人免费视频| 国产成人免费网站| 成人三级伦理片| 99re这里只有精品视频首页| 不卡欧美aaaaa| 色域天天综合网| 在线精品视频一区二区三四| 成人av网址在线| 97久久人人超碰| 99re成人在线| 欧美日韩国产一二三| 欧美三级视频在线观看| 欧美视频中文字幕| 91精品国产综合久久精品app| 91麻豆精品国产自产在线观看一区| 欧美日本一区二区三区四区| 日韩欧美一卡二卡| 欧美国产精品一区| 亚洲免费观看高清完整版在线观看 | 欧美视频三区在线播放| 欧美日韩国产色站一区二区三区| 欧美一级理论片| 26uuu亚洲婷婷狠狠天堂| 国产精品美女一区二区三区| 一区二区三区免费观看| 免费成人在线视频观看| 国产乱子伦视频一区二区三区| 成人精品在线视频观看| 91麻豆国产香蕉久久精品| 欧美片网站yy| 26uuu亚洲| 亚洲精品国产一区二区精华液| 亚洲福利一区二区| 国产真实乱对白精彩久久| 91网站黄www| 日韩欧美一二区| 国产精品私人影院| 免费欧美高清视频| 国产综合色视频| 欧美午夜不卡在线观看免费| 精品久久久久久综合日本欧美| 亚洲日本一区二区三区| 美女视频黄a大片欧美| 99久久精品国产精品久久| 欧美日韩中文字幕一区二区| 精品国产乱码久久久久久老虎| 亚洲视频一二区| 激情深爱一区二区| 在线一区二区视频| 精品国产乱码久久久久久免费| 国产精品卡一卡二卡三| 国产自产2019最新不卡| 欧美日韩一区二区三区不卡| 国产欧美一区二区精品性色超碰| 天天操天天干天天综合网| 91丨九色丨黑人外教| 日韩精品一区国产麻豆| 亚洲专区一二三| 国产大陆亚洲精品国产| 91麻豆精品国产综合久久久久久| 亚洲日本电影在线| 粉嫩av一区二区三区| 欧美精品在线一区二区三区| 亚洲视频中文字幕| av亚洲精华国产精华| 欧美国产一区视频在线观看| 国产美女娇喘av呻吟久久| 欧美va亚洲va国产综合| 麻豆91精品视频| 日韩精品中文字幕在线不卡尤物| 亚洲成人自拍一区| 欧美日韩情趣电影| 一区二区三区欧美激情| 欧洲视频一区二区| 一区二区三区高清| 色综合中文综合网| 日韩欧美国产综合在线一区二区三区| 亚洲免费av网站| 91麻豆精东视频| 亚洲精品国产第一综合99久久 | 欧美一卡二卡三卡四卡| 日韩电影在线观看电影| 91精品国产综合久久小美女| 日韩中文字幕av电影| 欧美一区在线视频| 蜜臀久久99精品久久久久久9| 色吧成人激情小说| 亚洲妇女屁股眼交7| 7777精品久久久大香线蕉| 日韩av午夜在线观看| 日韩欧美精品在线视频| 国产在线麻豆精品观看| 国产精品久久久久婷婷二区次 | 亚洲欧洲av一区二区三区久久| 色综合久久六月婷婷中文字幕| 亚洲伦理在线免费看| 在线不卡a资源高清| 青青草视频一区| 日本一区二区三区四区| 色吊一区二区三区| 激情亚洲综合在线| 综合中文字幕亚洲| 欧美一区二区三区影视| 成人激情小说网站| 日韩精品1区2区3区| 国产日产欧美一区| 欧美视频精品在线观看| 国产一区免费电影| 亚洲国产人成综合网站| 久久综合九色综合久久久精品综合| 成+人+亚洲+综合天堂| 一区二区三区 在线观看视频| 欧美tickling挠脚心丨vk| 国产综合久久久久久鬼色| 一区二区在线看| 欧美精品一区二区三区很污很色的 | 秋霞影院一区二区| 国产三级欧美三级日产三级99| 欧洲视频一区二区| 风流少妇一区二区| 免费成人av资源网| 亚洲激情av在线| 国产校园另类小说区| 欧美日韩免费视频| 91捆绑美女网站| 国产精品自产自拍| 亚洲一区二区三区爽爽爽爽爽| 久久这里只精品最新地址| 在线观看www91| 成人美女视频在线看| 极品少妇xxxx偷拍精品少妇| 午夜欧美2019年伦理| 亚洲男帅同性gay1069| 国产日产欧美精品一区二区三区| 日韩欧美一级特黄在线播放| 欧美军同video69gay| 在线精品视频免费播放| 99麻豆久久久国产精品免费| 激情五月婷婷综合网| 日韩经典一区二区| 午夜不卡av免费| 亚洲精品ww久久久久久p站| 亚洲国产精华液网站w| 久久久www成人免费毛片麻豆| 在线不卡免费欧美| 欧美亚洲动漫精品| av男人天堂一区| 国产成人av资源| 国产成人免费在线观看不卡| 日本不卡高清视频| 久久精品国产澳门| 麻豆精品视频在线观看视频| 午夜精品久久久久久久久| 亚洲人一二三区| 亚洲人成网站影音先锋播放| 综合久久一区二区三区| 亚洲猫色日本管| 国产精品视频你懂的| 一色桃子久久精品亚洲| 日韩伦理电影网| 亚洲欧美激情插 | av动漫一区二区| 成人黄页在线观看| 91在线观看免费视频| 在线免费不卡电影| 91成人免费在线| 欧美一区二区精品在线| 久久久一区二区三区| 国产精品久久久久毛片软件| 亚洲精品国产无天堂网2021 | 欧美亚洲一区二区在线观看| 欧美影院午夜播放| 日韩精品一区二区三区四区视频 | 亚洲午夜av在线| 性做久久久久久久免费看| 丝袜诱惑亚洲看片| 国模一区二区三区白浆| 9人人澡人人爽人人精品| 精品视频一区二区三区免费| 日韩小视频在线观看专区| 久久电影网站中文字幕| 成人av电影在线观看| 制服丝袜成人动漫| 欧美高清在线一区| 一区二区三区中文字幕| 久久精品国产亚洲高清剧情介绍| 极品美女销魂一区二区三区| 色悠久久久久综合欧美99| 精品乱码亚洲一区二区不卡| 中文字幕免费不卡| 日韩精品一区第一页| 不卡的av网站| 4438x成人网最大色成网站| 国产精品成人免费在线| 国产福利视频一区二区三区|