|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.11.2011, 19:31 | #1 |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Выделение участка памяти
Всем привет.
Проблема такая. Пишу программу, симулирующую работу примитивной файловой системы. Нужно выделить участок памяти, под "дисковое устройство", разбитое на 10 блоков по 10 байт каждый с последующей возможностью записи/считывания туда/оттуда "файлов" - массивов текстовых переменных. Дело в том, что нужно учитывать и место размещения этих переменных в выделенном участке, как на обычном диске. Есть еще одна проблема. Есть еще битовый массив, с числом бит, равным количеству блоков - так называемая, бит-карта, которая следит за состоянием блоков - занят или свободен. Так вот эту самую бит-карту нужно как-то связать с этой областью памяти. Вот как-то так. Хотелось бы услышать умных мыслей по этому поводу. Спасибо. |
19.11.2011, 11:40 | #2 |
Форумчанин
Регистрация: 05.10.2011
Сообщений: 368
|
а проблема-то собственно в чём?
способов куча : 1. new/delete 2. malloc/mfree 3. HeapAlloc/HeapFree 4. VirtualAlloc/VirtualFree (последние два способа более универсальны). У способов 1-3 не нужны никакие битовые карты, система всё делает за нас
Не стоит будить спящего Бога! (с) Меланхолия Харухи Судзумии
|
19.11.2011, 15:00 | #3 |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Да дело-то именно в том, что нужно использовать бит-карту.
И работать мне нужно именно с адресами, указывать с какого именно места в области выделенной памяти писать/читать символы. Я, наверное, не совсем правильно выразил мысль. Допустим, мы заполнили весь выделенный участок памяти. Дальше - удаляем какой-нибудь набор символов в середине. Теперь нам нужно создать новый "файл" - ввести строку и вписать ее в то место, которое было очищено (просто перестало учитываться бит-картой как занятое). То есть мне нужно бегать по выделенной области, оперируя адресами. Сразу прошу прощения, может я несу ерунду, ибо с адресной арифметикой не очень хорошо знаком. |
24.11.2011, 19:18 | #4 |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Закрывайте, уже не надо.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выделение памяти (new) | ImmortalAlexSan | Общие вопросы C/C++ | 20 | 05.06.2011 23:39 |
Копирование участка памяти | Celestia | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 21.02.2011 09:18 |
Выделение памяти в С++ | Dj-IIyIIc | Общие вопросы C/C++ | 4 | 18.10.2010 14:39 |
Паскаль выделение участка массива | Brian Spilner | Помощь студентам | 6 | 10.05.2010 13:51 |
выделение памяти | Артем1256 | Общие вопросы C/C++ | 1 | 13.11.2009 16:38 |