[Решено]Getmem предельный размер?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

[Решено]Getmem предельный размер?

Сообщение Maxizar » 18.02.2012 12:01:41

я так понимаю, что в FPC есть два способа дин. выделять память New/Dispose и GetMem/FreeMem

1. New/Dispose - для одиночного выделения, (да еще и при том, что мы заранее описали тип указателя) - не подходит по определению.
2. GetMem/FreeMem - я так понимаю аналоги malloc/free в Си, но при загугливании в некоторых описаниях встречаются таки слова: "предельно можно выделить до 64КБ"
- Как это понимать, может они имели ввиду, что предельно можно выделять по 64Кб блоками, и.т.п потом то все равно будет создана виртуальная таблица, из кусочков?

Задача: выделить динамически память от 1- до 300 МБайт. Может ли такое сделать GetMem, если да, то почему пишут про 64 КБ. (всетаки имеют ввиду чанки в страницах?)

Вопрос 2: GetMem просто выделяет память, без всяких дополнительных счетчиков и размеров, SetLength - выделяет еще место под счетчик и длину? тобишь P := GetMem(Size); И Dec(Р) - другие данные, никаким образом не относящиеся к выделенному участку.

PS. И да память именно виртуальная, я не требую физически непрерывный кусок, типа DMA или проброс через ioremap.
Последний раз редактировалось Maxizar 18.02.2012 14:18:49, всего редактировалось 1 раз.
Maxizar
постоялец
 
Сообщения: 385
Зарегистрирован: 20.03.2010 19:48:14

Re: Getmem предельный размер?

Сообщение alexey38 » 18.02.2012 13:28:56

1. В паскале есть свой менеджер памяти.
2. Ограничения по выделению памяти зависят от ОС.
3. Например, под виндой можно выделить 300 Мб.

Пробуйте, нет ничего сложного и страшного. Ваши вопросы какие-то теоретические. Непонятно что хотите.
alexey38
долгожитель
 
Сообщения: 1627
Зарегистрирован: 27.04.2011 19:42:31

Re: Getmem предельный размер?

Сообщение Maxizar » 18.02.2012 14:18:27

Maxizar
постоялец
 
Сообщения: 385
Зарегистрирован: 20.03.2010 19:48:14


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

Рейтинг@Mail.ru