реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Управление памятью, malloc, free..., как реализовано управление памятью
l_fin_l
сообщение Oct 20 2014, 04:28
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 23-08-11
Пользователь №: 66 836



Здравствуйте, посоветуйте пожалуйста литературу по темам: менеджер памяти; как реализованы/устроены функции malloc, free. Желательно, чтобы было написано понятным языком... Заранее спасибо.
Go to the top of the page
 
+Quote Post
megajohn
сообщение Oct 20 2014, 05:20
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143



если самое простое, то это пулы памяти - все куски одного размера.
Так реализовано в Tn-Kernel. По сути - N-флажков на N-кусков.

не плохо бы добавлять также в дескриптор каждого куска:
1. запрошенный размер
2. в конце писать magic-word для теста что не переполнили ( по крайней мере так реализовано в MSVC )
3. что за задача заняла указанный блок
4. magic-word в начале дескриптора

пункты 2 и 4 помогают отлавливать переползания за пределы, за счет установкой бряка на изменение переменной

Add: в аттаче исходники на Tn-Kernel и FreeRtos
как работает в линуксе
Прикрепленные файлы
Прикрепленный файл  mem.rar ( 15.59 килобайт ) Кол-во скачиваний: 15
 


--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Oct 20 2014, 06:09
Сообщение #3


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(l_fin_l @ Oct 20 2014, 07:28) *
Здравствуйте, посоветуйте пожалуйста литературу по темам: менеджер памяти; как реализованы/устроены функции malloc, free. Желательно, чтобы было написано понятным языком... Заранее спасибо.


Есть куча способов реализации malloc.
Вот книга где показано как реализовать минимум 5-ть способов
[attachment=87641:Memory_M...____2003.zip]

И это еще простые способы.
А есть и более изощренные, типа TLSF
Go to the top of the page
 
+Quote Post
l_fin_l
сообщение Oct 21 2014, 03:20
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 23-08-11
Пользователь №: 66 836



Спасибо большое за материалы, буду изучать, вот тоже нашел кое-чего, если вдруг кому понадобится - Прикрепленный файл  memory_allocation.pdf ( 613.68 килобайт ) Кол-во скачиваний: 261
(Отрывок из книги "Самоучитель по теории операционных систем")
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th August 2025 - 09:27
Рейтинг@Mail.ru


Страница сгенерированна за 0.0359 секунд с 7
ELECTRONIX ©2004-2016