Программа по курсу: системное программирование в ос windows icon

Программа по курсу: системное программирование в ос windows


1 чел. помогло.

Смотрите также:
Методические указания по изучению дисциплины 5 "системное программирование"...
Программа вступительного экзамена по специальности 05. 13. 18 Математическое моделирование...
Лекция 8 Системное программирование. Системное проектирование взаимодействия процессов...
Программа по курсу: Практикум по программированию в ядре операционной системы windows...
Международная научно-практическая конференция «Первые шаги в науку» «Солнечная система...
Методические указания по выполнению лабораторных работ по курсу «визуальное программирование для...
Программа 3 Параллельные и распределенные вычисления в задачах математического моделирования...
Методические указания по курсу «Программирование под Windows»...
Рабочая программа по курсу "Функциональное программирование" Специальность...
Рабочая учебная программа по курсу «психология: введение в нейролингвистическое...
Отчет по практическим занятиям по курсу прикладные задачи программирования на тему Windows...
Элективный курс «Основы языка html...



скачать


Министерство образования и науки Российской Федерации

Московский физико-технический институт

(государственный университет)


УТВЕРЖДАЮ

Проректор по учебной работе

__________ Ю. А Самарский

__________________ 2008 г.


ПРОГРАММА


по курсу: СИСТЕМНОЕ ПРОГРАММИРОВАНИЕ В ОС WINDOWS (по выбору)

по направлению: 511600

факультеты: ФУПМ

кафедра: ИНФОРМАТИКИ

курс: 4

семестр: 7,8

лекции: 44 часов

практические занятия: 6 часов

консультации по ДЗ: 16 часов


^ ВСЕГО ЧАСОВ: 66

Программу составил: ассистент А.В. Костюшко


Программа обсуждена

на заседании кафедры информатики

28 августа 2008 года


Заведующий кафедрой, И.Б. Петров

профессор

1. Обзор семейства ОС Windows NT и основные концепции.

История семейства Windows NT. Цели и принципы семейства Windows NT. Основные концепции: Native и Win32 API, режимы ядра и пользователя, процессы и потоки, объекты и описатели, сервисы и экспортируемые функции, виртуальная и физическая память, безопасность, реестр, Unicode.

2. Компонент ядра Windows – Object Manager

3. Синхронизационные примитивы Windows.

4. Планировщик потоков(нитей) в Windows. (Kernel Scheduler)

5. Ожидание на объектах ядра. Диспетчер объектов. (Kernel Dispatcher).

6. Краткий обзор защищенного режима процессоров x86 и AMD64.

7. Диспетчер ловушек (обработка исключений, прерываний и вызовов системных сервисов).

8. Механизм SEH.

9. Виртуальная и физическая память. Компоненты и сервисы диспетчера памяти. Системные пулы памяти. Структура линейного адресного пространства. Страничное преобразование. Обработка ошибок страниц.

10. Виртуальная и физическая память. Дескрипторы виртуальных адресов. Рабочие наборы. База данных PFN. MDL.

Секции.

11. Процессы, потоки, задания. Внутреннее устройство процесса. Внутреннее устройства потока. Объекты задания. Обзор недокументированных структур.

12. Архитектура ввода-вывода.

13. Менеджер кеша.

14. LPC, Security.

15. Реестр, сервисы, WMI.

16. Ключевые драйверы в режиме ядра. Ключевые компоненты режима пользователя. Обзор подсистем ядра. Общая архитектура. Загрузка системы. Bootloader и ntldr. Инициализация ядра и запуск smss. Crss и Win32k.sys. Winlogon и lsass.

17. Работа сети в ОС Windows.

18. Структура PE файла.

19. Программирование драйверов общего назначения. Скелет драйвера. DriverEntry, AddDevice. Драйвера и устройства.

20. Базовые техники программирования драйверов: обработка ошибок, работа с памятью, работа со строками, списки и макросы.

21. Использование объектов синхронизации в драйверах.

22. Работа с IRP, системными нитями и workitems.


Домашние задания и лабораторные работы.


Лабораторная работа 1. Цель работы: Изучение комплекса программного обеспечения для разработки системного программного обеспечения; VmWare + WinDbg + DDK. Настройка совместной работы гостевой ОС Windows внутри виртуальной машины VmWare и отладчика WinDbg. Компиляция, загрузка и выгрузка драйвера. Команды отладчика (часть 1).


Лабораторная работа 2. Цель работы: Работа с проектом драйвера. Отладка драйвера. Команды отладчика (часть 2).


Лабораторная работа 3. Цель работы: Изучение программного продукта IDA Pro (дизассемблер).


Домашнее задание 1. Написать драйвер klogger и драйвер, его тестирующий. Задача драйера klogger – обечпечить возможность писать записи в журнал (log) с любого уровня irql. Драйвер должен быть выгружаемым. Процедура записи в журнал должна автоматически добавлять время записи и преобразовывать формат перевода строк из ‘\n’ в ‘\n\r’. Тестирующий драйвер должен в течении минуты делать тестовые записи из отдельной нити на PASSIVE_LEVEL irql, из DPC процедуры (вызываемой периодически по таймеру) на уровне irql, выбираемого каждый раз случайно из диапазона от DISPATCH_LEVEL до HIGH_LEVEL. Тестовая запись в журнал должна содержать адрес и идентификатор текущей исполняемой нити и процесса. В процессе работы тестового драйвера файл журнала должен быть доступен по чтению для программ пользовательского режима (например notepad).

Реализовать один из вариантов улучшения драйвера kLogger.


Домашнее задание 2. Написать драйвер, использующий недокументированные возможности Windows. (задание для команды из 3х-4х студентов)


Домашнее задание 3. Исследовать небольшую часть одной из подсистем ядра Windows. Написать отчет-реферат. (задание для команды из 3х-4х студентов)


Домашнее задание 4. Написать драйвер, модифицирующий исследование поведение ОС Windows. (задание для команды из 3х-4х студентов)


^ СПИСОК ЛИТЕРАТУРЫ

[1] Д.Соломон, М.Руссинович. Внутреннее устройство Microsoft Windows 2000. Мастер-класс. – СПб.: Питер; М.: Издательско-торговый дом “Русская Редакция”, 2001.

[2] С. Шрайбер. Недокументированные возможности Windows 2000. Библиотека программиста. – СПб.:Питер, 2002.

[3] Г. Неббет. Справочник по базовым функциям API Windows NT/2000. – М.: Издательский дом “Вильямс”, 2002.

[4] Walter Oney. Programming the Microsoft Windows Driver Model. – Microsoft Press, 1999.

ЭЛЕКТРОННЫЕ МАТЕРИАЛЫ

[5] MSDN – интернет, http://msdn.microsoft.com/

[6] Слайды к лекциям Дэвида Проберта в Токийском университете (0-16. – интернет,
http://www.i.u-tokyo.ac.jp/ss/lecture/

[7] Driver Development Kit Reference. – электронная справка к программному продукту.





Скачать 47,83 Kb.
оставить комментарий
Дата29.09.2011
Размер47,83 Kb.
ТипПрограмма, Образовательные материалы
Добавить документ в свой блог или на сайт

отлично
  1
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Документы

наверх