1 #pragma once
2 #include <libc/src/sys/types.h>
3 
4 /**
5  * @brief 系统内存信息结构体(单位:字节)
6  *
7  */
8 struct mstat_t
9 {
10     uint64_t total;     // 计算机的总内存数量大小
11     uint64_t used;      // 已使用的内存大小
12     uint64_t free;      // 空闲物理页所占的内存大小
13     uint64_t shared;    // 共享的内存大小
14     uint64_t cache_used;     // 位于slab缓冲区中的已使用的内存大小
15     uint64_t cache_free;     // 位于slab缓冲区中的空闲的内存大小
16     uint64_t available; // 系统总空闲内存大小(包括kmalloc缓冲区)
17 };
18 
19 int mkdir(const char *path, mode_t mode);
20 
21 /**
22  * @brief 获取系统的内存信息
23  *
24  * @param stat 传入的内存信息结构体
25  * @return int 错误码
26  */
27 int mstat(struct mstat_t* stat);
28 int pipe(int *fd);