Вступление
Пять с половиной лет назад AMD выпустила линейку процессоров Athlon 64, расхваливая преимущества 64-битных вычислений и их значение для будущего. Intel не потребовалось много времени, чтобы последовать их примеру на настольных ПК. Оттуда инфраструктура — операционные системы и драйверы — начала формироваться для поддержки большего количества 64-разрядного программного обеспечения.
Сегодня 64-битная совместимость почти данность. Фактически, в сфере бизнеса, где 64-разрядные вычисления всегда считались наиболее многообещающими, появились приложения, которые будут работать только в 64-разрядном режиме. Даже Small Business Server 2008, операционная среда относительно начального уровня для предприятий с числом пользователей до 75, теперь является только 64-разрядной благодаря включению в нее Exchange Server 2007.
Почему Microsoft приняла решение запустить свою последнюю платформу обмена сообщениями исключительно в 64-разрядной версии? Согласно сообщению в блоге Криса Митчелла из Microsoft Exchange Performance Engineering Team, приложение использует 64-разрядную адресацию, чтобы получить больше системной памяти, предотвращая повторные обращения к диску и обратно. В примере Криса более старая версия Exchange может иметь доступ к 900 МБ из предельных 4 ГБ 32-разрядного сервера. На предприятии с 4000 пользователей это 225 КБ ОЗУ на каждого пользователя — недостаточно для всех сообщений, правил, записей календаря и контактов в обычном почтовом ящике. Переход на 64-разрядную версию и модернизация серверов до 10 гигабайт (рекомендация Криса для той же компании с 4000 пользователей — 24 ГБ) снижает нагрузку на хранилище.
Но настольные компьютеры не так требовательны к памяти, верно? Мы ожидали, что 64-разрядные вычисления постепенно перейдут на предприятия, но геймеры хотят знать: в чем польза от этой технологии сегодня?
Переход на 64-разрядную версию: потому что вы можете…
Энтузиасты, использующие платформы Socket AM2/AM2+, обычно используют комплекты памяти на 2 ГБ или 4 ГБ. В конце концов, несмотря на то, что память DDR2 дешева, 4 ГБ по-прежнему являются нормой для энтузиастов, а 8 ГБ ближе к классу рабочих станций.
Но когда вы покупаете машину на базе Core i7 и переходите на трехканальную систему, просто не имеет смысла отступать в другом направлении и устанавливать три модуля по 1 ГБ. Итак, теперь вы смотрите на 6 ГБ и вынужденный переход на 64-разрядные вычисления, если вы действительно хотите использовать всю эту память.
…Или потому что вы должны
Ах да, чуть не забыл. В случае, если вы живете под камнем с тех пор, как AMD начала проповедовать свое 64-битное сообщение, фундаментальный предел того, сколько оперативной памяти может видеть 32-битная операционная система, составляет 4 ГБ (2 ^ 32). Все, что больше, просто не будет отображаться как установленная память.
Как только вы учитываете адресацию устройства, магическое число фактически падает ниже 4 ГБ. Вот почему 32-разрядные системы с 4 ГБ обычно сообщают о 3 ГБ плюс изменение в диспетчере устройств Windows. Однако это не проблема Windows. Скорее, именно так работает архитектура x86.
Обновление: Небольшое уточнение по вышеуказанному пункту: проблема отсутствия полных 4 ГБ памяти в потребительских операционных системах Microsoft разделяется между поставщиками оборудования и программного обеспечения. Неспособность 32-разрядной ОС Windows, такой как XP или Vista, использовать полные 4 ГБ, связана с проблемами совместимости со старыми наборами микросхем, как указано в этом документе от HP, что предотвращает сопоставление устройств с высоким уровнем. Спасибо читателю nater за его обратную связь по этому вопросу.
Разумеется, были введены обходные пути для восстановления этой потерянной памяти. Расширения физических адресов Intel позволили использовать 36-битные таблицы физических адресов, которые действительно помогли в серверных средах, увеличив максимальный размер памяти до 64 ГБ. Однако, согласно презентации, сделанной Чаком Уолборном, старшим инженером-разработчиком программного обеспечения Microsoft XNA Developer Connection на Gamefest 2008, PAE никогда не работала так, как должна, в настольных операционных системах, которые должны были бы отображать виртуальное адресное пространство 4 ГБ. в большее физическое пространство. По его словам, главной проблемой были водители. У них были проблемы с совместимостью приложений, предполагая, что у них всегда было 32 бита для работы, а не 36.
В дополнение к 32-битным физическим адресным строкам вы также ограничены 32-битным виртуальным адресным пространством. Поскольку один бит зарезервирован для общей памяти ядра (используемой всеми процессами и операционной системой), отдельные приложения имеют доступ максимум к 2 ГБ частного адресного пространства. Внезапно вы сталкиваетесь с ограничениями, которые могут оказать более сильное влияние на настольный компьютер. Может ли сегодняшний 64-битный рывок существенно изменить ваш игровой опыт? Это то, что мы решили исследовать.