Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория / Теория / ОСиСП презентация.ppt
Скачиваний:
28
Добавлен:
11.05.2015
Размер:
496.13 Кб
Скачать

Операционные системы и системное программирование

Кирилл Сурков, Дмитрий Сурков, Юрий Четырько

©Полное или частичное копирование материалов без письменного разрешения авторов запрещено.

1

Контакты:

kirill.surkov@gmail.com

http://vk.com/kirill.surkov

2

Введение в ОС Windows

Модель программного интерфейса операционной системы Windows.

API (Application Programming Interface).

Процедурный API. Единая точка доступа к службе – за вызовом процедуры стоит программное прерывание.

Объектный подход. Отсутствие указателей на внутренние структуры данных ОС. Применение описателей (дескрипторов) вместо указателей.

«Венгерская» нотация в идентификаторах.

Средства программирования: Visual Studio, Delphi.

3

Введение в ОС Windows

Упрощенная модель архитектуры ОС:

Пользовате

Application

 

льский

 

режим

 

 

(User mode)

NtDll.dll

OS API

 

Режим

Operating System

 

ядра

 

 

(Kernel

Hal.dll

Hardware API

mode)

 

 

 

Hardware

 

4

Введение в ОС Windows

 

Упрощенная модель памяти (32-разрядной

ОС):

 

0x00000000

Собственна

Application

 

я память

 

процесса,

 

 

2 ГБ

NtDll.dll

 

 

Виртуальная

Память,

 

память, 4 ГБ

Operating System

 

разделяема

 

я всеми

 

 

процессами

Hal.dll

0xFFFFFFFF

2 ГБ

,

 

 

 

Hardware

 

5

Введение в ОС Windows

Архитектура приложения в пользовательском режиме (32-разрядная ОС):

Application

 

Kernel32.dll Advapi32.dll User32.dll

Gdi32.dll

NtDll.dll

 

Advapi32.dll – управление реестром, безопасностью, …

User32.dll – управление окнами и сообщениями, …

Gdi32.dll – графический вывод.

NtDll.dll – интерфейсный модуль ядра.

6

Введение в ОС Windows

Архитектура системы в режиме ядра:

Ntoskrnl.exe: Executive + Kernel

Win32k.sys

Ntfs.sys

Tcpip.sys

Other

 

Ndis.sys

drivers

 

 

 

 

Hal.dll

 

процессами и потоками, памятью, безопасностью, вводом-выводом, сетью, обменом данными.

Ntoskrnl.exe (ядро) – планирование потоков, обработка прерываний и исключений, реализация объектов ядра.

Ntfs.sys, Tcpip.sys, Ndis.sys, … – драйверы устройств.

Win32k.sys – реализация функций User32.dll и Gdi32.dll.

Hal.dll – интерфейсный модуль всей аппаратуры.

7