embox

Форк
0
/
fat_common_mem.c 
42 строки · 969.0 Байт
1
/**
2
 * @file
3
 *
4
 * @date Oct 27, 2019
5
 * @author Anton Bondarev
6
 */
7
#include <mem/misc/pool.h>
8

9
#include "fat.h"
10

11
#include <framework/mod/options.h>
12

13
#define FAT_DESC_QUANTITY    OPTION_GET(NUMBER, fat_descriptor_quantity)
14
#define FAT_INODE_QAUNTITY   OPTION_GET(NUMBER, inode_quantity)
15

16
POOL_DEF(fat_fs_pool, struct fat_fs_info, FAT_DESC_QUANTITY);
17
POOL_DEF(fat_file_pool, struct fat_file_info, FAT_INODE_QAUNTITY);
18
POOL_DEF(fat_dirinfo_pool, struct dirinfo, FAT_INODE_QAUNTITY);
19

20
struct fat_fs_info *fat_fs_alloc(void) {
21
	return pool_alloc(&fat_fs_pool);
22
}
23

24
void fat_fs_free(struct fat_fs_info *fsi) {
25
	pool_free(&fat_fs_pool, fsi);
26
}
27

28
struct fat_file_info *fat_file_alloc(void) {
29
	return pool_alloc(&fat_file_pool);
30
}
31

32
void fat_file_free(struct fat_file_info *fi) {
33
	pool_free(&fat_file_pool, fi);
34
}
35

36
struct dirinfo *fat_dirinfo_alloc(void) {
37
	return pool_alloc(&fat_dirinfo_pool);
38
}
39

40
void fat_dirinfo_free(struct dirinfo *di) {
41
	pool_free(&fat_dirinfo_pool, di);
42
}
43

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.