Система Windows 9.x во многом основана на тех же самых концепциях, что и Dos. Тех же два системных файла io.sys и msdos.sys, только теперь весь системный.

Презентация:



Advertisements
Похожие презентации
1. Теоретические основы операционных систем (планирование заданий и использования процессора, обеспечение программ средствами коммуникации и синхронизации,
Advertisements

Системное программное обеспечение. Виды программного обеспечения Программное обеспечение компьютера можно разделить на системное и прикладное. Прикладные.
Обзор операционных систем ВОУНБ им. М. Горького «Операционная система - это совокупность программ, обеспечивающих управление процессом обработки информации.
Операционные системы и среды. Схема устройства жесткого диска Дорожка N Сектор (блок) Пластина 1 Пластина 2 Цилиндр 0 сторона Диск – одна или несколько.
Архитектура операционной системы. Ядро и вспомогательные модули операционной системы При функциональной декомпозиции ОС модули разделяются на две группы:
Операционные системы. Проверка д / з В чем состоит магистрально - модульный принцип построения компьютера ? Изобразите схему архитектуры компьютера. В.
Лекция 6 Понятие операционных систем Учебные вопросы: 1. Характеристики ОС 2. Свободные и проприетарные ОС.
Основные операционные системы: Персональные компьютеры IBM-совместимые – MS-DOS, Windows (3.1, 9, Me, XP); Персональные компьютеры Apple – Mac OS Рабочие.
Учитель информатики Кюкяйской СОШ,Сунтарского улуса, Республики Саха Федоров Александр Михайлович,2010 год.
«Особенности файловой системы WinFS» Сравнение с предыдущими файловыми системами.
Программное обеспечение компьютера. Совокупность программ, хранящихся в долговременной памяти компьютера, составляют программное обеспечение (ПО) компьютера.
Устройство и принцип работы операционной системы Windows XP.
Лекция 5 Управление памятью Виртуальное адресное пространство.
Архитектура операционных систем Семестр 2, Лекция 1.
Операционные системы Подготовила Подготовила студентка студентка 1 курса группы Э курса группы Э-108 Шпудейко Кристина Шпудейко Кристина.
Архитектура операционных систем. Архитектура ОС Состав модулей (компонент) ОС Структура связей между отдельными модулями ОС Принципы взаимодействия модулей.
Операционные системы Проект ученика 8 А класса Юрченко Василия.
Основные характеристики операционных систем. Операционная система базовый комплекс программ, обеспечивающий управление аппаратными средствами компьютера,
Операционная система. 1.Общее понятие операционных системОбщее понятие операционных систем 2.Классификация ОСКлассификация ОС 3.Обзор наиболее популярных.
Основные виды ресурсов и возможности их разделения.
Транксрипт:

Система Windows 9.x во многом основана на тех же самых концепциях, что и Dos. Тех же два системных файла io.sys и msdos.sys, только теперь весь системный код находится в первом из них, а второй содержит ASCII – текст с установками, управляющими поведением системы при загрузке. Эквиваленты программ himem.sys, ifshlp.sys автоматически загружаются программой io.sys при старте системы. Как и прежде, для загрузки в память драйверов и резидентных программ можно использовать файлы config.sys и autoexec.bat. Но за загрузку тех 32-разрядных драйверов устройств, которые разработаны специально для Windows 9.x, теперь отвечают записи в системном реестре (Registry). Когда вся предварительная работа сделана, стартует файл win.com.

Registry – это база данных, в которой Windows 9.x хранит информацию о всех настройках, конфигурационных установках и параметрах, которые нужны для работы ее собственных модулей и отдельных приложений. Системный реестр как бы выполняет функции файлов config.sys, autoexec.bat и ini – файлов Windows 3.1 вместе взятых. На диске компьютера реестр хранится в виде двух отдельных файлов: system.dat и user.dat. В первом из них содержатся всевозможные аппаратные установки. А во втором – данные о работающих с системой пользователях и их программных конфигурациях.

По способу хранения данных Windows 9.x использует ту же файловую систему, что и Dos, и те же дисковые структуры, главную загрузочную запись (MBR), загрузочную запись Dos (DBR), таблицы размещения файлов (FAT) и каталоги. Но имена файлов могут теперь иметь длину до 255 символов и при этом сохраняется односторонняя совместимость с файловыми системами, созданными под Dos. Такая совместимость достигается, так как Windows 9.х хранит для каждого файла и каталога по два имени – полное и короткое.

FAT 32 – альтернативная файловая система, которую Windows 9.x может использовать наряду с обычной FAT. Главное преимущество FAT 32 состоит в том, что эта файловая система позволяет создавать дисковые тома объемом до 2 Тбайт, в отличие от системы FAT, которая поддерживает диски до 2 Гбайт. FAT 32 более устойчива к отказам, чем стандартная FAT, к тому же она использует меньший размер дисковых кластеров, за счет чего достигается существенная экономия дискового пространства. На дисках объемом более 1 Гбайт размер кластера в системе FAT составляет 32 Кбайт. При использовании FAT 32 для раздела до 8 Гбайт размер кластера равен всего 4 Кбайт (экономия дискового пространства составляет в среднем 128 Мбайт на 1 Гбайт дискового пространства). Корневой каталог разделов FAT 32 может теперь иметь любой размер, это снижает ограничение на число записей в корневом каталоге. Предусмотрено резервирование структур данных загрузочных записей. Кроме того, в FAT 32 уже заложена возможность «подмены» одной таблицы FAT другой.

Встроенные функции ОС находятся в dll – динамически загружаемых модулях (dynamic – link library). Модули dll – это разделяемые библиотеки процедур, к которым по мере необходимости обращаются исполняемые программы. Основой кода Windows 9.x служат модули Kernel, User и Gdi. Каждый из них состоит из двух частей: 32 – разрядной и 16 – разрядной. Windows 9.x использует 16 – разрядный код, когда он необходим для обеспечения совместимости. 16 – разрядные функции Windows 95 написаны преимущественно на ассемблере.

32 – разрядная часть модуля Kernel отвечает за базовые услуги – файловый ввод – вывод, управление памятью, загрузку и выполнение программ, поддержку сетевой и файловой систем. Имя файла 32 – разрядного модуля Kernel – Kernel32.dll. 16 – разрядная часть Kernel, Kernel386.exe, задействуется только на момент загрузки Windows и используется только для инициализации 32 – разрядной части Kernel.

GDI управляет графическими операциями Windows 9.x и печатью. 32 – разрядный модуль Gdi32.dll отвечает за подсистему буффиризации входных и выходных потоков, подсистему печати, растеризатор шрифтов (TrueType) и основные операции рисования то есть за все операции, где особенно важна скорость выполнения или требуется особая точность вычислений с плавающей запятой. Операции управления окнами, для которых более важна совместимость со старыми приложениями, описывает 16 – разрядный Gdi.exe. Модуль User управляет пользовательским вводом – выводом, включая операции с клавиатурой, мышью, звуковым драйвером, системными часами и портами ввода – вывода. User поддерживает отображение и перемещение окон, меню и значков. User фактически остался в Windows 9.х 16 – разрядным (User.exe), его 32 – разрядная часть (User32.dll) используется для трансформации вызовов 32 – разрядных приложений и переадресации 16 – разрядному блоку. Трансформации 32 – разрядных вызовов в 16 – разрядные и наоборот очень часто применяются в Windows 9.х.

ОС Windows для поддержки своей эффективности и целостности использует два режима: пользователя и ядра. Архитектура процессора Intel и следующих моделей определяет четыре уровня привилегий, называемых кольцами, для защиты кода и данных системы от случайного или преднамеренного изменения со стороны менее привилегированного кода. Такой метод выполнения кода называется моделью защиты Intel.

Уровень привилегий 0, известный как режим ядра, максимальный. Уровень привилегий 3, или режим пользователя, - минимальный. Когда код выполняется на некотором уровне привилегий, говорят, что он выполняется в соответствующем кольце. Операционные системы семейства Windows используют только кольца 0 и 3

Режим ядра (кольцо 0) - это наиболее привилегированный режим. Работая в нем, код имеет прямой доступ ко всей аппаратуре и всему адресному пространству. Программное обеспечение, выполняющееся в режиме ядра: имеет прямой доступ к аппаратному обеспечению; имеет доступ ко всей памяти компьютера; не может быть вытеснено в страничный файл на жестком диске; выполняется с большим приоритетом, чем процессы режима пользователя. В частности, в кольце 0 выполняется код ядра операционных систем Windows 95 и Windows NT. Поскольку компоненты режима ядра защищены архитектурно, процессор предотвращает их изменение другой программой.

Режим пользователя предоставляет меньше привилегий, нежели режим ядра, - в частности, он не обеспечивает прямой доступ к аппаратуре. Код, выполняющийся в кольце 3, ограничен выделенным ему адресным пространством, а для вызова системных сервисов использует интерфейс прикладного программирования (API) Windows. Процессы режима пользователя характеризуются следующими особенностями. Не имеют прямого доступа к аппаратуре. Это защищает систему от неисправных приложений или неавторизованного доступа. Ограничены выделенным им адресным пространством. Таким образом операционная система обеспечивает свою целостность. Процессу выделяется определенная область адресов и запрещено выходить за эту область. Могут быть вытеснены из физической памяти в виртуальную память на жестком диске. Механизм виртуальной памяти позволяет использовать пространство на жестком диске как дополнительное ОЗУ. Выполняются с меньшим приоритетом, чем компоненты режима ядра. Поскольку приоритет процессов режима пользователя ниже, они получают меньший доступ к процессору, чем процессы режима ядра. Это гарантирует, что операционная система не будет ожидать окончания работы такого процесса. Кроме того, неисправный программный компонент, выполняющийся в режиме пользователя, не вызовет крах всей системы и не повлияет на другие приложения, работающие параллельно.

Windows 9.x позволяет использовать больший объем памяти, чем установленный на компьютере объем оперативной памяти. Если потребности программ превышают возможности компьютера, то те участки (страницы) памяти, которые требуются реже всего, откладываются на жесткий диск. Для этого используется специальный файл обмена, он же файл подкачки или файл виртуальной памяти. Особенностью виртуальной памяти Windows 9.х является способность файла подкачки динамически изменять свой размер в зависимости от потребностей системы в отличии от файла подкачки Windows 3.1, который не мог превышать утроенный объем оперативной памяти и должен быть постоянным.

Диспетчер виртуальной памяти процессора устанавливает соответствие между виртуальными адресами страниц памяти и их физическим местоположением. Диспетчер виртуальной памяти контролирует 4 Гбайт адресов памяти (причем не обязательно наличие 4 Гбайт физической памяти). Эти адреса распределены следующим образом: 0 – 1 Мбайт. Не используются программами Windows, доступны только для программ Ms-Dos. 1 – 4 Мбайт. Используется только программами Win 16. Программы Win 32 не занимают эти адреса. 4 Мбайт – 2 Гбайт. Используются программами Win 32 и некоторыми программами Win – 3 Гбайт. Используется разделяемыми объектами, такими, как динамически загружаемые модули. 3 – 4 Гбайт. Используется только ОС для ее внутренних нужд. Когда виртуальный адрес, по которому обращается приложение, не соответствует странице, расположенной в физической памяти, то процессор сообщает об ошибке, и диспетчер виртуальной памяти подкачивает требуемую страницу из файла обмена.

Windows 9.x – многозадачная и многопоточная система. Это значит, что в ОС может «одновременно» выполняться несколько процессов, а в пределах одного процесса могут одновременно существовать несколько более простых процессов – потоков. Каждое работающее приложение Windows или Ms- Dos является процессом, причем каждый процесс состоит хотя бы из одного потока. Приложения Dos и Win16 всегда состоят из одного потока. Поток может использовать память и системные ресурсы, выделяемые ему материнским процессом, но не может сам обращаться в ОС с требованием выделить новые ресурсы. В каждый момент времени выполняется один поток.

В режиме вытесняющей многозначности каждый поток выполняется определенное количество времени или до тех пор, пока приоритет другого потока не превысит его приоритет. Приоритеты распределяются ОС, поэтому ни один процесс или поток не может захватить монопольное управление. Каждому приложению отводится строго определенная доля процессорного времени, каждое приложение может быть в любой момент переведено в файловый режим. При вытесняющей многозначности кажется, что программы действительно работают одновременно. Программы Ms-Dos и 32 - разрядные приложения выполняются в режиме вытесняющей многозначности.

При кооперативной многозначности каждое приложение получает фактически столько процессорного времени, сколько оно считает нужным. Все приложения делят процессорное время, периодически ограничивая друг друга. Поэтому хорошо заметно, когда одно программа «тормозит» другую, а при длительных операциях с диском замирает практически вся другая деятельность. Все 16 - разрядные приложения выполняются под Windows примерно так же, как и под Windows 3.х – в режиме кооперативной многозначности. Таким образом, достигается совместимость со старыми приложениями Windows, написанными для выполнения в среде кооперативной многозначности.

Прикладные программы для Windows 9.x выполняются в виртуальных машинах, которые создает ОС. Виртуальная машина представляет собой среду, имитирующую отдельный (виртуальный) компьютер со всеми его системными и периферийными устройствами. Благодаря системе виртуальных машин работникам ПО не приходится беспокоиться о том, чтобы их программы отслеживали использование ресурсов компьютера другими программами, так как память и наборы ресурсов каждой виртуальной машины изолированы от памяти и ресурсов других виртуальных машин. Когда загружается Windows, всегда создается системная виртуальная машина, в пределах которой выделяется отдельное адресное пространство для ядра системы. Каждому запущенному 32 - разрядному приложению Windows (Win 32) также выделяется отдельное адресное пространство адресов в пределах системной виртуальной машины. Для всех 16 - разрядных приложений Windows система Windows 9.x использует общее адресное пространство в пределах системной виртуальной машины. Каждое приложение Dos выполняется в собственной виртуальной машине.

Управление программами Windows 9.x основано на модели передачи сообщений. Каждое событие приводит к генерации сообщений. Windows использует асинхронную обработку сообщений, то есть поддерживает независимые очереди сообщений. Так как для каждого приложения Win 32 используется отдельная адресная область в пределах системной виртуальной машины, то для каждого Win 32 - приложения и для каждого создаваемого ими потока используются отдельные очереди сообщений. Все это делает ошибку в Win 32 - приложении безопасной для остальных приложений.

Приложения Win 16 выполняются под Windows 9.x в режиме кооперативной многозначности в общем пространстве адресов в пределах системной виртуальной машины и имеют общую очередь сообщений. Ситуация с «зависанием» программы Win 16 потенциально более опасна: остальные программы Win16 перестанут получать сообщения и тоже «зависнут». Кроме того, заблокированное приложение Win 16 способно повлиять на приложение Win 32, несмотря на то, что они используют независимые очереди сообщений. Это объясняется тем, что если «зависание» происходит в момент обращения, например, к gdi.exe, то уже ни одно приложение не сможет обратиться к этому модулю. В этом случае система оказывается полностью заблокированной. Кроме того, прерванное приложение Win 16 может не вернуть системе используемые им системные ресурсы. Все системные ресурсы освободятся после того, как будут выгружены все текущие программы Win 16.

В конкретный момент времени каждый поток имеет определенный приоритет, измеряемый целым числом от 0 до 32. Управление процессором переходит к тому потоку, который на данный момент обладает самым высоким приоритетом. Приоритеты потоков динамически изменяются планировщиком, точнее существуют два планировщика – первичный и вторичный. Первичный – вычисляет приоритеты потоков. Вторичный – определяет количество процессорного времени, выделяемое каждому потоку.

Приоритет каждого потока определяется по: классу приоритета процесса, которому принадлежит поток; уровню приоритета потока внутри класса приоритета его процесса. Классы приоритетов Класс приоритета процесса и уровень приоритета потока определяют базовый приоритет потока. Уровни приоритетов Windows разделены на два класса: реального времени (приоритеты от 16 до 31) - используется для выполнения основных функций операционной системы и обычно не применяется для приложений; переменного приоритета (приоритет от 0 до 15) - определяет процессорный приоритет приложений; приоритет 0 возможен только для бесстраничного системного потока. Уровни приоритетов Процессам могут быть присвоены следующие базовые уровни приоритетов: низкий - запускает приложения с уровнем приоритета 4; обычный - запускает приложения с уровнем приоритета 7; высокий - запускает приложения с уровнем приоритета 13; реального времени - запускает приложения с уровнем приоритета 24. Примечание Не запускайте приложения с классом приоритета реального времени - это может привести к нестабильности в работе операционной системы.

Диспетчер задач руководствуется следующими правилами: - Повышается приоритет потоков, находящихся в ожидании пользовательского ввода (Необходимо для оперативного реагирования на действия пользователя). - Если поток обладает низшим приоритетом, то он начинает повышаться. - Периодически повышается приоритет каждого потока, чтобы приложения с низшим приоритетом не «зависали». - Если приоритет потока наивысший, он начинает понижаться. - Реализован метод наследования приоритета, который позволяет приложению с низшим приоритетом быстро повышать приоритет, чтобы освободить ресурсы, необходимые приложению с более высоким приоритетом.