Читаем Журнал «Компьютерра» №41 от 08 ноября 2005 года полностью

Впрочем, перенумерацией дело не ограничивается, поскольку вместе с номерами указываются всяческие атрибуты - «только для чтения», «только для операционной системы» и пр. Вдобавок для некоторых ячеек можно указать, что они в оперативную память «пока не загружены». Встретив такую пометку, CPU генерирует специальную системную ошибку (Page Fault) и обращается за помощью к операционной системе, которая может, к примеру, загрузить данные для этой ячейки с жесткого диска (техника своппинга). Поэтому всегда следует помнить, что «ограничение 4 Гбайт» в первую очередь относится не к физической, а к виртуальной оперативной памяти, доступной процессу. А вот что стоит за этими четырьмя гигабайтами адресного пространства - скромные ли 128 Мбайт памяти SDRAM или кусочек от пары терабайтов дискового массива - неважно: собственно процессор этот «реальный мир» почти ничем не ограничивает.

Но все же - что дает разрядность? Если процессор поддерживает длинные физические адреса (в архитектуре x86 соответствующий режим называется Physical Address Extension, PAE[Если подробнее, то в PAE используется 52-битная адресация, позволяющая адресовать до четырех петабайт данных]), то мы можем поставить на сервер хоть 64 Гбайт оперативной памяти и выделять ее разным приложениям. Условия вроде «не более двух гигов для чипсета такого-то» - это ограничения именно чипсета, не умеющего обслуживать большой объем памяти, а не 32-разрядной системы. Поэтому в серверных приложениях, когда на одном сервере, как правило, запущено несколько десятков одновременно работающих приложений, пресловутый «барьер в 4 Гбайт» практически не ощущается. Но означает ли это, что сегодня 64-разрядный x86 никому не нужен?

Конечно, нет! 64-разрядность виртуальной памяти в приложениях востребована уже сейчас, просто эти «добавочные биты» используются другими способами.

Во-первых, какую-то часть виртуального адресного пространства может забирать операционная система. К примеру, MS Windows обычно использует для своих нужд старший бит виртуального адреса, ограничивая адресное пространство запущенного в ней приложения 31 битом и 2 Гбайт адресного пространства. А два гигабайта оперативной памяти, согласитесь, куда ближе к реальной жизни, нежели гипотетические четыре; и ситуацию, когда их начнет не хватать, представить гораздо проще. Можно, правда, попытаться использовать специальный режим, когда Windows будет предоставлять процессам не два, а три гига адресного пространства, но работает он, к сожалению, далеко не всегда, зачастую роняя при неправильной настройке операционную систему.

Во-вторых, линейное адресное пространство подвержено «засорению» - процессу, в ходе которого в нем образуются дырки, которые невозможно использовать. Программы часто оперируют не байтами и словами, а гораздо более крупными структурами, занимающими десятки, сотни и даже миллионы байт информации. Если мы использовали эту структуру, а затем необходимость в ней отпала, то в памяти остается дыра, совпадающая по размерам и расположению с местом, где лежали данные этой структуры. И удастся ли сию дыру использовать - еще бабушка надвое сказала. Иногда почти вся оперативная память состоит из дырок, не несущих никакой практической пользы, и места для записи даже небольшого объема данных не находится[Подобным особенно грешат операционные системы и среды разработки компании Microsoft: менеджер памяти, используемый в Windows, не столь эффективен, как его UNIX-собратья, и «мусора» в памяти оставляет гораздо больше. Иногда это приводит к тому, что нормально работающие на UNIX программы, использующие вдобавок сравнительно небольшой объем оперативной памяти, в MS Windows через некоторое время вылетают с ошибкой Out of memory].

В-третьих, существует такая интересная техника, как маппинг файлов на оперативную память. «Маппить» можно что угодно, причем это не только самый быстрый, но и один из самых удобных способов обработки файлов. Не нужно ничего читать из файла или записывать в него, не нужно думать об эффективном кэшировании данных - все происходит автоматически. Просто «мапнул» файл на память - и находившиеся в нем данные волшебным образом мгновенно оказались доступными приложению. В «настоящую» оперативную память они будут подгружаться только при обращении к ним, а в случае длительной «невостребованности» - вновь возвращаться на жесткий диск, освобождая место для чего-нибудь более актуального. Реализовать что-либо подобное «вручную» - практически невозможно. Но, к сожалению, на двух гигабайтах адресного пространства Windows особенно не развернешься[И на 4 Гбайт своп-файла, которыми нас обычно ограничивает Windows (ругать так ругать!), - зачастую тоже], поэтому техника маппинга задействуется только тогда, когда высокая скорость обработки файлов для приложения становится критичной.

Перейти на страницу:

Все книги серии Компьютерра

Похожие книги

«Если», 2003 № 03
«Если», 2003 № 03

