mk_mbox.h

来自「samsung 9908DVD源代码,」· C头文件 代码 · 共 52 行

H
52
字号
/**********************************************************************************
 * mk_mbox.h                                                                         
 * coded by hspark@ce.cnu.ac.kr
 * date : 2002/06/23
 **********************************************************************************/

#ifndef __MK_MBOX_H__
#define __MK_MBOX_H__

#include "kernel\\mk_defs.h"
#include "kernel\\mk_task.h"
#include "kernel\\mk_sem.h"

#define	MK_MSG_MAILBOX_MAGIC	0xF3CD03E8L		/* Magic Value of Message Mailbox */

typedef struct mk_msg_mailbox_struct {
	ULONG	mb_Magic;
	ULONG	mb_Msg;								/* Msg Pointer */
	ULONG	mb_StartOfMsg;
	ULONG	mb_MsgLength;
	ULONG	mb_BufferSize;
	char	*mb_pName;
	struct mk_msg_mailbox_struct *mb_pNext;
	struct mk_msg_mailbox_struct *mb_pPrev;
	struct mk_semaphore_struct mb_SendSemaphore;
	struct mk_semaphore_struct mb_ReceiveSemaphore;
} MK_MBOX;

extern struct mk_msg_mailbox_struct *MK_pMsgMailboxListHead;
extern struct mk_msg_mailbox_struct *MK_pMsgMailboxListTail;

/*-----------------------------------------------------------------
 * Internal Function
 *-----------------------------------------------------------------*/
VOID MK_MsgMailBoxInitialze(VOID);
STATUS MK_MessageMailboxInformation(struct mk_ddi_struct *pDDI);

/*-----------------------------------------------------------------
 * API Function
 *-----------------------------------------------------------------*/
STATUS MK_CreateMsgMailBox(MK_MBOX *pMBox, char *pName, void *pAddr, ULONG Size, 
						   BOOLEAN Options);
ULONG MK_GetMsgMailBoxMemorySize(ULONG Size);
STATUS MK_DeleteMsgMailBox(MK_MBOX *pMBox);
STATUS MK_MsgMailBoxReset(MK_MBOX *pMBox);
STATUS MK_MsgMailBoxPend(MK_MBOX *pMBox, void **pMsg, ULONG BufSize, ULONG *pLength, 
						 long Ticks);
STATUS MK_MsgMailBoxPost(MK_MBOX *pMBox, void *pMsg, ULONG Length, long Ticks);
STATUS MK_MsgMailBoxBroadcastPost(MK_MBOX *pMBox, void *pMsg, ULONG Length, long Ticks);

#endif /* __MK_MBOX_H__ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?