kernel.h

来自「红外接口串口仿真」· C头文件 代码 · 共 52 行

H
52
字号
#ifndef _LINUX_KERNEL_H
#define _LINUX_KERNEL_H

#include <ntddk.h>
#include <ndis.h>
#include <stdarg.h>
#include <stdio.h>

#include <linux/types.h>

#undef EOF

#define	EIO             5
#define	EAGAIN          11
#define ENOMEM          12
#define	EFAULT          14
#define	EBUSY           16
#define	ENODEV          19
#define	EINVAL          22
#define	EBADR           53
#define	EPROTO          71
#define	EMSGSIZE        90
#define	ENOBUFS         105
#define	EISCONN         106
#define	ENOTCONN        107
#define	EHOSTUNREACH    113

#define GFP_KERNEL      0
#define GFP_ATOMIC      0

#define printk          DbgPrint
#define KERN_WARNING

__inline void* kmalloc(int size, int dummy)
{
    void*   mem;


    if (NdisAllocateMemoryWithTag(&mem, size+sizeof(UINT), 'kmal') != NDIS_STATUS_SUCCESS)
        return NULL;

    *((UINT*)mem) = size+sizeof(UINT);

    return ((UCHAR*)mem) + sizeof(UINT);
}

__inline void kfree(void* mem)
{
    NdisFreeMemory(((UCHAR*)mem)-sizeof(UINT), *((UINT*)(((UCHAR*)mem)-sizeof(UINT))), 0);
}

#endif

⌨️ 快捷键说明

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