m_get 内核服务

用途

从 "mbuf池中分配一个内存缓冲区 (mbuf)。

语法

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/mbuf.h>

struct mbuf *m_get ( wait,  type)
int wait;
int type;

参数

表 1. 参数
描述
WAIT 表示在没有空闲的 "mbuf结构时要采取的措施。 可能的值为:
M_DONTWAIT
从中断或进程环境中调用。
M_WAIT
从进程环境调用。
TYPE 指定 " /usr/include/sys/mbuf.h文件中列出的有效 "mbuf类型。

描述

m_get内核服务分配指定类型的 "mbuf结构。 如果缓冲池为空,且等待参数设置为 "M_WAIT,则 "m_get内核服务在 "mbuf结构可用之前不会返回。

执行环境

m_get内核服务可从进程中断环境中调用。

中断处理程序只能指定等待参数为 "M_DONTWAIT

返回值

成功完成后,"m_get服务会返回已分配的 "mbuf结构的地址。 如果等待参数设置为 "M_DONTWAIT,且没有空闲的 "mbuf结构,"m_get内核服务将返回空值。