Ahojte,
mám za úlohu implementovať funkciu void *memory_alloc(unsigned int size); ktorá má robiť to isté čo štandardná funkcia malloc. Problém je, že netuším ani ako začať. Za každú radu vopred ďakujem.
Fórum › C / C++
Implementácia funkcie malloc
Funkcia memory_alloc má poskytovať služby analogické štandardnému malloc. Teda, vstupné parametre sú veľkosť požadovaného súvislého bloku pamäte a funkcia mu vráti: ukazovateľ na úspešne alokovaný kus voľnej pamäte, ktorý sa vyhradil, alebo NULL, keď nie je možné súvislú pamäť požadovanej veľkosť vyhradiť.
Tu je zadanie. Zabudol som ho pridať.
Ale jde spis o to, v jakem predmetu, co ste se tam ucili?
Mas to delat treba v linuxu? Posouvat pomoci brk konec datoveho segmentu a zabranou pamet pak vracet? Ci mas pouzit malloc pro zabirani velkejch bloku a pak vracet jen casti z toho tvyho allocu? Nebo mas jen udelat wrapper kolem mallocu?
Moznosti je spousta...
mno.. tak asi ten sbrk/brk a vlastni handlovani prazdnyho/obsazenyho mista nejakym polem ukazatelu + obsazene/volne misto ci tak. Pri trose umu i nejake spojovani sousedicich bloku pameti, co se uvolnily nebo tak...
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Implementacia AST — založil vitamin
Implementácia CMS — založil Anonymní uživatel
Implementacia frontu v C — založil detony
Implementacia vlastnych rur v C — založil Jozef
Malloc retazec — založil Carmagedon
Moderátoři diskuze