SFUSE_Documentation
로딩중...
검색중...
일치하는것 없음
bitmap.h
이 파일의 문서화 페이지로 가기
1// File: include/bitmap.h
2
3#ifndef SFUSE_BITMAP_H
4#define SFUSE_BITMAP_H
5
6#include "super.h"
7#include <stdint.h>
8
12
19
24 uint8_t map[SFUSE_BLOCK_SIZE * 2];
25};
26
34
43int bitmap_load(int fd, uint32_t start_blk, struct sfuse_bitmaps *bmaps,
44 uint32_t count);
45
54int bitmap_sync(int fd, uint32_t start_blk, const struct sfuse_bitmaps *bmaps,
55 uint32_t count);
56
63int alloc_bit(uint8_t *map, uint32_t total_bits);
64
70void free_bit(uint8_t *map, uint32_t idx);
71
78int alloc_inode(struct sfuse_superblock *sb, struct sfuse_inode_bitmap *imap);
79
86void free_inode(struct sfuse_superblock *sb, struct sfuse_inode_bitmap *imap,
87 uint32_t ino);
88
95int alloc_block(struct sfuse_superblock *sb, struct sfuse_block_bitmap *bmap);
96
103void free_block(struct sfuse_superblock *sb, struct sfuse_block_bitmap *bmap,
104 uint32_t blk);
105
106#endif /* SFUSE_BITMAP_H */
int alloc_inode(struct sfuse_superblock *sb, struct sfuse_inode_bitmap *imap)
슈퍼블록 기반으로 아이노드 할당
Definition bitmap.c:95
int bitmap_sync(int fd, uint32_t start_blk, const struct sfuse_bitmaps *bmaps, uint32_t count)
메모리 비트맵을 디스크에 동기화
Definition bitmap.c:40
void free_inode(struct sfuse_superblock *sb, struct sfuse_inode_bitmap *imap, uint32_t ino)
슈퍼블록 기반으로 아이노드 해제
Definition bitmap.c:109
int alloc_block(struct sfuse_superblock *sb, struct sfuse_block_bitmap *bmap)
슈퍼블록 기반으로 데이터 블록 할당
Definition bitmap.c:121
int bitmap_load(int fd, uint32_t start_blk, struct sfuse_bitmaps *bmaps, uint32_t count)
비트맵을 디스크에서 읽어 메모리에 로드
Definition bitmap.c:21
void free_bit(uint8_t *map, uint32_t idx)
비트맵에서 비트를 해제
Definition bitmap.c:83
int alloc_bit(uint8_t *map, uint32_t total_bits)
비트맵에서 비트를 할당
Definition bitmap.c:57
void free_block(struct sfuse_superblock *sb, struct sfuse_block_bitmap *bmap, uint32_t blk)
슈퍼블록 기반으로 데이터 블록 해제
Definition bitmap.c:135
아이노드 비트맵과 블록 비트맵을 함께 담는 구조체
Definition bitmap.h:30
struct sfuse_block_bitmap block
Definition bitmap.h:32
struct sfuse_inode_bitmap inode
Definition bitmap.h:31
데이터 블록 할당 비트맵 (2블록)
Definition bitmap.h:23
uint8_t map[4096 *2]
Definition bitmap.h:24
SFUSE용 비트맵 구조체 (아이노드/블록 할당 상태 추적)
Definition bitmap.h:16
uint8_t map[4096]
Definition bitmap.h:17
슈퍼블록 구조체
Definition super.h:51
#define SFUSE_BLOCK_SIZE
블록 크기 (바이트 단위)
Definition super.h:20