Операционная система Microsoft Windows 3.1 для программиста -том 1


Модели памяти - часть 2


Эта модель памяти во всем аналогична модели Large, но допускает работу с массивами неограниченного размера.

Операционная система Windows версии 3.0 могла быть запущена в реальном режиме работы процессора. В этом случае сегменты данных моделей памяти Compact, Large и Huge оказывались зафиксированными в области реальных адресов. В защищенном режиме работы эта неприятность не наблюдается.

Большинство приложений Windows использует либо модель памяти Small, либо Medium, либо так называемую смешанная модель памяти.

Смешанная модель памяти. Для использования смешанной модели памяти в программах MS-DOS используются такие ключевые слова, как _near или _far. Приложения Windows должны пользоваться словами NEAR или FAR.

В смешанной модели памяти вы можете комбинировать ближние и дальние адреса данных и функций, добиваясь получения оптимальной производительности.

Следует отметить, что, строго говоря, вне зависимости от того, какую модель памяти вы укажете при создании проекта, все равно вам придется пользоваться смешанной моделью памяти. Даже при использовании модели памяти Small ваше приложение будет вызывать функции программного интерфейса Windows. Все эти функции в Windows версии 3.1 описаны с ключевым словом _far и расположены в сегментах, принадлежащих не вашему приложению, а операционной системе. Программа MS-DOS, созданная с использованием модели памяти Small, не может содержать дальних вызовов, так как все вызываемые ей функции расположены в одном сегменте кода, а вызовы MS-DOS выполняются через прерывания. Приложения Windows, напротив, не используют прерывания для вызова операционной системы. Они всегда (при использовании любой модели памяти) вызывают операционную систему с помощью команды дальнего вызова.




Начало  Назад  Вперед



Книжный магазин