|
0 / 0 / 0
Регистрация: 30.10.2012
Сообщений: 6
|
|
Менеджер памяти30.10.2012, 13:40. Показов 5101. Ответов 3
Метки нет (Все метки)
Доброго времени суток. Столкнулся с такой проблемой...
Необходимо написать эмулятор менеджера памяти, т.е. создать какой нибудь динамический массив которой будет нашей оперативкой (32MB), и заполнять / освобождать его. + визуализация в виде 32768 клеточек подкрашенных разными цветами, в зависимости от статуса занятости единицы памяти. Может кто-нибудь описать алгоритм?
0
|
|
| 30.10.2012, 13:40 | |
|
Ответы с готовыми решениями:
3
Выделить в памяти 1024 ячейки по 8 байт и вывести их адреса(МИНИ менеджер памяти)) Менеджер памяти Менеджер памяти |
|
165 / 164 / 23
Регистрация: 23.02.2011
Сообщений: 347
|
|
| 30.10.2012, 13:56 | |
|
Ну можешь попробовать так:
У тебя есть массив. Далее создаешь функции аллокации и освобождения памяти. Первая принимает размер блока, возвращает указатель на позицию в массиве. Вторая принимает позицию и освобождает данный участок. Как ты уже понял, тебе еще нужно в какой-то отдельной структуре хранить информацию о том, какая область занята, а какая свободна. Например список пар(адрес начала, размер). Информацию для визуализации черпать из этой же структуры.
1
|
|
|
0 / 0 / 0
Регистрация: 30.10.2012
Сообщений: 6
|
||||||||
| 30.10.2012, 14:14 [ТС] | ||||||||
|
Предположим, что:
- минимальная единица памяти 1kB - вся оперативная память ровна 32MB (динамический массив из элементов класса Byte, содержащих в себе char) и нужно ли в них организовывать структуру однонаправленного/двунаправенного списка? - сколько и каких классов будет необходимо создать помимо Byte (для чего они будут нужны) И сама ситуация: допустим мы ходим загрузить в память файл размером 1.5MB, что должно будет произойти (какие проверки и действия произойдут) Опять же, это не настоящий менеджер памяти, а только его эмулятор, т.е. он должен только элюстрировать то, что должно происходить в настоящем. Добавлено через 2 минуты Добавлено через 8 минут Если да и он будет иметь структуру двунаправленного списка, то изначально у этих объектов будут адреса прошлого и следущего Byte? или только при загрузке в нашу "оперативную память" файла они будут появляться?
0
|
||||||||
|
165 / 164 / 23
Регистрация: 23.02.2011
Сообщений: 347
|
||
| 30.10.2012, 15:24 | ||
|
начала занятого блока 2 - его длинна, ну или смещение конца, как больше нравится. Никакие классы тут не нужны. Все проще.
1
|
||
| 30.10.2012, 15:24 | |
|
Помогаю со студенческими работами здесь
4
Менеджер сегментированной памяти Как написать менеджер памяти Освобождает ли память процесса менеджер памяти Windows?
Можно ли разместить переменную в нужную ячейку памяти и реально ли хранить данные, разбросанными по памяти? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|