/* date type defination */ typedef signed char rt_int8_t; typedef signed short rt_int16_t; typedef signed long rt_int32_t; typedef unsigned char rt_uint8_t; typedef unsigned short rt_uint16_t; typedef unsigned long rt_uint32_t; typedef int rt_bool_t; /* 32bit CPU */ typedef long rt_base_t; typedef unsigned long rt_ubase_t; struct rt_filesystem_interface { /* file api*/ int(*open)(const char *file, int flags, int mode); int(*close)(int d); }; #define DFS_PATH_MAX 255 /* file descriptor */ #define RT_NULL ((void *)0) struct rt_list_node { struct rt_list_node *next; /* point to next node. */ struct rt_list_node *prev; /* point to prev node. */ }; typedef struct rt_list_node rt_list_t; /* Type for lists.*/ /** * @addtogroup KernelObject */ /*@{*/ /* * Base structure of Kernel object */ /* RT_NAME_MAX*/ #define RT_NAME_MAX 20 struct rt_object { /* name of kernel object */ char name[RT_NAME_MAX]; /* type of kernel object */ rt_uint8_t type; /* flag of kernel object */ rt_uint8_t flag; /* list pointer of kernel object */ rt_list_t list; }; typedef struct rt_object* rt_object_t;
内核对象
rt_object 32字节
双链表-->