Henrik Viklund
Перевод с английского языка Белялетдиновым Т.Р.
Вкратце, новая модель памяти дает возможность для запуска практически неограниченного числа процессов и под каждый процесс выделяется 2Гб виртуальной памяти. Чтобы учесть это, старая архитектура была заменена на новую, в которой только один процесс отображается в пространстве пользователя в любой момент времени.
Положительной стороной данного подхода является то, что с тех пор, как пространство пользователя больше не упаковано бездеятельными процессками, выполняемые процессы могут использовать гораздо больше виртуальной памяти чем раньше. Отрицательной строной является прежде всего взаимодействие процессов, где отображение памяти через процессы становится намного более сложным и с этим связан штраф производительности .
Наследство (Legacy)
Прежде чем вдаваться в детали новой архитектуры, давайте напомним, что модель памяти СЕ5 выглядит следующим образом. Я не буду вдаваться в подробности, поскольку есть много информации об архитектуре памяти CE 5 :
Модель виртуальной памяти Windows CE 5
Пространство пользователя CE 5 разделено на 32 слота процесса, каждый занимает 32 МБ виртуальной памяти, и область разделяемой памяти, в которой любые процессы могут распределить виртуальную память. У этой архитектуры фактически есть свои корни в самых первых версиях Windows CE, разработанной уже более 10 лет назад. Ограничивая размер и максимальное число процессов, все процессы могут быть отображены в пространстве пользователя все время, очень уменьшая сложность ядра.
В то время 32 МБ считали большим количеством виртуальной памяти для процесса, и способность управлять 32 процессами одновременно на вложенном устройстве была более чем достаточно для большинства изготовителей устройства. Короче говоря, это был справедливый компромисс между работой и гибкостью.
Детальная модель памяти СЕ6
Таким образом, что можно сказать о новой модели памяти? Она все еще разделена : 2Гб пространство ядра и 2Гб пространство пользователя , это единственное , что является общим между моделяим памяти СЕ5 и СЕ6 .
В СЕ 6 каждому процессу выделяется 1 Гб виртуальной памяти. Это возможно благодаря тому, что этот 1Гб памяти включается когда идет переключение процессов (в отличие от CE 5 и выше, где все процессы являются доступными в пользовательском пространстве все время ) .Поскольку процессы не разделяют друг с другом пространство пользователя , максимальное число запущенных процессов уже не ограничивается. Хотя говорят о возможности запуска более 32000 процессов, реальное ограничение устанавливается доступной физической памятью. Объем физической памяти, который должен быть выделен для каждого процесса, приведет к исчерпанию памяти задолго до того, как число процессов достигнет 32k. Но, давайте просто скажем, что модель нового ядра и памяти более не являются ограничивающим фактором, когда речь заходит о запущенных процессах..
Пространство Пользователя
Теперь, давайте более детально рассмотрим как разделена виртуальная память в CE 6:
Пространство пользователя Windows CE 6
Начиная c основании, достигая метки в1 Гбайт, расположено пространство, о котором упоминалось выше . В метке 1 Гбайт находятся 512 МБ для использования dll, выше которого, у нас есть 256 МБ для поддержки подключаемых файлов. Наверху, у нас есть 255 МБ общедоступной системной динамической памяти, остается защитное неотображаемое пространство в 1 МБ между пространством ядра и пространством пользователя.
Теперь, пространство процесса в 1 Гбайт отображает код выполняемой программы процесса и данные, его распределения VM и любые файлы с отображенной памятью. В области dll будет то же самое отображение через процессы по причинам оптимизации. В то время как кодовые страницы разделены через процессы, страницы данных в этой области будут уникальными физическими страницами для каждого процесса. dll теперь загружены и растут от основания , противоположно стилю стека, нисходящая загрузка, используемая в CE 5 и раньше.
Область файла с отображенной памятью находится в установленном местоположении в пространстве пользователя. Это сделано по причинам обратной совместимости. Наконец, общедоступная системная динамическая память - область, где компоненты OS и процессы могут бзопасно обменяться информацией . В то время как компоненты OS могут осущестлять чтение/запись в этой области только с разрешения, процессам, работающим в пространстве пользователя, могут быть даны права только на чтения или чтение/запись.
Пространство ядра
Модель памяти для пространства ядра также изменилась
Хотя она выглядит довольно знакомо, две области по 512Мб не изменились, и ловушка пространства до сих пор там на вершине кучи, но есть некоторые важные изменения, которые следует отметить . Прежде всего область128Mb kernel XIP DLL непосредственно над 1GB , 128Mb зарезервированы для использования объекта Store. Сразу же после этого, имеются два слота по 256Mb виртуальной памяти яд
Похожие работы
... и в то же время совместимой с истинными 32-разрядными прикладными программами и 32-разрядными драйверами виртуальных устройств. Среди наиболее важных усовершенствований явившихся в Windows 95, - изначально заложенная в ней способность работать с 32-разрядными многопотоковыми прикладными программами, защищенные адресные пространства, вытесняющая многозадачность, намного более широкое и ...
... Server. Установка Windows 2000 Advanced Server завершена, и Вы вошли в систему под учетной записью Administrator. [11] 5.5.3. Управление в среде Windows 2000 Advanced Server После успешной установки Windows 2000 Server выполняется настройка пользователей. Основным элементом централизованного администрирования в Windows 2000 Server является домен. Домен - это группа серверов, работающих под ...
... современной операционной системе требований . Особенности но- вой системы ,разработанной на основе этих требований ,перечислены ниже . Стремясь обеспечить совместимость (compatible) новой операционной сис- темы ,разработчики Windows NT сохранили привычный интерфеис Windows и реализовали поддержку существующих файловых систем (таких ,как FAT ) и различных приложений (написанных для MS - Dos ...
... ) ФАКУЛЬТЕТ ЭЛЕКТРОНИКИ И ПРИБОРОСТРОЕНИЯ КАФЕДРА КЭС группа Э-92 ДАТА ЗАЩИТЫ апреля 1997 г. Отзыв на дипломную работу студента гр.Э-92 Сорокина Ю.В. “Разработка программы контроллера автоматически связываемых объектов для управления конструкторской документацией в среде Windows 95/NT”. Широкое использование вычислительной техники в народном хозяйстве требует увеличения производства и ...
0 комментариев