Да, вы можете использовать столько записей GDT, сколько имеет смысл для вашего использования. Но только 6 могут быть активными одновременно, поскольку есть только 6 сегментных регистров: CS SS DS ES FS GS
. Обратите внимание, что один и тот же дескриптор может быть загружен в несколько регистров.
Кроме того, одна и та же область памяти может отображаться несколькими сегментами, но с разными атрибутами. В частности, фактически требуется, чтобы область SS (стека) была для чтения / записи. Если он использует то же адресное пространство, что и DS, и вы хотите, чтобы DS был доступен только для чтения, DS отличается от SS как минимум с точки зрения RW / RO.
Аналогично, для удобства очень часто DS и ES отображаются в одно и то же пространство с использованием инструкций MOVS / CMPS / SCAS / LODS.