Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
katish12
0 / 0 / 0
Регистрация: 31.03.2011
Сообщений: 9
1

Aлгоритм управления памятью «Быстрый подходящий» (с 3 списками).

31.03.2011, 21:30. Просмотров 949. Ответов 1
Метки нет (Все метки)

Помогите пожалуйста!!!
нужно написать
код выделения памяти для варианта с тремя списками
код освобождения памяти для варианта с тремя списками
процедурa дефрагментации для варианта с быстрым подходящим
изменить прогу на Delphi
Вся теория что у меня есть:
алгоритм распределения называется «быстрый подходящий», он поддерживает отдельные списки для некоторых из наиболее часто запрашиваемых размеров. Например, могла бы существовать таблица с N записями, в которой пер¬вая запись указывает на начало списка свободных фрагментов размером 4 Кбайт, вторая запись является указателем на список незанятых областей размером 8 Кбайт, третья — 12 Кбайт и т. д. Свободный фрагмент размером, скажем, 21 байт, мог бы располагаться или в списке областей 20 Кбайт или в специальном списке участков дополнительных размеров. При использовании правила «быстрый под-ходящий» поиск фрагмента требуемого размера происходит чрезвычайно быстро. Но этот алгоритм имеет тот же самый недостаток, что и все схемы, которые сортируют свободные области по размеру, а именно: если процесс завершается или выгружается на диск, поиск его соседей с целью узнать, возможно ли их соединение, является дорогой операцией. А если не производить слияния областей, память очень скоро окажется разбитой на огромное число маленьких свободных фрагмен¬тов, в которые не поместится ни один процесс.
0
Вложения
Тип файла: rar версия 1.5.rar (264.2 Кб, 14 просмотров)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2011, 21:30
Ответы с готовыми решениями:

Способы управления памятью
Написать программу, моделирующую динамическое распределение памяти в операционной системе. В...

Разработка подсистемы управления памятью
Нужно разработать подсистему управления памятью с сегментной организацией виртуальной памяти и...

Masm организация управления основной памятью
Со сдачей затянул,сейчас надо срочно сдать. С ассемблером почти не знаком (полный нуб), изучать...

Принципы ручного управления памятью в языке Си
Добрый вечер! Какие существуют стратегии и тактики управления памятью, как Вы ими пользуетесь -...

Динамический массив и функции управления памятью Win32 API
Первая функция получает размерность массива, создает динамический массив и возвращает указатель на...

1
katish12
0 / 0 / 0
Регистрация: 31.03.2011
Сообщений: 9
02.04.2011, 17:23  [ТС] 2
Я правильно понимаю, что должно быть 3 таблицы: свободная память, занятая память и часто используемая???
и меня получается так
//Выгрузка из памяти
if form1.sgQueue.Cells[Pam,1]='10'
then form1.ChastPam.Cells[PROCESS_CH,1]='';
else begin
form1.SvPam.Cells[DLINA,1]=IntToStr(StrToInt(form1.SvPam.Cells[DLINA,1])+StrToInt(form1.ZanPam.Cells[DLINA,1]));
form1.ZanPam.Cells[PROCESS_ZAN,1]='';
form1.ZanPam.Cells[DLINA,1]='0';
end;


///////// Загрузка памяти
//когда процесс перенесли в таблицу выполнения заполняем память
if form1.sgQueue.Cells[Pam,1]='10'
then form1.ChastPam.Cells[PROCESS_CH,1]:=form1.sgQueue.Cells[PROCESS_NAME,1];
else begin
form1.ZanPam.Cells[DLINA,1]=form1.sgQueue.Cells[Pam,1];
form1.ZanPam.Cells[PROCESS_ZAN,1]=form1.sgQueue.Cells[PROCESS_NAME,1];
form1.SvPam.Cells[NACHALO,1]=form1.ZanPam.Cells[DLINA,1];
form1.SvPam.Cells[DLINA,1]=IntToStr(StrToInt(form1.SvPam.Cells[DLINA,1])-StrToInt(form1.ZanPam.Cells[DLINA,1]));
end;

и как провести выделение памяти???
0
Вложения
Тип файла: rar быстрый.rar (227.4 Кб, 13 просмотров)
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.04.2011, 17:23

Си/Си++/Линукс, тесты на тему управления памятью и работе с ос линукс, папками и каталогами
Создал его в гугл формах, там вопросы об управлении памятью и тест по работе с ос Линукс, папками и...

Aлгоритм Кируса-Бекa
Помогите пожайлуста реализовать алгоритм Кируса-Бека на С#

Разница между выделенной памятью и общей памятью графического процессора?
Здравствуйте! Купил и установил себе видеокарту GTX 1060 6Gb. При просмотре её производительности...


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

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

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