|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.06.2010, 20:30 | #1 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 16
|
управление свободной памятью ОС в С
Необходимо написать программу выделения и возврата свободной памяти по алгоритму "наиболее подходящему". Выделение памяти я примерно сделала, а вот возврат не могу понять как нужно делать.
Существуют свободные участки(дыры) ( наверное, нужно хранить размер участка и адрес), вводим размер задания и ищем дыру, размер которой меньше всех превосходит размер требуемого задания и помещаем туда это задание. Для облегчения поиска список дыр должен быть отсортирован по возрастанию размеров дыр. Еще как склеивать оставшиеся небольшие участки памяти? Код:
|
03.06.2010, 21:55 | #2 | |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
Цитата:
Вся память изначально представлена в виде L1 или L2 списка с полем size( размер ) Код:
В общем это сложная тема, я сам не доконца в ней разобрался, если хотите могу дать исходник на Си Если это не то что вам нужно, то я извиняюсь Последний раз редактировалось NiCola999; 03.06.2010 в 22:01. |
|
03.06.2010, 23:18 | #3 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 16
|
Да, в списках лучше было бы сделать. Если можно, пришлите исходник, именно на си, а вообще возврат памяти как происходит?
|
03.06.2010, 23:30 | #4 |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
ищется место в списке куда вставлять освобождаемый блок и вставляется туда, затем сливаются все близлежащие с ним свободные блоки
вот вам исходник на си с небольшими комментариями Последний раз редактировалось NiCola999; 03.06.2010 в 23:40. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
управление памятью | galick | Операционные системы общие вопросы | 2 | 28.03.2014 17:05 |
управление памятью | galick | Помощь студентам | 1 | 27.05.2010 13:14 |
Управление памятью | Raz0r | Помощь студентам | 4 | 02.03.2009 18:42 |
Управление памятью | ilham | Операционные системы общие вопросы | 2 | 17.12.2008 18:29 |
динамическое управление памятью | oblom | Общие вопросы C/C++ | 12 | 16.02.2008 15:24 |