Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

выделение памяти в Си...

Аноним
Посоветуйте кто работал с выделением памяти под Dos.
В книгах по С описывается функция farcalloc, которой мож-
но зарезервировать больше 64К, или всю свободную опера-
тивную память. Но при работе выяснилось, что возникает
другой баръер, где-то после 500К, в самом простом примере.
Помогите пожалуйста, сроки горят При необходимости
могу выслать код.
Аноним
Все правильно так и должно быть. Это же ДОС.
545
19 декабря 2001 года
Посторонний
74 / / 20.05.2000
Цитата:

On 2001-12-13 1847, Anonymous wrote
Посоветуйте кто работал с выделением памяти под Dos.
В книгах по С описывается функция farcalloc, которой мож-
но зарезервировать больше 64К, или всю свободную опера-
тивную память. Но при работе выяснилось, что возникает
другой баръер, где-то после 500К, в самом простом примере.
Помогите пожалуйста, сроки горят При необходимости
могу выслать код.



А чего ты ожидал 640К всего, минус ядро DOS, резиденты и прочее как раз около 500К и получится. Если нужно больше - применяй оверлеи, но одним махом ты себе такой кусок памяти в чистом DOS не откусишь.

Аноним
Наилучший выход - DPMI 16.
Для этого возьми ВС45 и положи на него
PowerPack
После этого возможно создавать приложения
DOS DPMI 16/

Памяти доступно много - наша задача берет до 16 мегов.
Одна особенность - TurboVision нужен
переделаный.
Если нужно - пиши [EMAIL]c2h5oh@beep.ru[/EMAIL]

А еще лучше Console32 приложения.
12K
19 января 2007 года
Шмель
20 / / 20.04.2006
Остаются ли эти ограничения (около 500К), если запускаем досовский компилятор, типа Turbo C 2.0, под WinXP? Нужно кусок выделить около 8М.
Подозреваю, что с оверлеями нужно повозиться. Тогда лучший выход Builder (временные трудности - нужен стандартный файл справки). Какими средствами лучше пользоваться для загрузки больших объемов?
Те же malloc, ..., или есть что-то другое?
391
19 января 2007 года
Archie
562 / / 03.02.2005
Ну что вы заладили с этими оверлеями, несколько килобайт с ними только выиграть можно. Адресация дальше 1Мб доступна только в защищенном режиме (после открытия A20, в V86 не будет работать тоже), вот под ним и програмьте. Многие ДОС-овские компиляторы могут компились с каким-нибудь расширителем (Например, Semantec C компилит с dosx32, Digital Mars с Pharlap-ом или тем же dosx-ом). И памать выделяется при этом как обычно malloc-ом.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог