📄 mk_msgqf.h
字号:
/**********************************************************************************
* mk_msgQF.h
* coded by hspark@ce.cnu.ac.kr
* date : 2002/06/23
**********************************************************************************/
#ifndef __MK_MSGQF_H__
#define __MK_MSGQF_H__
#include "kernel\\mk_defs.h"
#include "kernel\\mk_task.h"
#include "kernel\\mk_sem.h"
#include "kernel\\mk_mem.h"
#define MK_MSGQF_MAGIC 0xF3CD03E4L /* Magic Value of Message Queue */
#define MK_QUEUE_FULL -46
#define MK_QUEUE_EMPTY -45
typedef struct mk_fixed_queue_msg_struct {
ULONG fm_StartOfMsg;
ULONG fm_Length;
struct mk_fixed_queue_msg_struct *fm_pNext;
} MK_FIXED_QUEUE_MSG;
typedef struct mk_fixed_msg_queue_struct {
ULONG fq_Magic;
ULONG fq_AvailableSize;
struct mk_fixed_queue_msg_struct *fq_pMsgListHead;
struct mk_fixed_queue_msg_struct *fq_pMsgListTail;
struct mk_buffer_pool_struct fq_Pool; /* Include SendSemaphore */
struct mk_semaphore_struct fq_ReceiveSemaphore;
} MK_FIXED_QUEUE;
/*-----------------------------------------------------------------
* Internal Function
*-----------------------------------------------------------------*/
void MK_FixedMsgQueueInitialze(void);
ULONG MK_GetFixedMsgQueueAvailableBufferSize(MK_FIXED_QUEUE *pQueue);
INT MK_GetFixedMsgQueueMsgCount(MK_FIXED_QUEUE *pQueue);
STATUS MK_CreateFixedMsgQueue(MK_FIXED_QUEUE *pQueue, char *pName, void *pAddr, int Count,
ULONG Size, BOOLEAN Options);
ULONG MK_GetFixedMsgQueueNeedSize(UINT MsgCount, ULONG Size);
STATUS MK_DeleteFixedMsgQueue(MK_FIXED_QUEUE *pQueue);
STATUS MK_FixedMsgQueuePend(MK_FIXED_QUEUE *pFMsgQueue, void *pMsg, ULONG BufSize,
ULONG *pLength, long Ticks);
STATUS MK_FixedMsgQueuePost(MK_FIXED_QUEUE *pFMsgQueue, void *pMsg, ULONG Length,
long Ticks);
STATUS MK_FixedMsgQueueFrontPost(MK_FIXED_QUEUE *pQueue, void *pMsg, ULONG Length,
long Ticks);
STATUS MK_FixedMsgQueueBroadcastPost(MK_FIXED_QUEUE *pQueue, void *pMsg, ULONG Length,
long Ticks);
STATUS MK_FixedMsgQueueReset(MK_FIXED_QUEUE *pQueue);
#endif /* __MK_MSGQF_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -