Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В вычислении , ПСЭ-36 ( 36-битный размер страницы Расширение ) [1] относится к признаку x86 процессоров , который расширяет физическую память возможности адресации с 32 бит до 36 бит, что позволяет адресации до 64 Гб памяти. [2] По сравнению с методом расширения физических адресов (PAE), PSE-36 является более простой альтернативой адресации более 4 ГБ памяти. Он использует режим расширения размера страницы (PSE) и измененную таблицу каталогов страниц для отображения страниц размером 4 МБ в физическое адресное пространство размером 64 ГБ. Обратной стороной PSE-36 является то, что, в отличие от PAE, размер страницы размером 4 КБ не превышает отметки 4 ГБ. [3]

PSE-36 был введен в архитектуру x86 вместе с Pentium II Xeon и первоначально рекламировался как часть «Архитектуры расширенной серверной памяти Intel» [2] [4] (иногда сокращенно ESMA [5] ), торговая марка, которая также включала немного более старый PAE (и, таким образом, Pentium Pro , который поддерживал только PAE, был объявлен как имеющий только «поддержку подмножества» для ESMA). [1]

Расцвет PSE-36 был относительно недолгим. Основным преимуществом PSE-36 было то, что, в отличие от PAE, он не требовал незначительной доработки внутренних компонентов операционной системы, и, таким образом, PSE-36 оказался подходящей временной мерой [6] в период времени Windows NT 4.0 Enterprise Edition. Новые операционные системы Microsoft, включая Windows 2000 , поддерживают только PAE. [7] Некоторые операционные системы, такие как Linux, полностью пропускают PSE-36. [8] Несмотря на это, AMD и более поздняя Intel решили предоставить поддержку PSE до 40 бит в своих 64-битных процессорах при работе в устаревшем режиме .

Операция [ править ]

Обнаружение [ править ]

Поддержка PSE-36 обозначается битом 17 EDX (считая от 0) в результате cpuid для битов функции . (Этот бит отличается от поддержки простого PSE, который обозначается битом 3 в том же регистре). [9] [10]

Активация и использование [ править ]

Что касается активации PSE-36, нет, однако, отдельного бита от того, который включает PSE. [10] Пока процессор (как указано cpuid) и набор микросхем поддерживают PSE-36, включение только PSE (путем установки бита 4, PSE , системного регистра CR4) позволяет использовать большие страницы размером 4 МБ (в диапазоне 64 ГБ). ) вместе с обычными страницами размером 4 КБ (которые, однако, ограничены диапазоном 4 ГБ). [10]

Если на ЦП доступна более новая возможность PSE-36 , что проверено с помощью инструкции CPUID , то внутри записи каталога страниц, указывающей на большую страницу, используются еще 4 бита в дополнение к 10 битам, используемым в PSE. Это позволяет разместить большую страницу в 36-битном адресном пространстве. [10]

Бит PS (бит 7) в записи каталога страниц (PDE) указывает, относится ли эта запись к таблице страниц (которая описывает страницы размером 1024 4 КиБ) или к одной странице размером 4 МБ. Структуры PDE в нормальном режиме, режиме PSE и режиме PSE-36 следующие:

  1. Таблица атрибутов страницы ; начиная с Pentium III , для старых процессоров должен быть равен нулю.
  2. Бит «грязный»: устанавливается ЦП в 1, если на эту страницу был доступ для записи. Для страниц размером 4 КиБ этот флаг существует в соответствующей записи таблицы страниц (PTE).

Расширение до 40 бит [ править ]

AMD расширяет эту схему до 40 бит адреса, интерпретируя биты 20..13 PDE как биты 39..32 базового адреса страницы в своих процессорах AMD64 при работе в устаревшем режиме , поэтому только бит 21 зарезервирован (должен быть равен нулю) . Однако обратите внимание, что CR4.PSE игнорируется в длинном режиме, и страницы размером 4 МБ в стиле PSE недоступны в этом режиме. [11] Таким образом, общий объем физической памяти, доступной для адресации в устаревшем режиме AMD64 с использованием страниц PSE размером 4 МБ, составляет 1024 ГБ. [6] Том Шенли назвал это расширение PSE-40, [6] хотя такого обозначения нет в официальной документации AMD. [11]

Последние руководства Intel (февраль 2014 г.) также указывают на поддержку до 40 бит в PSE. Однако точное количество битов PSE, поддерживаемых процессорами Intel, может быть меньше и должно определяться с помощью CPUID для запроса максимальной ширины физического адреса, поддерживаемой процессором, путем вызова CPUID с функцией 80000008H и проверки результата в EAX [7: 0 ]. [12]

Использование [ править ]

Практическая полезность функции PSE-36 зависит от поддержки набором микросхем более 4 ГБ ОЗУ. Большинство наборов микросхем Pentium II не поддерживали такой объем памяти, при этом 1 ГБ является максимальным объемом для типичного набора микросхем Intel 440BX для настольных ПК и 2 ГБ для набора микросхем для рабочих станций 440GX. Только высокопроизводительный серверный набор микросхем Intel 450NX поддерживает 8 ГБ. [2] [13] Таким образом, для серверов обычно объявлялась поддержка PSE-36 (ESMA). [4]

Пригодными операционной системы , поддерживающей PSE36, в 1998 году Intel рекламировали Microsoft Windows NT Server, Enterprise Edition 4.0 и якобы предстоящая NT 5.0, и позволяет использовать через PSE36 драйвер устройства , [1] , который сохранил большую часть операционной системы , не знают о ЧОП -36 (только драйвер PSE36 временно включил его), и какой драйвер должен был вызываться приложениями, которые хотели получить доступ к более чем 4 ГБ. [6] Таким образом, Windows NT 4.0 Enterprise Edition использовала функцию PSE-36 в основном как RAM-диск . [3] Драйвер PSE36 использовался некоторыми приложениями на серверах Windows NT 4.0 Enterprise Edition, например SAP liveCache, [14] Microsoft SQL Server 7.0, [7] Oracle 8.1.5, [15] и IBM DB2 . [16] В документации по настройке для последнего, однако, отмечалось, что «К сожалению, в большинстве случаев прирост производительности, полученный с использованием драйвера PSE-36, не впечатляет. Во многих случаях сервер будет работать медленнее с 8 ГБ с использованием драйвера PSE-36, чем он работает с 4 ГБ без драйвера. [...] После более чем года экспериментов и настройки Microsoft и IBM отказались от поддержки PSE-36 из-за недостаточного прироста производительности. Драйвер все еще доступен для поставщиков от Intel, но он есть бесполезно для использования конечным потребителем ". [16]

Windows 2000 (NT 5.0) перестала поддерживать PSE-36 [7] из-за низкой производительности по сравнению с альтернативным PAE. [3] Windows 2000 также заменила API драйвера PSE36 новым API под названием Address Windowing Extensions (AWE), который использовал PAE ниже. [7] [15] (AWE был доступен только в Datacenter Server и Advanced Server в Windows 2000.) Приложения Windows впоследствии перешли на этот новый API, например, начиная с Oracle 8.1.6 [15] или MS SQL Server 2000. [7 ]

PSE-36 никогда не использовался в Linux . [8]

По сравнению с PAE [ править ]

Расширение физического адреса (PAE) - это альтернатива PSE-36, которая также допускает 36-битную адресацию. PSE-36 имеет преимущества, состоящие в том, что иерархия таблиц страниц не изменяется, а записи страниц сохраняют свой старый 32-битный формат и не расширяются до 64 бит. Очевидным недостатком PSE-36 является то, что только большие страницы могут быть расположены в 64 ГБ физической памяти, а маленькие страницы могут быть расположены только в первых 4 ГБ физической памяти. [3]

Архитектура расширенной серверной памяти Intel [ править ]

Архитектура расширенной серверной памяти Intel включает два 36-битных режима адресации в основном процессоре: PAE-36 и PSE-36. [1]

См. Также [ править ]

  • Ограничение RAM
  • Барьер 3 ГБ
  • Отверстие PCI

Ссылки [ править ]

  1. ^ a b c d «Расширенная архитектура серверной памяти Intel» (PDF) . Номер заказа Intel: 243846-001. 1998 . Проверено 1 марта 2014 . CS1 maint: обескураженный параметр ( ссылка )
  2. ^ a b c «Настройка производительности Netinfinity в Windows NT 4.0» (PDF) . Redbooks.ibm.com. С. 51–52 . Проверено 1 марта 2014 . CS1 maint: обескураженный параметр ( ссылка )
  3. ^ a b c d «Операционные системы и поддержка PAE» . Msdn.microsoft.com. 2006-07-14 . Проверено 1 марта 2014 . CS1 maint: обескураженный параметр ( ссылка )
  4. ^ a b Дени Коннор (7 декабря 1998 г.). А вот и восьмипроцессорные серверы Xeon . Сетевой мир. п. 19. ISSN 0887-7661 . 
  5. ^ Майкл Миссбах; Уве М. Хоффманн (2000). Аппаратные решения SAP . Prentice Hall Professional. п. 62. ISBN 978-0-13-028084-8.
  6. ^ а б в г Том Шенли (2009). Архитектура набора команд x86 . MindShare Press. С. 578–579. ISBN 9780977087853.
  7. ^ a b c d e Sajal Dam (2004). Оптимизация настройки производительности запросов SQL Server . Апресс. п. 28. ISBN 978-1-4302-0407-7.
  8. ^ a b Даниэль П. Бове; Марко Чезати (17 ноября 2005 г.). Понимание ядра Linux . "O'Reilly Media, Inc.". п. 52. ISBN 978-0-596-55491-0.
  9. ^ Идентификация процессора Intel и инструкция CPUID Архивировано 24 июля 2013 г. в Wikiwix, примечание по применению Intel AP-485
  10. ^ а б в г Том Шенли (2005). Полный Pentium 4: генеалогия процессоров IA32 . Эддисон Уэсли Профессионал. С. 732–736. ISBN 978-0-321-24656-1.
  11. ^ a b AMD Corporation (сентябрь 2012 г.). «Том 2: Системное программирование» (PDF) . Руководство программиста по архитектуре AMD64 (изд. 3.22). Корпорация AMD. С. 25–26 и 125–126 . Проверено 17 февраля 2014 . CS1 maint: обескураженный параметр ( ссылка )
  12. ^ «Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32, том 3A: Руководство по системному программированию, часть 1» (PDF) . Intel . п. «4-5» и «4-11». Если механизм PSE-36 не поддерживается, M равно 32, и эта строка не применяется. Если поддерживается механизм PSE-36, M - минимум 40 и MAXPHYADDR (эта строка не применяется, если MAXPHYADDR = 32). См. Раздел 4.1.4, чтобы узнать, как определить MAXPHYADDR и поддерживается ли механизм PSE-36. [...] CPUID.80000008H: EAX [7: 0] сообщает ширину физического адреса, поддерживаемую процессором. (Для процессоров, которые не поддерживают функцию CPUID 80000008H, ширина обычно равна 36, если CPUID.01H: EDX.PAE [бит 6] = 1, и 32 в противном случае.) Эта ширина называется MAXPHYADDR. MAXPHYADDR - не более 52.
  13. ^ Процессор Intel Pentium II Xeon. Новые чипсеты для Pentium II Xeon
  14. ^ «Как liveCache <7.4 использует PSE36 / AWE» . Stechno.net. 2003-04-04 . Проверено 1 марта 2014 . CS1 maint: обескураженный параметр ( ссылка )
  15. ^ a b c Майкл Р. Олт (17 февраля 2003 г.). «Увеличение доступной памяти в Linux и Windows» (PDF) . Официальный документ ROBO Books. С. 10–12 . Проверено 1 марта 2014 . CS1 maint: обескураженный параметр ( ссылка )
  16. ^ a b Настройка серверов IBM xSeries для повышения производительности (PDF) (3-е изд.). IBM SG24-5287-02. Июнь 2002. с. 97. Архивировано из оригинального (PDF) 03.03.2014. CS1 maint: обескураженный параметр ( ссылка )