Windows 95
Режимы процессора Intel
80386
|
Режимы Windows 3.0
|
Реальный режим. Точная
копия того единственного режима в
котором работали процессоры 8086 и 8088
адресуя 1 Мбайт оперативной памяти.
|
Реальный режим (Real mode).
Работал на процессоре 8086.
|
Режим процессора 80286.
Защищенный режим, в который можно было
переключать процессор 80286, чтобы он
адресовал до 16 Мбайт оперативной
памяти и обеспечивал использование
программами только выделенных им
адресов памяти.
|
Стандартный Режим (Standard
mode). Работал на процессоре 80286. Не
позволял использовать виртуальную
память. Программы DOS использовали
стандартную память и переключали
процессор в реальный режим.
|
Защищенный режим. «Родной»
режим процессора 80386, наиболее полно
использующий преимущества его
32-разрядной архитектуры, которой
отличают передовые методы защиты
программ, 32-разрядная («плоская» в
отличие от 16-разрядной, сегментной)
адресация до 4Гбайт памяти и возможность
подкачки страниц памяти по требованию
|
386-й Расширенный режим
(386 Enhanced mode). Работает только на
процессорах 80386 и выше, позволяет
использовать виртуальную память для
всех программ. Программы DOS выполняются
в собственных виртуальных машинах и
переключают процессор в режим
виртуального процессора 8086.
|
Режим виртуального
процессора 8086, или V86. Защищенный режим,
в котором процессор 80386 полностью
эмулирует работу процессора 8086, не
переходя при этом в реальный режим.
|
Основные
преимущества Windows:
- Независимость
программ от внешних устройств – монитора,
клавиатуры, принтера, драйвера для
поддержки этих устройств входят в состав
Windows или поставляются вместе с этими
устройствами. Windows
программы могут обращаться к внешним
устройствам только через ОС, это снимает
с разработчиков проблему совмести с
конкретными внешними устройствами.
- Имеется
средства для построения пользовательского
интерфейса (окна, меню, запросы, списки
программ и так далее)
- Доступность
всей оперативной памяти
- Динамическое
подключение библиотек
- Обмен данными
между приложениями Windows
- Использование
масштабируемых шрифтов
- Организация
встроенных справочников программ
- Единый
пользовательский интерфейс
- Многозадачность,
поддержка мультимедиа
Особенности
Windows 95
Графический
пользовательский интерфейс упрощает
работу с ПК
95%
возможностей представляемых ПК
достигается простым нажатием кнопки
пуск
Панель
задач позволяет легко переключать
программы
Проводник
– средство для просмотра файлов, дисков
и сетевых связей и для работы с ними
Длинные
имена файлов
Для быстрого
доступа к часто используемым файлам,
папкам, дискам создаются ярлыки
Многозадачность
Простой
доступ к интернету
ОС совместима
с приложениями для DOS и Windows 3.X, но так
же поддерживает и 32 разрядные приложения.
Богатая
графика, поддержка видео, midi, цифровое
периферийное видео
Технология
plug & play, позволяет автоматически
распознавать и устанавливать аппаратное
средство сразу при включении ПК после
того, как в него вставлено плата
соответствующего устройства
Автоматическое
подключение к сети
Повышенная
надежность
Легкость
в обращении
Справка
Уровень
защиты intel 80-86
Прикладные программы(3)
|
Функции операционной
системы, 32 разрядный код(0)
|
Драйверы устройств(3)
|
Аппаратура(0)
|
Процессоры
совместимые с intel 80-386 поддерживают 4
уровня или привилегированности
обеспечивающие различные степени защиты
и привилегий для исполняемых программ
в каждый момент времени процессор может
работать только на одном уровне привилегий
при любой передачи управления с одного
уровня на другой процессор выполняет
десятки операций, но применение различных
уровней привилегий необходимо ОС чтобы
обеспечить защиту жизненно важных
участков кода системы. Для выполнения
кода системного уровня win 95 использует
нулевое кольцо защиты, программы
выполняемые в нулевом кольце работают
с аппаратурой напрямую сервисом нулевого
уровня защиты пользуется файловой
системой защищенного режима, диспетчер
виртуальных машин и аппаратно
ориентированные драйверы, компоненты
ОС предназначены для работы в нулевом
кольце должны быть тщательно проверены
и отлажены поскольку ошибка в таком
драйвере может вызвать крах всей системы,
прикладные программы и многие части ОС
выполняются только в третьем кольце
защиты, они не имеют таких прав как у
программ нулевого уровня и не могут
напрямую работать с устройствами
компьютера им приходится обращаться к
драйверам устройств выполняющимся в
нулевом кольце, но зато они относительно
безопасны для всей системы в целом,
оптимальное разделение всех выполняемых
программ на системные с высоким уровнем
привилегий и прикладные с низким уровнем
привилегий обеспечивают достаточно
высокую степень защиты без заметного
ущерба для общей производительности
системы.
Функции
ОС.
User16
Управление окнами
и меню Windows 3.1, новые методы (поддержка
модели асинхронного ввода и т.д.)
|
GDI
16
Графические методы
Windows 3.1, новые графические методы, EMF и
т.д.
|
Kernel16
Инициализация
Kernel 32
|
User32
Переадресация
32-разрядных вызовов 16-разрядному
модулю
|
GDI
32
Отображение шрифтов
TrueType, подсистема печати, новая
графическая система
|
Kernel32
Управление потоками,
синхронизация объектов, управление
памятью, файлы отображаемые в память,
файловый ввод – вывод, консоль,
коммуникации и т.д.
|
Основой кода
win95
выполняемого в 0 кольце защиты процессора
служат модули kernel user gdi каждый из них
состоит из двух частей 32 разрядной и 16
разрядной. Win95
использует 16 разрядный код когда он
необходим для обеспечения совместимости
или если 32 разрядное кодирование не
целесообразно поскольку увеличило бы
расход памяти без заметного увеличения
производительности. 32 разрядная часть
модуля kernel отвечает за файловый ввод-вывод
управление памятью загрузку и выполнение
программ, поддержку сетевой и файловой
систем, 16 разрядная часть kernel задействуется
только на момент и загрузки ОС и
используется для инициализации 32
разрядной части kernel, а сам kernel32 никогда
не обращается к kernel16, модуль gdi управляет
графическими операциями win95 – включением
и выключением пикселов прорисовка их
линий, закраской областей. Отвечает за
подсистему печати и выполняет основные
операции рисования, там где особенна
важна скорость выполнения или требуется
особая точность вычислений с плавающей
запятой используется GDI32. Операции
управления окнами, для которых более
важна совместимость со старыми
приложениями описывает 16-разрядный
GDI, модуль User управляет пользовательским
вводом-выводом, включая операции с
клавиатурой, мышью, звуковым драйвером,
системными часами и портами ввода-вывода,
User обеспечивает пользовательский
интерфейс, поддерживает отображение и
перемещение окон меню и значкой, user в
win95 фактически остался 16 разрядным, его
32 разрядная часть используется только
для переадресации 32 разрядных вызовов
16 разрядном модуле.
Виртуальная
адресация памяти
Win95
позволяет использовать больший объем
памяти чем установленный на ПК объем
оперативной памяти Win95 использует
возможности процессора 80-386 по обмену
страницами памяти с жестким диском в
процессе работы в память постоянно
загружаются программный код и данные,
если потребности программ превышают
возможности ПК те участки (страницы
памяти), которые требуются реже всего
откладываются на жесткий диск, для этого
используется специальный файл обмена
(файл подкачки) файл виртуальной памяти)
особенностью виртуальной памяти win95
является способность файла подкачки
динамически изменять свой размер в
зависимости от потребности системы
процессор делит, доступное адресное
пространство на 4 кб страницы общим
числом 232
что и дает 4Гб адресуемой памяти, при
этом страницы памяти виртуальные адреса
которых находятся в строгом порядке
могут быть на самом деле разбросаны по
диску диспетчер виртуальной памяти
процессора устанавливает соответствию
между виртуальными адресами страниц
памяти и их физическим местоположением
в оперативную память ПК или файле
подкачки
4Гб адресов
памяти распределены следующим образом
Операционная
система
|
Kernel,
GDI,
код нулевого кольца
|
Системная область
|
4 Гбайт
|
Программы
|
Dll
и другие разделяемые объекты
|
Разделяемая
область
|
3 Гбайт
|
Программы
Win32 и Win16
|
Область
приложений
|
2 Гбайт
|
Программы Win16
|
2
Мбайт
|
Программы MS-DOS
|
1 Мбайт
|
Когда
виртуальный адрес по которому обращается
приложение несоответствует странице
расположенная в физической памяти
процессор сообщает об ошибке и диспетчер
виртуальной памяти подкачивает требуемую
страницу из файла обмена, при этом
предварительно приходится освобождать
соответствующий объем оперативной
памяти и сбрасывать нужную страницу из
памяти не нужную страницу в файл обмена.
Многозадачность.
Win95 это
многозадачная и многопоточная ОС это
значит что ОС «одновременно» может
выполняться несколько процессов причем
в пределах одного процесса могут
параллельно существовать несколько
более простых процессов – потоков,
каждое работающее приложение windows или
ms dos является процессом причем каждый
процесс состоит хотя бы из одного потока.
Поток может использовать память и
системные ресурсы выделяемые ему
материнским процессам но не может сам
обращаться к ОС с требованием выделить
новые ресурсы, в каждый момент времени
выполняется один поток существует два
режима работы, режим вытесняющей
многозадачности – каждый поток
выполняется определенное количество
времени или до тех пор пока приоритет
другого потока не превысит его приоритет,
приоритеты распределяются ОС по этому
не один процесс или поток не может
захватить монопольное управление,
каждому приложению отводится строго
определенная доля процессорного времени,
каждое приложение может быть в любой
момент переведено в фоновый режим, при
вытесняющей многозадачности кажется
что программы действительно работают
одновременно программа MS-dos
и Win32
выполняются в режиме вытесняющей
многозадачности, при
кооперативной многозадачности,
каждое приложение получает фактически
столько процессорного времени, сколько
оно считает нужным.
Все приложения
делят процессорное время периодически
опрашивая друг друга, все приложения
win16 выполняютя под windows95 в режиме
кооперативной многозадачности и вместе
представляют собой для ОС как бы один
процесс работающий в режиме вытеснения.
Виртуальные
машины
В нулевом
кольце защиты процессора 80-386 работают
виртуальные машины win95, прикладные
программы выполняются в виртуальных
машинах, которые для них создают процессор
и ОС, виртуальная машина представляет
собой среду имитирующую отдельный
компьютер со всеми его системными и
периферийными устройствами, процессор
при этом решает задачу эмуляции отдельного
процессора для каждой виртуальной
машины, а операционная система дополняет
их виртуальными устройствами, благодаря
системе виртуальных машин, разработчикам
ПО неприходится беспокоится о том, чтобы
их программы отслеживали использование
ресурсов компьютера другими программами
поскольку память и наборы ресурсов
каждой виртуальной машины изолированы
от ресурсов других виртуальных машин
Когда
загружается Windows95
всегда создается системная виртуальная
машина в пределах которых выделяются
отдельная адресное пространство для
ядра системы – модулей kernel GDI и User к
каждому запущенному 32 разрядному
приложению Windows95 выделяется отдельное
пространство адресов в пределах системной
виртуальной машины для всех 16 разрядных
приложений Windows95
использует общее адресное пространство
в пределах системной виртуальной машины,
каждое приложение DOS
выполняется собственной виртуальными
машинами
Процессы
и сообщения.
от мыши
от
клав.
Асинхронная
обработка сообщения
Управление
программами в Windows95 основано на модели
передачи сообщений, каждое событие
такое как перемещение мыши, нажатие
клавиши или поступление данных по сети
приводит к генерации сообщения когда
Windows программам нужно получить сервис
от ОС или передать данные, они так же
генерируют сообщения, каждое из которых
попадает в соответствующую очередь,
Windows95 использует асинхронную обработку
сообщений, поскольку для каждого
приложения в Win32 используется отдельная
адресная область в пределах системной
виртуальной машины, а сами приложения
Win32 работают в режиме вытесняющей
многозадачности, для каждого Win32
приложения и для каждого создаваемого
ими потока используются отдельные
очереди сообщений – всё это делает
ошибку в win32 приложении практически
безопасной для остальных приложений
выполняемых вход в windows 95, если приложение
win32 пытается выполнить запрещенное
действие система принудительно завершит
его выдав сообщений о недопустимой
операции, если приложение win32 зависло,
оно перестает реагировать на действия
пользователя, указатель мыши в форме
песочных часов на фоне окна этого
приложения показывает что приложение
занято, но не стабильность системы на
это не влияет, пользователь может удалить
такое приложение при помощи окна
«завершение работы программы» нажав
ctr+alt+del такой метод прерывания программ
называется локальной перезагрузкой
Зависание
программ Win16 потенциально более опасно
так как остальные программы Win16 перестанут
получать сообщения и тоже зависнут
поскольку приложение Win16 выполняются
под Windows95 в режиме кооперативной
многозадачности в общем пространстве
адресов в пределах системной виртуальной
машины, то имеют общую очередь сообщений,
когда приложение Win16 выполняет запрещенное
действие, система автоматически выдает
такое же сообщение, «завершение работы»
программы и в дополнении к нему сообщение
в котором предлагается сохранить данные
или закрыть приложение, заблокированное
приложение Win16 способно повлиять и на
приложение Win32 не смотря на то, что они
используют независимые очереди сообщений,
эта ситуация может привести к краху
всей системы поскольку для каждого
приложения DOS, Windows95 создает отдельную
виртуальную машину, которые работают
в режиме вытисняющей многозадачности
деля процессорное время с системной
виртуальной машиной, то виртуальная
машины DOS, не участвуют в передачи
сообщений и не создают очередей, при
выходе из программы DOS, завершается
работа этой виртуальной машины и
освобождается используемые ею системные
ресурсы.
Планирование
приоритетов
В каждый
конкретный момент времени каждый поток
имеет определенный приоритет измеряемый
целым числом от 0 до 31, управление
процессом приходит к тому потоку который
на данный момент обладает самым высоким
приоритетом, приоритеты потоков
динамически изменяются планировщиками
с тем чтобы могли отработать все потоки,
в назначение приоритетов принимают
участие два планировщика первичный
(основной), вычисляет приоритеты потоков,
а вторичный (диспетчер квантования)
определяет количество процессорного
времени выделяемое каждому потоку,
каждые 20 мс первичный планировщик
сравнивает текущие приоритеты потоков
и переводит в состояние ожидания все
потоки кроме потока с наивысшим
приоритетом, вторичный планировщик
выделяет потоку с наивысшим приоритетом
определенное количество времени, после
чего поток работает, если несколько
потоков имеют одинаково высокие
приоритеты им устраивают «карусель».
Длинные
имена файлов
Главной
особенностью файловой системы Windows95
для пользователя является то что
максимальная длина имени файла в
Windows95 может
достигать 256 символов при создании
файла ему присваивается сразу два имени
– длинное и короткое.
Короткое
имя – образуется из
длинного путем удаления из него пробелов
и символов: \ : ? " * < > Для восьмибуквенного
имени файла используются первые 6
оставшихся символов длинного имени,
тильда ~, и порядковый номер для
трехбуквенного расширения, используется
первые 3 символа после последней точки
в длинном имени файла, в сеансе MS-DOS под
Windows 95 можно использовать не только
короткие имена файлов в приглашении к
вводу команды для этого имя файла нужно
брать в кавычки.
Устанавливаемые
файловые системы
Для приложений
выполняемых под Windows
95 унифицирован доступ к файлам находящиеся
на обычных локальных на компакт дисках
и сетевых дисках, посредником между
различными файловыми системами и
приложениями Windows служит диспетчер
устанавливаемых файловых систем,
устанавливаемыми файловыми системами
в Windows 95 являются VFAT, CDFS – файловая
система компакт дисков и сетевая система
переадресации, основной файловой
системой в windows 95 является FAT16, которая
не эффективно использует дисковое
пространство и не позволяла работать
с дисками более 500 МБ. По этому в Windows 95
была включена альтернативная файловая
система, которая может использоваться
наряду с обычной FAT, главное преимущество
FAT32 – она может поддерживать дисковые
тома объемом более 2 (до 64 ГБ) и жесткие
диски до 2 ТБ, FAT32 поддерживает меньшие
разделы кластеров что позволяет более
эффективно использовать дисковое
пространство, эта файловая система
используется в ОС на основе DOS – Windows 98
и Me.
FAT
хранит информацию о файлах на жестком
диске в виде последовательности чисел
определяющих местонахождение каждой
части, каждого файла
Значение
размеров кластеров в зависимости от
размеров логических томов:
Размер тома
|
Размер кластера
|
Менее 260 Мбайт
|
512 байт
|
260 Мбайт – 8 Гбайт
|
4 Кбайт
|
8 Гбайт – 16 Гбайт
|
8 Кбайт
|
16 Гбайт – 32 Гбайт
|
16 Кбайт
|
Более 32 Гбайт
|
32 Кбайт
|
Поддержка
нового оборудования и экономное
использование дискового пространства
не все черты FAT32, корневой каталог
разделов FAT32 потерял свое особое
положение, теперь он может располагаться
где угодно на диске и иметь любой размер
это снимает ограничение на число записей
в корневом каталоге, здесь заложена
возможность подмены одной таблицы FAT
другой и предусмотрена резервирование
структур данных загрузочных записей.
Все прикладные программы в том числе и
программы для MS-DOS будут функционировать
и в среде Windows 95 OSR 2, в том числе и в режиме
‘MS-DOS’.
Загрузка
MS-DOS
По окончанию
процедуры POST программное обеспечение
BIOS загружает из первого сектора
загрузочного диска код, который находит
в корневом каталоге загрузочного диска
файл IO.SYS загружает его и передает ему
управление в этот момент на экране ПК
появляется сообщение: «Starting
Windows 95…» в
течении 2х секунд с момента появления
сообщения пользователь может попросить
систему передать ему управление загрузкой
если нажать:
Shift
или F5 (safe
mode) –
Windows95
загрузится в режиме защиты от сбоев,
то есть без некоторых драйверов и без
поддержки сети
Shift
+ F5 – Не
будут выполнены команды файлов,
AUTOEXEC.BAT и CONFIG.SYS не будет загружена
графическая оболочка
Ctrl
+ F5 – то же
что и в предыдущем + без драйвера сжатия
диска
Shift
+ F8 или Ctrl
+ F8 –
Windows95 будет
запрашивать подтверждение на выполнение
каждого шага загрузки
F4
– Загрузка предыдущей версии MS-DOS
F6 – Режим
защиты от сбоев с поддержкой сети
F8
– на экране появляется меню загрузки:
Normal –
обычное продолжение загрузки
Logged
(\BOOTLOG.TXT)
– загрузка с сохранением журнала
загрузки
Safe mode
Safe mode with
network support
Step-By-Step
confirmation
Command prompt
only
Safe mode
command prompt only
Previous
version on MS-DOS
|