Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
yubuzova_umk_tehnol_sistem_2011.pdf
Скачиваний:
13
Добавлен:
13.03.2015
Размер:
660.42 Кб
Скачать

Структурная обработка исключений

2

1

3

3

 

 

 

 

 

 

Система информационной безопасности

4

1

6

6

 

 

 

 

 

 

Всего (часов)

30

15

45

45

2. 2 Конспект лекционных занятий

Лекция 1. Введение. Основные понятия. Основы программирования в операционной системе Windows.

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

В классической структуре программ, можно выделить три типа структур:

-диалоговая;

-консольная;

-безоконная.

Несколько общих положений о программировании в Windows.

1. Программирование в Windows основывается на использовании функций

API.

2. Список функций API и их описание лучше всего брать из файла WIN32.HLP, который поставляется с пакетом Borland C++.

3.Главным элементом программы в среде Windows является окно.

4.Окно может содержать элементы управления: кнопки, списки, окна редактирования и др.

5.Операционная система Windows использует линейную модель памяти.

6.Следствием пункта 5 является то, что мы фактически не ограничены в объеме данных, кода или стека (объеме локальных переменных).

7.Операционная система Windows является многозадачной средой.

Windows API (application programming interfaces) - общее наименование

набора базовых функций интерфейсов программирования приложений операционных систем семейства Windows корпорации «Майкрософт». Является самым прямым способом взаимодействия приложений с Windows.

Win32 - 32-разрядный API для современных версийWindows. Базовые функции этого API реализованы в DLL kernel32.dll и advapi32.dll.

В современных версиях Windows, работу Win32 GUI обеспечивают два мо-

дуля: csrss.exe (Client/Server Runtime Subsystem), работающий в пользователь-

ском режиме, и win32k.sys в режиме ядра. Работу системных Win32 API обеспе-

чивает ядро - ntoskrnl.exe

Win64 - 64-разрядная версия Win32, содержащая дополнительные функции для использования на 64-разрядных компьютерах.

Win32 АPI включает более 1500 функций. Классификация функций API:

1.Управление Windows.

2.Элементы управления Windows.

10

3.Настройка.

4.Графические средства.

5.Системные средства.

6.Языковая поддержка.

7.Сетевые средства.

Вызов функции API. Из файла помощи выберем любую функциюAPI, на-

пример, MessageBox:

int MessageBox (HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);

Данная функция выводит на экран окно с сообщением и кнопкой(или кнопками) выхода. Смысл параметров:

-hWnd -дескриптор окна, в котором будет появляться окно-сообщение;

-lpText - текст, который будет появляться в окне;

-lpCaption - текст в заголовке окна;

-Type - тип окна, в частности можно определить количество кнопок выхо-

да.

Типы параметров. Все они 32-битные целые числа:

-HWND - 32-битное целое;

-LPCTSTR - 32-битный указатель на строку;

-UINT - 32-битное целое.

Классическая структура программы подWindows имеет главное окно, и следовательно, процедуру главного окна. В коде программы можно выделить следующие секции:

-регистрация класса окон;

-создание главного окна;

-цикл обработки очереди сообщений;

-процедура главного окна.

Регистрация класса окон. Регистрация класса окон осуществляется с помощью функции RegisterClassA, единственным параметром которой является указатель на структуру WNDCLASS, содержащую информацию об окне.

Создание окна. На основе зарегистрированного класса с помощью функции CreateWindowExA (или CreateWindowA) можно создать экземпляр окна.

Цикл обработки очереди сообщений. Вот как выглядит этот цикл на язы-

ке Си:

while (GetMessage (&msg, NULL, 0, 0))

{

TranslateMessage (&msg);

DispatchMessage(&msg);

}

Функция GetMessage() «отлавливает» очередное сообщение из ряда сообщений данного приложения и помещает его в структуру MSG.

TranslateMessage ее компетенция касается сообщенийWM_KEYDOWN и WM_KEYUP, которые транслируются в WM_CHAR и WM_DEADCHAR, а также

11

WM_SYSKEYDOWN и WM_SYSKEYUP, преобразующиеся в WM_SYSCHAR и WM_SYSDEADCHAR.

Процедура главного окна. Вот прототип функции окна на языке С:

LRESULT CALLBACK WindowFunc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

Передаваемые параметры:

-hwnd - идентификатор окна;

-message - идентификатор сообщения;

-wParam и lParam - параметры, уточняющие смысл сообщения. Архитектура Windows. Ядро отделено от исполнительных компонентов и

выполняет простое управление потоками. Все остальные задачи выполняют исполнительные компоненты. Некоторые из них реализованы по модульной схеме.

Рисунок 1.1 - Архитектура Windows

Важные компоненты:

-System Service Interface;

-Configuration Manager;

-I/O Manager;

-Virtual Machine Manager , VMM;

-Local Procedure Call, LPC;

-Process Manager;

-Object Manager.

Новый девиз и главные концепции ОСWindows Vista - Clear, Confident, Connected.

Три ключевые технологии ОС - Avalon, Indigo, WinFX.

12

Avalon - кодовое имя технологии WPF (Windows Presentation Foundation),

графическая подсистема, может заменить устаревшие библиотекуuser32.dll и GDI (Graphics Device Interface) интерфейс графических устройств, отвечающие за графику в Windows.

Indigo - кодовое название WCF (Windows Communication Windows). WCF-

это технология для построения и запуска соединенных систем, новая архитектура Web-сервисов, обеспечивающая безопасный и надежный обмен данными.

WinFX - новый набор API OC Windows, отвечающий всем современным требованиям.

Адресация памяти. В семействе процессоровIA-32 выбор метода обращения к памяти определяется режимом работы процессора.

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

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

Ввиртуальном режиме адресации процессора8086, работает в защищенном режиме. Для каждой задачи создается собственная виртуальная машина, которой выделяется изолированная область памяти размером 1 Мбайт, и полностью эмулируется работа процессора 80x86 в реальном режиме адресации.

Линейно-сегментная модель памяти. В этой модели(flat segmentation model) дескрипторы всех сегментов указывают на один и тот же сегмент памяти, который соответствует всему 32-разрядному физическому адресному пространству компьютера.

Рисунок 1. 2 - Линейно-сегментная модель памяти

В защищенном режиме каждый сегмент определяется с помощью соответствующего дескриптора - 64-разрядного числа, хранящегося в специальной сис-

13

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]