masterclass le dementor

This commit is contained in:
Gu://em_ 2025-12-19 19:02:50 +01:00
parent 4f8a0bb720
commit a09cf2de17

View file

@ -41,8 +41,10 @@ int find_free_block(struct bucket *buck)
return -1;
}
size_t num_blocks_in_page = (PAGE_SIZE - sizeof(struct bucket)) / buck->block_size;
size_t maplength = (num_blocks_in_page + 7) / 8; // +7 for ceiling division (oui c'est moche mais ça marche)
size_t num_blocks_in_page =
(PAGE_SIZE - sizeof(struct bucket)) / buck->block_size;
size_t maplength = (num_blocks_in_page + 7)
/ 8; // +7 for ceiling division (oui c'est moche mais ça marche)
// Foreach byte
for (unsigned i = 0; i < maplength; i++)
@ -53,7 +55,8 @@ int find_free_block(struct bucket *buck)
for (unsigned j = 0; j < 8; j++)
{
if ((i * 8 + j) < num_blocks_in_page && !(map_byte & (1 << j))) // Check if free
if ((i * 8 + j) < num_blocks_in_page
&& !(map_byte & (1 << j))) // Check if free
return i * 8 + j;
}
}
@ -78,7 +81,8 @@ int get_block_number(struct bucket *biquette, void *block)
return -1;
char *block_nul = block;
char* bibiche = get_data_begin(biquette); // Célèbre bar Capcinois, venez à l'occasion
char *bibiche =
get_data_begin(biquette); // Célèbre bar Capcinois, venez à l'occasion
return (block_nul - bibiche) / biquette->block_size;
@ -91,7 +95,6 @@ int get_block_number(struct bucket *biquette, void *block)
// return (block_nul - biquette_cherie - sizeof(struct bucket))
// / biquette->block_size;
}
// Gets a bucket with at least a block_size of size
@ -112,8 +115,8 @@ struct bucket *get_bucket(struct bucket *head, size_t size)
// Computes the buckets first block address
void *get_data_begin(struct bucket *biquette)
{
void* maisqueltrucdemerde = biquette;
char* biquettas = maisqueltrucdemerde;
void *maisqueltrucdemerde = biquette;
char *biquettas = maisqueltrucdemerde;
return biquettas + sizeof(struct bucket);
}