Атрибуты MOVEABLE или FIXED
Когда сегмент кода имеет атрибут MOVEABLE (перемещаемый), администратор памяти может перемещать сегмент в физической памя- ти, чтобы удовлетворить другие запросы распределения памяти. Ког- да сегмент кода имеет атрибут FIXED (фиксированный), он ни при каких обстоятельствах не перемещается в физической памяти. Пред- почтительным атрибутом является MOVEABLE, и пока не будет абсо- лютно необходимо хранить сегмента в одних и тех же адресах памяти (это имеет место, например, для обработчика прерываний), следует использовать этот атрибут. Когда вам потребуется фиксированный сегмент кода, такой сегмент кода следует сделать по возможности маленьким.
Когда сегмент является перемещаемым (MOVEABLE), Windows, чтобы удовлетворить потребности в распределяемой памяти, может перемещать сегмент в физической памяти. Когда сегмент кода фикси- рованный (FIXED), он не перемещается в физической памяти. Более предпочтителен атрибут MOVEABLE, и если нет абсолютной необходи- мости хранить сегмент кода по одному и тому же адресу в физичес- кой памяти (как бывает в том случае, если он содержит драйвер прерываний), следует использовать атрибут MOVEABLE.