Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 01.12.2012
Сообщений: 49
1

Собственная реализация malloc, free

16.11.2014, 21:35. Просмотров 3419. Ответов 5
Метки нет (Все метки)


Нужно написать собственную реализацию malloc, free без использования calloc и всего подобного. Где можно об этом почитать или посмотреть примеры? Пример из книги Кернигана, Ритчи не годится, так как там используется системный вызов sbrk.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.11.2014, 21:35
Ответы с готовыми решениями:

Как free освобождает память, выделенную через malloc?
Как функция free(void*) освобождает память выделенную malloc(). Если в malloc передавая размер...

При использовании malloc и free, приложение прекращает свою работу
Доброго времени суток, коллеги. Столкнулся с такой проблемой. При использовании malloc и free,...

Почему так себя ведёт программа? Функции: malloc(), realloc(), free()
Почему большинство значений в output 0 и несколько из значений не равно 0? /* *...

Нужно, чтобы память под массив выделялась не через: new — delete, а через оператор malloc (calloc) — free
Ребят, есть программа, которая работает, но нужно, чтобы память под массив выделялась не через :...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
5
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
16.11.2014, 22:16 2
Цитата Сообщение от Ramix57 Посмотреть сообщение
так как там используется системный вызов sbrk
Память у системы можно попросить только обращаясь к ОС: либо через sbrk, либо через mmap. Внутри себя malloc/realloc так и делают
0
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,354
16.11.2014, 22:28 3
Цитата Сообщение от Ramix57 Посмотреть сообщение
Пример из книги Кернигана, Ритчи не годится, так как там используется системный вызов sbrk
Почему это не годится?
0
0 / 0 / 0
Регистрация: 01.12.2012
Сообщений: 49
16.11.2014, 22:46  [ТС] 4
castorsky, сказали, что хотели бы видеть более конкретную память, например массив.
0
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
16.11.2014, 22:47 5
Ну тогда заведи массив на миллион байт и выделяй память в нём (т.е. обращение к sbrk заменить на обращение к массиву). Только это будет не "собственная реализация malloc'а", а "имитация malloc'а"
1
Эксперт C
25491 / 15874 / 3398
Регистрация: 24.12.2010
Сообщений: 34,736
16.11.2014, 23:35 6
Цитата Сообщение от Ramix57 Посмотреть сообщение
хотели бы видеть более конкретную память, например массив.
Ну что ж, не простое для начинающего, но весьма полезное упражнение.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2014, 23:35

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

В чем разница между malloc() и (char *)malloc()
Прошу помочь разобраться: не могу понять в чем разница междуs=malloc(sizeof(char)); иs=(char...

Malloc + free + chdir = segmentation fault
Приветствую всех! Есть такой код (можете меня ругать я пока учусь): #include <stdbool.h>...

malloc/free
Делаю устройство. Atmega16. Принимает пакеты по RF. Всего полезных данных передается 512 байт....

malloc, free error
Здравствуйте. Возникла следующая проблема. Код ниже: string http_headers = "GET /index.asd...

Грабли malloc/free
С динамической памятью впервой работаю, от сюда и грабли Есть структура typedef struct {...

Из malloc-free в new delete
Есть код с выделением памяти с помощью malloc, надо сделать с new delete Вроде сделал,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.