Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!!! Готовый курсач СОС.docx
Скачиваний:
26
Добавлен:
10.12.2018
Размер:
511.38 Кб
Скачать

2. Изменения внутреннего устройства ядра Windows Server 2008

В операционной системе Windows Server® 2008 используется то же ядро, что и в Windows Vista® SP1.

    1. Работа в среде многопроцессорных систем

Одно из изменений на низком уровне системы состоит в том, что в Windows Server 2008 входит только версия ядра, предназначенная для работы в среде многопроцессорных систем. Раньше в Windows использовалась версия, ориентированная на однопроцессорные системы, установленные на машинах с единственным ЦПУ, поскольку такая версия обеспечивала несколько большую производительность за счет отсутствия кода для синхронизации, необходимого только в многопроцессорных средах. В связи с тем, что оборудование стало работать быстрее, повышением производительности за счет оптимизации можно пренебречь, и в настоящее время большинство серверных систем содержит несколько процессоров, что избавляет от потребности в однопроцессорной версии.

Версия ядра, используемая в системе, зависит от того, является ли версия операционной системы отладочной (Checked) или розничной, от варианта установки — в 32- или 64-разрядной архитектуре (Itanium, Intel 64 или AMD64) и, в случае установки в 32-разрядной среде, от того, имеется ли в системе более 4 ГБ физической памяти, и поддерживается ли предотвращение выполнения данных (DEP — Data Execution Prevention). Кроме этого, предполагается, что Windows Server 2008 — последняя система, поддерживающая 32-разрядную версию.

Каждый выпуск Windows Server нацелен на повышение производительности основных серверных операций, таких как операции с файлами, сетевые операции ввода-вывода и управление памятью. Кроме этого, в Windows Server 2008 вошло несколько изменений и новых компонентов, позволяющих системе Windows использовать преимущество новых архитектур оборудования, настраивать систему на работу с сетями, имеющими большую задержку и устранить факторы, ограничивавшие производительность в предыдущих версиях Windows.

    1. Управление памятью

В диспетчер памяти системы Windows Server 2008 внесено несколько усовершенствований для повышения производительности. Например, при доставке данных из файла подкачки или выполнении упреждающих операций ввода-вывода с отображенными файлами генерируются дисковые операции ввода-вывода как меньшего, так и большего объема. Выполнение объемного файлового ввода-вывода облегчается благодаря изменениям в системе ввода-вывода, освободимшим ее от ограничения в 64 КБ на объем операций ввода-вывода, существовавшего начиная с первого выпуска Windows NT®.

Кроме этого, важно отметить, что при упреждающем чтении из отображенных файлов, выполняемом диспетчером кэша, объем данных в системе Windows Server 2008, как правило, в два раза больше, чем в системе Windows Server 2003, и эти операции попадают напрямую в список ожидания (код системы и кэш данных). Такое поведение возникает вместо требования к диспетчеру кэша отображать виртуальную память и считывать данные в рабочий набор системы (память, приписанная системе диспетчером памяти), что может вызвать не обусловленное необходимостью вытеснение из рабочего набора используемого кода или данных.

Диспетчер памяти выполняет объемные операции ввода-вывода также и при записи данных в файл подкачки. Хотя Windows Server 2003 часто выполняет операции записи даже меньшего, чем 64 КБ, объема, в среде Windows Server 2008 диспетчер памяти обычно генерирует операции записи объемом 1 МБ.

Помимо повышения производительности за счет сокращения числа операций записи в файл подкачки, объемные операции записи позволяют также уменьшить фрагментирование файла подкачки. Это, в свою очередь, приводит к сокращению числа операций чтения и поиска на диске, необходимых для извлечения нескольких страниц, поскольку, скорее всего, они будут смежными.

Диспетчер памяти пытается также записывать другие измененные страницы, находящиеся поблизости от той, которая записывается в адресное пространство процесса, которому они принадлежат. При этом диспетчер выполняет запись в тот участок файла подкачки, где уже находятся другие соседние страницы. Это также минимизирует фрагментацию и позволяет повысить производительность, поскольку страницы, которые со временем могут быть записаны в файл подкачки, уже записаны. Дополнительно это сокращает число операций чтения страниц, необходимых для извлечения смежных страниц процесса.

    1. SMB 2.0

Появившаяся в Windows Vista и Windows Server 2008 технология Server Message Block 2.0 (Блок сообщений сервера), часто называемая просто SMB2, представляет собой протокол, который отвечает за передачу файлов между системами. По сути, SMB2 сжимает файловые запросы и посредством имеющего больший размер буфера таких запросов сокращает коли­чество циклических проходов, необходимых при передаче данных между системами.

Протокол удаленной файловой системы Server Message Block (SMB), известный также под названием Common Internet File System (CIFS), служил основой для файловых служб Windows с момента появления в Windows средств по обслуживанию файлов. В течение последних нескольких лет проектные ограничения протокола SMB ограничивали производительность файловых служб и возможности использования преимуществ новых функций локальных файловых систем. Например, максимальный размер буфера, который можно передать в одном сообщении, составляет приблизительно 60 КБ, и в SMB 1.0 не предусмотрена работа с символическими ссылками клиентской стороны NTFS, которые были добавлены в Windows Vista и Windows Server 2008.

В Windows Vista и Windows Server 2008 появилась версия SMB 2.0, нового протокола удаленного обслуживания файлов, который используется Windows в случае, когда его поддерживает и клиент, и сервер. Помимо правильной обработки символических ссылок и других усовершенствований NTFS, протокол SMB 2.0 использует пакетирование данных для минимизации числа сообщений, которыми обмениваются клиент и сервер. Пакетная обработка позволяет повысить пропускную способность в сетях с высокой задержкой, таких как глобальные сети (WAN), поскольку она дает возможность передавать больший объем данных в один прием.

В то время как SMB 1.0 инициирует операции ввода-вывода для одного файла последовательно, SMB 2.0 реализует операции ввода-вывода в конвейерном режиме, позволяя инициировать для одного файла несколько параллельно выполняющихся операций ввода-вывода. С целью определения глубины конвейеризации измеряется объем серверной памяти, используемой клиентом для ожидающих выполнения операций ввода-вывода.

Благодаря изменениям в диспетчере памяти системы ввода-вывода и системе ввода-вывода Windows, автоматической настройке окна получения TCP/IP и усовершенствованиям механизма копирования файлов, SMB 2.0 обеспечивает значительные усовершенствования и сокращение времени копирования файлов при объемной передаче данных. Поскольку в обеих операционных системах реализован протокол SMB 2.0, развертывание файловых серверов Windows Server 2008 с помощью клиентов Windows Vista дает возможность использовать SMB 2.0 и добиться этих преимуществ в производительности.