Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
34
Добавлен:
02.05.2014
Размер:
1.46 Mб
Скачать

Функции ос

Встроенные функции ОС W95 находятся в DLL – динамически загружаемых модулях (dynamic link library). Модуль DLL – это разделенные библиотеки процедур, к которым по мере необходимости обращаются исполняемые программы. Основой системных программ W95, выполняемых в третьем кольце защиты процессора, служат модули KERNEL USER и GDI. Каждый из них состоит из 2-х частей – 32-разрядной и 16-разрядной. ОС W95 использует 16-разрядный код для совместимости или если 32-разрядное кодирование нецелесообразно, поскольку увеличило бы расход памяти без заметного увеличения производительности. 16-разрядные функции W95 написаны в основном на Ассемблере.

32-разрядная часть модуля KERNEL отвечает за базовые операции – файловый ввод-вывод, управление памятью, загрузку и выполнение программ, поддержку сетевой и файловой системы. Имя файла 32 разрядного модуля Kernel – KERNEL32.DLL. 16-разрядная часть Kernel с именем KRNL386.exe используется для инициализации 32-разрядной части этого модуля. GDI управляет графическими операциями W95 и печатью. 32-разрядный модуль GDI32.DLL отвечает за подсистему буферизацию входных и выходных потоков, подсистему печати, отображение шрифтов TrueType и основных операций рисования – включение и выключение пикселей, прорисовкой линей, закраской областей и т.д. Операции управления окнами выполняем 16 разрядный GDI.EXE.

Модуль USER управляет пользовательским вводом-выводом, включая операции с клавиатурой, мышью, звуковым драйвером, системными часами и портами ввода-вывода. User обеспечивает пользовательский интерфейс W95, поддерживает отображение и перемещение окон, меню, и знаков. 16-разрядная часть этого модуля называется файл USER.EXE, 32-разрядная часть (файл USER.DLL) используется для трансформации вызовов 32-разрядных приложений и переадресация 16-разрядному блоку.

В ОС W95 реализованы и некоторые другие функции, например, модуль WinNet, обеспечивающий аппаратно-независимый уровень поддержки сетевых функций.

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

Модуль OLE, включающий механизмы хранения и совместного доступа к данным.

Виртуальная адресация памяти

W95 позволяет использовать больший, чем установленный на ПК, объем оперативной памяти. Точнее W95 использует возможности МП 386 по обмену страницами памяти с жестким диском. Если потребности программ превышают возможности ПК, т.е. участки (страницы) памяти, которые требуется реже всего, откладываются на жесткий диск. Для этого используется специальный файл обмена, он же файл подкачки, он же файл виртуальной памяти. Особенностью файла подкачки динамически изменять свой размер в зависимости от потребностей системы.

Процессор делит доступное адресное пространство на 4-х килобайтные страницы общим числом около миллиона (220), что и дает 4 Гбайта адресуемой памяти. Диспетчер виртуальной памяти процессора устанавливает соответствие между виртуальными адресами страниц памяти и их физическим расположением в оперативной памяти ПК или в файле виртуальной памяти. Он же и контролирует объем страниц между ОЗУ и виртуальной памятью 4Гбайта адресов памяти W95 распределяет следующим образом:

4 Гбайт

Операционная система

Kernel, CDI, код нулевого кольца

Системная область

3 Гбайт

Программы

DLL и другие разделяемые объекты

Разделяемая

область

2 Гбайт

Программы

Win 32 и Win 16

Область

приложений

4 Мбайт

Программы

Win 16

1 Мбайт

Программы

MS-DOS

0-1Мбайт. Доступно только для программ MS-DOS и драйверов устройств реального режима;

1-4Мбайт. Используется только программами Win16. Операционная система и программы Win32 не занимают эти адреса.

4Мбайт-2Гбайт. Используется программами Win32 и некоторыми программами Win16.

2Гбайт-3Гбайт. Используется разделяемыми объектами, такими, как динамически загружаемыми модулями COMMDLG.DLL и COMMDLG32.DLL, содержащими элементы стандартных диалоговых окон Windows.

3Гбайт-4Гбайт. Используется только ОС для ее внутренних нужд.

Когда виртуальный адрес, по которому обращается применение, не соответствует странице, расписанной в физической памяти, процессор сообщает об ошибке и диспетчер виртуальной памяти подкачивает требуемую страницу из файла обмена. При этом предварительно обычно приходится освобождать соответствующий объем физической памяти и сбрасывать какую-нибудь другую страницу из памяти в файл обмена. Для этого используется классический алгоритм «удаление стариков» (LRU, least recently used) – т.е. сбрасывает в файл обмена наиболее редко используемые страницы памяти.

Соседние файлы в папке Операционные системы