- •Введение
- •1. Основные понятия в операционных системах
- •1.1. Классификация и функции операционных систем
- •1.2. Ос общего назначения и реального времени
- •1.3. Выполнение команд в вычислительной системе
- •1.4. Прерывания
- •1.5 Архитектуры операционных систем
- •1.6. Управление оперативной памятью вычислительной системы
- •1.7. Общие сведения о процессах и потоках
- •2. Операционная система windows
- •2.1. Версии операционной системы Windows
- •2.2. Архитектура операционной системы windows
- •2.3. Процессы и потоки в Windows
- •2.4. Взаимодействие процессов
- •2.5. Управление потоками в Windows
- •2.6. Файловые системы Windows
- •2.7. Установка и последовательность загрузки Windows
- •Последовательность загрузки Windows xp
- •2.8. Интерпретатор команд и пакетные файлы
- •2.9. Конфигурирование Windows
- •3. Операционная система qnx neutrino
- •3.1. Версии операционной системы qnx Neutrino
- •3.2. Архитектура операционной системы qnx Neutrino
- •3.3. Процессы в qnx6
- •Завершение процесса
- •3.4. Потоки в qnx6
- •Завершение потока
- •3.5. Управление потоками и процессами в qnx6
- •Механизмы ipc
- •Средства синхронизации в qnx
- •3.6. Файловые системы qnx
- •Типы файлов
- •3.7. Инсталляция и последовательность загрузки qnx
- •3.8. Интерпретаторы команд и пакетные файлы в qnx
- •3.9. Конфигурирование qnx
- •4. Виртуальные машины
- •4.1. Общие сведения о виртуальных машинах
- •4.2. Работа с виртуальной машиной VmWare
- •5. Защита от сбоев и несанкционированного доступа
- •5.1. Принципы построения систем безопасности
- •5.2. Безопасность операционной системы windows
- •6. Сетевые возможности операционных систем
- •6.1. Аппратаное обеспечение локальных сетей
- •6.2. Сети Windows
- •6.3. Локальная сеть на основе qnet
- •6.4. Глобальные сети
- •7. Многопроцессорные системы
- •7.1. Архитектуры многопроцессорных операционных систем
- •7.2. Принципы функционирования smp
- •7.3. Принципы функционирования кластеров
- •Список использованной литературы
- •Компилятор
2.2. Архитектура операционной системы windows
ОС семейства Windows NT обладают модульной структурой, что обеспечивает гибкость и позволяет работать на различных аппаратных платформах (Intel, Dec) и поддерживает приложения, написанные для различных ОС. Windows различает прикладные программы и программы ОС, к последним, относятся: исполняющая система, микроядро, драйверы устройств и уровень аппаратных абстракций, которые выполняются в режиме ядра (рис.21). Эти программы имеют доступ к системным данным и аппаратному обеспечению.
Остальные программы, работающие в пользовательском режиме, имеют ограниченный доступ к системным данным, а для доступа к аппаратному обеспечению могут использоваться только API [6]. Для обеспечения переносимости большая часть исполняющей системы рассматривает аппаратное обеспечение в виде следующих уровней (рис.21):
Рис.21. Структурная схема Windows XP
1. Уровень аппаратных абстракций: на нём формируется отображение между общими каналами ОС и ответными сигналами аппаратного обеспечения для конкретной платформыю. Этот уровень отделяет ОС от особенностей аппаратной платформы, благодаря чему системная шина, контроллер прямого доступа в память (ПДП), контроллер прерываний, системные таймеры и память выглядят с точки зрения ядра одинаково. Кроме того, на этом уровне поддерживается симметричная многопроцессорность (SMP).
2. Микроядро: в него входят наиболее часто используемые компоненты ОС. Ядро отвечает за распределение ресурсов между процессами, переключение пототоков и синхронизацию. В отличии от остальной части исполняющей системы и процессов, исполняемых на уровне пользователя код микроядра не разделяется на потоки, таким образом, это единственная часть ОС, которая не может быть вытеснена или выгружена на диск.
3. Драйверы устройств: к ним относятся как ФС, так и драйверы аппаратных устройств, которые преобразуют поступающие от пользователя вызовы функций ввода/вывода в запросы для конкретных устройств.
4 .Исполняющая система включает модули, обеспечивающие поддержку её функций и предоставляющие работающим в пользовательском режиме программам соответствующие API.
Исполняющая система:
Диспетчер ввода/вывода: поддерживает доступность для приложений ввода/вывода, отвечает за координацию работы драйверов устройств, выполняющих дальнейшую обработку и реализует все API I/O ОС с помощью диспетчера объектов следит за безопасностью, именованием устройств и ФС.
Диспетчер объектов: создаёт и удаляет объекты и абстрактные типы данных исполняющей системы, а так же уровней или эти объекты и абстрактные типы данных используются для предоставления таких ресурсов как процессы, потоки и объекты синхронизации. Он создаёт и обеспечивает выполнение стандартных правил поддержки объектов именования и безопасность, кроме того, он создаёт диспетчер объектов, в котором содержится информация о правах доступа и указатель на объект.
Монитор безопасности обращений: обеспечивает выполнение правил аудита и прав доступа одними и теми же служебными программами для всех защищённых объектов включая файлы, процессы, адресные пространства и устройства ввода/вывода.
Диспетчер процессов и потоков: создаёт и удаляет объекты, а так же следит за процессами и потоками.
Средства локального вызова процедуры: устанавливает взаимосвязь между приложением и исполняющей подсистемой по модели «клиент-сервер» при распределённой обработке данных.
Диспетчер виртуальной памяти: отображает виртуальные адреса адресного пространства процессов на физические страницы основной памяти компьютера и обеспечивает управление ими.
Диспетчер кеша: повышает производительность файлового I/O путём хранения в ОП тех данных с диска, к которым недавно проводилось обращение, кроме того, он обеспечивает отложенную запись на диск, при которой некоторое время информация для обновления дисковых файлов хранится в памяти.
Диспетчер окон: создаёт оконный (экранный) интерфейс и управляет графическими устройствами.
5. Пользовательские процессы:
Специальные процессы системной поддержки: к ним относятся служебные программы, которые не входят в ОС, например, диспетчер сессий и процесс входа в систему.
Сервисные процессы.
Приложения пользователя: Win32, POSIX, Os/2, Win 3.1, MS-DOS.
Подсистемы операционной среды: предоставляют приложениям пользователя сервисы ОС, обеспечивая таким образом среду ОС, поддерживаются указанные выше подсистемы, в каждую из них входят DLL, преобразующие вызовы приложений пользователя в вызовы ОС.
Наиболее важной из подсистем является Win32 – это API, который реализован для данной ОС (семейство Windows NT), его основные функции:
Ввод с клавиатуры и мыши, вывод на печать, динамические библиотеки (DLL), коммуникации, консоли, операции с буфером обмена, сервисы, системная информация, управление окнами, реестром, безопасность, время, графические фильтры, журнал регистра событий, конвейеры и т. д.
Структура защитной системы и приложений выполнена в соответствии с вычислительной моделью клиент-сервер. Она позволяет упростить её и повысить надежность, т. к. любой модуль используя систему запускается в виде отдельного процесса которому отводится своя область памяти защищённая от воздействия других моделей. Кроме того клиент не может непосредственно обращаться к аппаратному обеспечению или изменять содержимое той области памяти, в которой находится исполняемая система, таким образом, сбой в работе одного из клиентов не приводит к аварийному отказу или повреждению остальной части ОС.
Приложение с помощью локальных вызовов представляются обычными средствами обмена информацией с исполнительной системой. Процесс передачи сообщений скрыт от клиента функциями-заглушками из dll. При вызове API приложения заглушка пересылает переданные при вызове параметры в виде сообщений подсистемы сервера, которые реализуют вызов.
Обеспечивает распределённое вычисление ОС. Локальный сервер может передавать сообщения от локального приложения клиента для обработки или удалённого сервера. Клиенту не нужна информация о том, как обрабатывается запрос локально или удалённо, ведь способ обработки может измениться динамически в зависимости от изменчивости конфигурации и загруженности системы.
Интегрированная среда разработки (англ. IDE, Integrated development environment — система программных средств) Microsoft Visual Studio используется для разработки приложений для операционной системы Windows. Microsoft Visual Studio — линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств [1]. Visual Studio включает один или несколько компонентов из следующих: Visual Basic .NET, а до его появления — Visual Basic; Visual C++ ; Visual C#. Многие варианты поставки также включают Microsoft SQL Server либо Microsoft SQL Server Express
Обычно среда разработки включает в себя текстовый редактор, компилятор и/или интерпретатор, средства автоматизации сборки и отладчик. Иногда также содержит средства для интеграции с системами управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя [7,8]. Многие современные среды разработки также включают браузер классов, инспектор объектов и диаграмму иерархии классов — для использования при объектно-ориентированной разработке ПО. Хотя и существуют среды разработки, предназначенные для нескольких языков — такие как Eclipse, NetBeans или Microsoft Visual Studio, обычно среда разработки предназначается для одного определённого языка программирования — как например, Visual Basic.