Похожие презентации:
Понятие сетевой ОС. Требования к системе
1. Архитектура опрерационных систем
Курс АОС.Тема
«Введение»
Понятие сетевой ОС
Требования к системе
Москалев А.А.
Москалев А. Архитектура операционных систем
2. Сетевая операционная система
07.12.2009Москалев А. Архитектура операционных систем
2
3. Сетевая операционная система (2)
07.12.2009Москалев А. Архитектура операционных систем
3
4. Сетевая операционная система (3)
07.12.2009Москалев А. Архитектура операционных систем
4
5. Основные требования (Goals )
Расширяемость (Extensibility)Приспосабливаемость к возрастающим требованиям и возможностям.
Переносимость (Portability)
Возможность использования на разных аппаратных платформах и
архитектурах.
Достоверность и надежность (Reliability and Robustness)
Защита от внутренних ошибок.
Приложение не должно зависеть от других приложений или системных
задач.
Совместимость (Compatibility)
User interface и APIs должны быть совместимы со старыми версиями
Windows и другими старыми системами.
Возможность взаимодействия с UNIX, OS/2, и NetWare.
Производительность (Performance)
Система должна работать максимально быстро.
07.12.2009
Москалев А. Архитектура операционных систем
5
6. Переносимость (portability) Windows NT
HAL (Hardware Abstraction Layer):Поддержка для x86, MIPS, Alpha AXP(изначально), PowerPC (NT
3.51), Itanium (Windows XP/2003)
Машинно-зависимые функции локализованы в HAL
Многослойная архитектура (Layered design):
Специфичные для данной архитектуры функции локализуются в
ядре (Kernel)
Компоненты ядра Windows пишутся преимущественно на
C:
Исполнительная система, утилиты, драйверы
UI и подсистема GDI – написаны на C++
HW-зависимые и определяющие производительность части
пишутся на ассемблере:
обработчики прерываний (int trap handler)
переключение контекста (context switching)
07.12.2009
Москалев А. Архитектура операционных систем
6
7. Переносимость (portability)
Аппаратно-независимая часть(на языке высокого уровня,
например С)
Транслятор C для машины А
ОС для А
Транслятор C для машины B
ОС для B
Код аппаратно-независимой
части для машины A
Код аппаратно-независимой
части для машины B
Код аппаратно-зависимой части
для машины A
Код аппаратно-зависимой части
для машины B
ASSEMBLER для машины А
ASSEMBLER для машины B
Аппаратно-зависимая часть
(на языке ASSEMBLER для
машины A)
Аппаратно-зависимая часть
(на языке ASSEMBLER для
машины B)
07.12.2009
Москалев А. Архитектура операционных систем
7
8. Совместимость (Compatibility)
Операционная система ОС1 будетсовместима с операционной системой ОС2
если программу, написанную для ОС2, можно
будет выполнять в среде ОС1
07.12.2009
Москалев А. Архитектура операционных систем
8
9. Прикладные программные среды(1)
07.12.2009Москалев А. Архитектура операционных систем
9
10. Прикладные программные среды(2)
07.12.2009Москалев А. Архитектура операционных систем
10
11. Прикладные программные среды(3)
07.12.2009Москалев А. Архитектура операционных систем
11
12. Windows API и прикладные среды ( subsystems)
Windows API (application programming interface):Общий прикладной интерфейс для Windows
NT/2000/XP/2003, Windows 95/98/ME and Windows CE
ОС реализуют (разные) подмножества API
MSDN: http://msdn.microsoft.com
Windows поддерживают несколько прикладных сред
(подсистем) с разными API:
Windows (primary), POSIX, OS/2
Приложения пользовательского режима получают доступ к
функциональности ОС через подсистемы
Подсистема(прикладная программная среда)
определяет API, особенности организации
процессов и семантику файловой системы
07.12.2009
Москалев А. Архитектура операционных систем
12
13. 64-bit & 32-bit Windows APIs
64-bit & 32-bit Windows APIs64 разрядными являются указатели и типы данных, производные
от указателей, например дескрипторы ( handles)
64 – разр и некоторые другие, WPARAM, LPARAM, LRESULT, SIZE_T
Остальные остаются 32-разряда( INT, DWRD, LONG и т.д.)
Только пять замен в API !
Четыре для данных класса окна (Window/Class Data)
(_ptr) версии вызовов
Обновления констант для этих вызовов
Одна (_ptr) версия для свойств полосы прокрутки
API
Data Model
int
long
pointer
Win32
ILP32
32
32
32
Win64
LLP64
32
32
64
UNIXes
LP64
32
64
64
07.12.2009
Москалев А. Архитектура операционных систем
Win32 и Win64
вместе
называются
Windows API
13
14. Сервисы, функции и процедуры
API функции Windows :Документированные вызываемые из пользовательского режима
процедуры
CreateProcess, CreateFile, GetMessage
Системные сервисы Windows :
Недокументированные функции, вызываемые из режима
пользователя
NtCreateProcess используется в CreateProcess (Windows) и в
fork() (POSIX) как внутренний сервис
Внутренние процедуры Windows :
Процедуры, включенные в Windows Executive, Kernel или HAL
Вызываемые только из режима ядра(драйверы устройств, NT OS
компоненты)
ExAllocatePool выделяет память из системной кучи Windows
07.12.2009
Москалев А. Архитектура операционных систем
14