Архитектура Windows. Основные понятия

Содержание

Слайд 2

Многозадачность

Невытесняющая многозадачность. Операционная система одновременно загружает в память два или более приложений,

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

Слайд 3

Многозадачность

Вытесняющая многозадачность. Операционная система сама передает управление от одной выполняемой программы другой

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

Слайд 4

Виртуальная память

Виртуальная память — технология управления памятью ЭВМ, разработанная для многозадачных операционных систем.

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

Слайд 5

Версии ОС Windows

Windows 1.0 (1985)
Windows 2.0 (1987)
Windows 2.1 (1987)
Windows 3.0 (1990)
Windows 3.1

Версии ОС Windows Windows 1.0 (1985) Windows 2.0 (1987) Windows 2.1 (1987)
(1992)
Windows 3.1/3.11(1993)

не были полноценными операционными системами

Последние версии поддерживали
новые режимы работы процессора
многозадачность (невытесняющую)
работу с сетью

Оболочки над DOS

Слайд 6

Версии ОС Windows

Windows 95
Windows 98
Windows ME.

Практически отсутствуют средства обеспечения безопасности и отказоустойчивости

Вытесняющая

Версии ОС Windows Windows 95 Windows 98 Windows ME. Практически отсутствуют средства
многозадачность
Поддержка виртуальной памяти
Поддержка TCP/IP
Plug and Play

Windows 9x

Слайд 7

Версии ОС Windows

Windows NT 3.1 (1993)
Windows NT 3.5 (1994)
Windows NT 3.51 (1995)
Windows

Версии ОС Windows Windows NT 3.1 (1993) Windows NT 3.5 (1994) Windows
NT 4.0 (1996)
Windows 2000 (2000)(5.0)
Windows XP (2001)(5.1)
Windows XP 64 (2003)(5.2)
Windows Server 2003 (2003)(5.2)
Windows Vista (2006)(6.0)
Windows Home Server (2007)(5.2)
Windows Server 2008 (2008)(6.0)
Windows Small Business Server (2008)(6.0)
Windows 7 (2009)(6.1)
Windows Server 2008 (2009)(6.1)
Windows Home Server 2011 (6.1)
Windows 8 (2012)(6.2)
Windows Server 2012(6.2)

Механизмы обеспечения безопасности
Квоты
Журналируемая файловая система
Шифрование
Большая стабильность по сравнению с Windows 9x

Windows NT

Слайд 8

Понятие WinAPI

Работа с аппаратным обеспечением DOS приложения

DOS приложение получает в своё распоряжение

Понятие WinAPI Работа с аппаратным обеспечением DOS приложения DOS приложение получает в
все ресурсы компьютера и может осуществлять ввод/вывод:
через функции, предоставляемые операционной системой
через функций базовой системы ввода/вывода (BIOS)
работая с устройствами напрямую.

Слайд 9

Понятие WinAPI

Общий принцип работы приложения в Windows

Значительная часть функций WinAPI поддерживается

Понятие WinAPI Общий принцип работы приложения в Windows Значительная часть функций WinAPI
всеми версиями Windows

WinAPI предоставляет унифицированный интерфейс для работы с ядром

Благодаря использованию WinAPI большая часть программ может работать с несколькими последними версиями Windows

Слайд 10

Понятие WinAPI

четыре типа пользовательских процессов

фиксированные процессы поддержки системы — например, процесс обработки

Понятие WinAPI четыре типа пользовательских процессов фиксированные процессы поддержки системы — например,
входа в систему и диспетчер сеансов

процессы сервисов (service processes) — носители Windows сервисов, такие как Task Scheduler и Spooler (диспетчер очереди печати).

пользовательские приложения

подсистемы окружения — реализованы как
часть поддержки среды операционной системы, предоставляемой пользователям и программистам. Изначально Windows NT поставлялась с тремя подсистемами окружения: Windows, POSIX и OS/2. Последняя была
изъята в Windows 2000. Windows XP исходно поставляется только с подсистемой Windows

Слайд 11

Понятие WinAPI

Упрощенная схема архитектуры Windows

WinAPI реализуется с помощью dll, которые обеспечивают трансляцию

Понятие WinAPI Упрощенная схема архитектуры Windows WinAPI реализуется с помощью dll, которые
документированных функций в соответствующие внутренние
(и обычно недокументированные) вызовы системных сервисов Windows

Слайд 12

Понятие WinAPI

UNICODE

WinAPI поддерживает два типа строк
ANSI (один символ занимает один байт)
UNICODE (один

Понятие WinAPI UNICODE WinAPI поддерживает два типа строк ANSI (один символ занимает
символ занимает два байта)

Большинство WinAPI функций имеет 2 реализации
ANSI – к имени функции добавляется A
UNICODE – к имени функции добавляется W
Например функция создания окна CreateWindowEx имеет две реализации
CreateWindowExA
CreateWindowExW

//Фрагмент файла winuser.h
#ifdef UNICODE #define CreateWindowEx CreateWindowExW #else #define CreateWindowEx CreateWindowExA #endif // !UNICODE

Слайд 13

Понятие WinAPI

SDK и UNICODE

Как включить/выключить UNICODE
В самом начале программы объявить/отменить объявление символов

Понятие WinAPI SDK и UNICODE Как включить/выключить UNICODE В самом начале программы
UNICODE и _UNICODE

Как объявить символ UNICODE

Слайд 14

Понятие WinAPI

SDK и UNICODE

Как определить строку UNICODE
Перед строкой добавить L

Макросы и определения

Понятие WinAPI SDK и UNICODE Как определить строку UNICODE Перед строкой добавить
для обеспечения совместимости
символ объявляется как TCHAR
указатель на строку как LPTSTR
строка определяется с помощью макроса _TEXT

Слайд 15

Понятие HANDLE

Windows – многозадачная операционная система.
Каждый процесс использует множество объектов.
Иногда процессы совместно

Понятие HANDLE Windows – многозадачная операционная система. Каждый процесс использует множество объектов.
используют объект
В общем случае процессу необходимо защитить свои объекты от действий других процессов

Примеры объектов:
Файл
Окно
Мьютекс
Динамически подключаемая библиотека

Процесс 2
объект4
объект2
объект5

Процесс 3
объект6
объект2
объект7

Процесс 1
объект1
объект2
объект3

Объект 2 совместно используется тремя процессами

Слайд 16

Понятие HANDLE

Созданием, удалением, учетом и фактической работой с объектами занимается ядро
Каждый объект

Понятие HANDLE Созданием, удалением, учетом и фактической работой с объектами занимается ядро
имеет уникальный идентификатор (или адрес)

Ядро
объект1
объект2
объект3
объект4
объект5
объект6
объект7

Слайд 17

Понятие HANDLE

Процессы обычно не работают с идентификаторами объектов
Для работы с объектом процесс

Понятие HANDLE Процессы обычно не работают с идентификаторами объектов Для работы с
имеет его «описатель» (HANDLE)
HANDLE имеет смысл только для конкретного процесса
По факту HANDLE – целое число. Microsoft не документирует смысл его значения

Пример реализации в некоторых версиях Windows

Процесс 1
HANDLE1
HANDLE2
HANDLE3

Имя файла: Архитектура-Windows.-Основные-понятия.pptx
Количество просмотров: 97
Количество скачиваний: 3