Кейдж БЕЙКЕР. КАРАВАНЛюбители острых ощущений могут готовиться к походу. Путь неблизкий, мир странный, компания подобралась душевная — что еще надо?Геннадий ПРАШКЕВИЧ. ПЕРСТЕНЬ НА ТРИ ЖЕЛАНИЯА как у вас там с фамилией?Стивен ПАЙЗИКС. ЗАВИСИМОСТЬКто-то берется за спицы из любви к рукоделию, кто-то — успокоить нервы, а кто-то — совсем с иной целью.Кирилл БЕНЕДИКТОВ. КОНКИСТАДОР В СТРАНЕ СНОВПалач смакует свою роль, забавляясь наивным неведением «клиента». А тот все толкует о каком-то Пути Богов.Александр ЗОРИЧ. ВТОРОЙ ПОДВИГ ЗИГФРИДАПрекрасная Кримхильда видела много подвигов в свою честь, но о таком и помыслить не смела.Еугениуш ДЕМБСКИЙ. ВОЛЯ ДРАКОНАХотите рассмотреть изнанку героической фэнтези?Андрей ЛЕГОСТАЕВ. ТОСТ В ЧЕСТЬ ПОБЕДИТЕЛЯПраво же, так и вспоминается Олимпиада в Солт-Лейк-Сити…ВИДЕОДРОМДеликатесы города потерянных детей… Звонят, откройте телевизор… Экранизации не горят!.. Явление Горлума народу.ВЕРНИСАЖМы говорили — «героическая фэнтези», подразумеваем — «Фразетта».Виталий КАПЛАН. ДИНАМО-МАШИНА, ИЛИ ВЕЧНЫЙ ДВИГАТЕЛЬ ФАНТАСТИКИПисатели на скоростных магистралях… А может, притормозить?ЭКСПЕРТИЗА ТЕМЫ«В принципе, я согласен, но хочу возразить…»РЕЦЕНЗИИЗаглянем в книжный магазин.КУРСОРНовый Grand Master, творческие планы, неизвестная книга Дж. P.P. Толкина и прочие новости.Мария ГАЛИНА. УНИВЕРСАМ ПРОТИВ УНИВЕРСУМАПисателю хорошо известно, на чем стоит мир. Особенно, если мир плоский.АЛЬТЕРНАТИВНАЯ РЕАЛЬНОСТЬПредставляем второго победителя конкурса для начинающих фантастов.Глеб ЕЛИСЕЕВ. КОЛЛЕКТИВНЫЙ РАЗУМИтоги голосования на сайте «Русская фантастика».Бела КЛЮЕВА. ЗДРАВСТВУЙТЕ, Я ВАША БАБУШКА!…заявляет старейший редактор фантастики и имеет на это звание полное право.ПЕРСОНАЛИИИнтернациональный экипаж номера.

Белла Клюева , Виталий Каплан , Дмитрий Володихин , Евгениуш Дембский , Екатерина Постникова

Фантастика / Фэнтези / Эссе / Проза / Журналы, газеты / Научная Фантастика
«Если», 2000 № 07
«Если», 2000 № 07

ФАНТАСТИКАЕжемесячный журналСодержание:Марина и Сергей Дяченко. ПОСЛЕДНИЙ ДОН КИХОТ, повестьНельсон Бонд. КНИЖНАЯ ЛАВКА, рассказШ. Н. Дайер. НОСТАЛЬДЖИНАВТЫ, рассказВИДЕОДРОМ*Адепты жанра--- Сергей Кудрявцев. ФИНСКИЙ КРЕПКИЙ ОРЕШЕК, статья*Фестиваль--- Николай Кузнецов. ПОБЕДА ВИРТУАЛЬНОГО НАД КОСМИЧЕСКИМ, статья*Рецензии*Писатель о кино--- Сергей Лукьяненко. МАУС-АМЕРИКАНУС, ИЛИ ВИДОВАЯ ПОЛИТКОРРЕКТНОСТЬ, статья*Экранизация--- Сергей Шикарев. ХОРОШО ЗАБЫТОЕ СТАРОЕ, статьяДэвид Хэст. ЯЩИК ПАНДОРЫ, рассказЭнтони Бёрджесс. МУЗА, рассказОрсон Скотт Кард. СОВЕТНИК ПО ИНВЕСТИЦИЯМ, повестьЛитературный портрет*Вл. Гаков. ПРОПОВЕДЬ-БЕСТСЕЛЛЕР, статьяНиколь Монтгомери. НЕРАЗЛУЧНЫЕ, повестьВладимир Михайлов. ХОЖДЕНИЕ СКВОЗЬ ЭРЫ, начало эссеДмитрий Володихин. ПОТАНЦУЕМ?… статьяРецензииКрупный план*Виталий Каплан. НАЧАЛО ОТВЕТА, статья2100: история будущего*Леонид Кудрявцев. СЛУЧАЙНАЯ НАХОДКА, статьяКурсорКонсилиум*Борис Стругацкий: «ОТВЕТ ОЧЕВИДЕН И ОДНОЗНАЧЕН».PersonaliaНа обложке иллюстрация Игоря Тарачкова к повести Орсона Карда «Советник по инвестициям».Иллюстрации: С. Шехова, Т. Ваниной, О. Дунаевой, О. Васильева, А. Юрьевой, И. Тарачкова, А. Филиппова. 

Борис Натанович Стругацкий , Владимир Гаков , Журнал «Если» , Леонид Викторович Кудрявцев , Николай Викторович Кузнецов

Фантастика / Журналы, газеты / Научная Фантастика