Рабочая программа дисциплины (модуля) по дисциплине: Системное программирование по направлению



Скачать 67.63 Kb.
Pdf просмотр
Дата22.12.2016
Размер67.63 Kb.
Просмотров374
Скачиваний0
ТипРабочая программа

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
«Московский физико-технический институт (государственный университет)»
Рабочая программа дисциплины (модуля)
по дисциплине:
Системное программирование
по направлению:
Прикладные математика и физика (бакалавриат)
профиль подготовки:
Компьютерные технологии и интеллектуальный анализ данных
факультет:
управления и прикладной математики
кафедра:
теоретической и прикладной информатики
курс:
4
квалификация:
бакалавр
Семестр, формы промежуточной аттестации: 8(Весенний) - Экзамен
Аудиторных часов: 60 всего, в том числе:
лекции: 30 час.
практические (семинарские) занятия: 0 час.
лабораторные занятия: 30 час.
Самостоятельная работа: 18 час.
Подготовка к экзамену: 30 час.
Всего часов: 108, всего зач. ед.: 3
Программу составил:
А.В. Костюшко
Программа обсуждена на заседании кафедры
10 июля 2015 г.
СОГЛАСОВАНО:
Декан
А.А. Шананин
Начальник учебного управления
И.Р. Гарайшина
«УТВЕРЖДАЮ
»
Проректор по учебной и методической работе
Д.А. Зубцов
факультета управления и прикладной математики

1. Цели и задачи
Цель дисциплины
Изучение основ системного программирования.
Задачи дисциплины
• получение студентами базовых знаний в области системного программирования;
• создание своей программы на С (драйвер mousefilter.sys);
• приобретение практических навыков в создании приложений;
• освоение студентами средств для совместной проектной работы.
2. Место дисциплины (модуля) в структуре образовательной программы
Дисциплина "Системное программирование" относится к вариативной части образовательной программы
Дисциплина «Системное программирование» базируется на дисциплинах:
Информатика.
Дисциплина «Системное программирование» предшествует изучению дисциплин:
Научно-исследовательская работа.
3. Перечень планируемых результатов обучения по дисциплине (модулю), соотнесенных с
планируемыми результатами освоения образовательной программы
Освоение дисциплины направлено на формирование следующих общекультурных, общепрофессиональных и профессиональных компетенций:
способность применять теорию и методы математики для построения качественных и количественных моделей объектов и процессов в естественнонаучной сфере деятельности
(ОПК-2);
способность применять полученные знания для анализа систем, процессов и методов (ОПК-4);
способность выбирать и применять подходящее оборудование, инструменты и методы исследований для решения задач в избранной предметной области (ПК-3);
способность критически оценивать применимость применяемых методик и методов (ПК-4).
В результате освоения дисциплины обучающиеся должны
знать:
− основные понятия курса "Системное программирование";
− современные проблемы информатики в области системного программирования.
уметь:
− работать в команде;
− создать свои примеры ряда системных программ;
− пользоваться своими знаниями для решения фундаментальных и прикладных технологических задач;
− самостоятельно разбираться в работе закрытых частей на основании документации;
− делать качественные выводы при переходе к предельным условиям в изучаемых проблемах;
− эффективно использовать информационные технологии и ком-пьютерную технику для достижения необходимых теоретических и прикладных результатов.
владеть:

владеть:
− навыками освоения большого объема информации;
− навыками самостоятельной работы в лаборатории и сети Интернет;
− культурой постановки и моделирования задач информатики;
− практикой исследования и решения теоретических и прикладных задач.
4. Содержание дисциплины (модуля), структурированное по темам (разделам) с указанием
отведенного на них количества академических часов и видов учебных занятий
4.1. Разделы дисциплины (модуля) и трудоемкости по видам учебных занятий

Тема (раздел) дисциплины
Виды учебных занятий, включая самостоятельную работу
Лекции
Практич.
(семинар.) задания
Лаборат. работы
Задания, курсовые работы
Самост. работа
1
Изучение комплекса
ПО
для разработки драйверов режима ядра
15 15 9
2
Использование объектов синхронизации в драйверах
15 15 9
Итого часов
30 30 18
Подготовка к экзамену
30 час.
Общая трудоёмкость
108 час., 3 зач.ед.
4.2. Содержание дисциплины (модуля), структурированное по темам (разделам)
Семестр: 8 (Весенний)
1. Изучение комплекса ПО для разработки драйверов режима ядра
1-2) Изучение комплекса программного обеспечения для разработки драйверов режима ядра.
Developing environment. Инструментарий разработчика режима ядра и его настройка.
Программный пакет driver development kit (DDK), отладчик ядра WinDbg, виртуальная машина Windows XP и программа Vmware Player, дизассемблер IDA. Настройка гостевой
ОС. Практикум по отладчику WinDbg, часть 1 (базовые команды).
3) Обзор защищенного режима современных процессоров. 64 битный режим. Расширенный набор регистров пользователя и адресация. Страничное преобразование. Обработка прерывания. Практикум по отладчику WinDbg, часть 2 (просмотр процессорных структур).
4-5) Простейший драйвер режима ядра и консольная утилита. DriverEntry, DriverUnload,
IoCreateDevice, Dispatch callbacks, IOCTLs. Инсталляция через Service Manager. Загрузка и выгрузка драйвера. Простейшее взаимодействие драйвера и утилиты. Практикум по отладчику WinDbg, часть 3 (точки останова, приемы отладки).
6-7) Базовые техники программирования драйверов: обработка ошибок, работа со строками,
работа с памятью, списки и макросы. NTSTATUS, BugCheck Codes, LIST_ENTRY, Lookaside lists, Unicode strings. Функции работы с менеджерои объектов. Отладочные приемы:
DBG,ASSERT, __debugbreak().

2. Использование объектов синхронизации в драйверах
8-9) Использование объектов синхронизации в драйверах. Синхронизация и синхронизация примитивы Windows, ожидание на объектах ядра. Irql, Spinlocks, Dispatcher (Event, Semap,
Mutex, Timer, Thread), APC, DPC, FastMutex, Atomic, Resources.
Работа с системными нитями. Работа с файлами из режима ядра. Асинхронная работа в
Windows. Workitems.
10-11) Структура PE файла. Работа с IDA. Обратное дизассемблирование mousefilter.sys
Подсистема ввода-вывода. Стек драйверов. Работа с IRP. Completion, Cancel, PassThrough.
Обработчики ISR. Краткие сведения об inf файлах.
Обратное дизассемблирование драйвера mousefilter.sys
12) Native API. Использование недокументированных функций Windows.
5. Описание материально-технической базы, необходимой для осуществления
образовательного процесса по дисциплине (модулю)
Необходимое оборудование для лекций и практических занятий: компьютер и мультимедийное оборудование (проектор, маркерная доска, связь с Интернетом).
Необходимое программное обеспечение: текстовый редактор.
6. Перечень основной и дополнительной литературы, необходимой для освоения дисциплины
(модуля)
Основная литература
1. Д. Соломон, М. Руссинович. Внутреннее устройство Microsoft Windows 2000. Мастер-класс.
- СПб.: Питер; М.: Издательско-торговый дом "Русская Редакция", 2001.
2. Г. Неббет. Справочник по базовым функциям API Windows NT/2000. - М.: Издательский дом "Вильямс", 2002.
Дополнительная литература
1. Walter Oney. Programming the Microsoft Windows Driver Model. - Microsoft Press, 1999.
ЭЛЕКТРОННЫЕ МАТЕРИАЛЫ IDA Pro Book
2. Driver Development Kit Reference. - электронная справка к программному продукту.
3. Документация по процессорам семейств IA-32 и IA-64
7. Перечень ресурсов информационно-телекоммуникационной сети "Интернет", необходимых
для освоения дисциплины (модуля)
MSDN - http://msdn.microsoft.com
8. Перечень информационных технологий, используемых при осуществлении
образовательного процесса по дисциплине (модулю), включая перечень программного
обеспечения и информационных справочных систем (при необходимости)
На лекционных занятиях используются мультимедийные технологии, включая демонстрацию презентаций. Используются электронные учебники.
9. Методические указания для обучающихся по освоению дисциплины

Студент, изучающий дисциплину, должен с одной стороны, овладеть общим понятийным аппаратом, а с другой стороны, должен научиться применять теоретические знания на практике.
В результате изучения дисциплины студент должен знать основные определения, понятия,
аксиомы.
Успешное освоение курса требует напряжённой самостоятельной работы студента. В
программе курса приведено минимально необходимое время для работы студента над темой.
Самостоятельная работа включает в себя:
– чтение и конспектирование рекомендованной литературы;
– проработку учебного материала (по конспектам лекций, учебной и научной литературе),
подготовку ответов на вопросы, предназначенных для самостоятельного изучения,
доказательство отдельных утверждений, свойств;
– выполнение лабораторных работ, для осознание связей между теорией и практическими навыками;
– подготовку к экзаменуу зачету.
Руководство и контроль за самостоятельной работой студента осуществляется в форме индивидуальных консультаций.
Важно добиться понимания изучаемого материала, а не механического его запоминания. При затруднении изучения отдельных тем, вопросов, следует обращаться за консультациями к лектору.
Задачи:
Задача 1. Реализовать на С драйвер mousefilter.sys
Задача 2. Tbd
Задача 3. tbd
10. Фонд оценочных средств для проведения промежуточной аттестации по итогам обучения
Приложение

ПРИЛОЖЕНИЕ
ФОНД ОЦЕНОЧНЫХ СРЕДСТВ
ДЛЯ ПРОВЕДЕНИЯ ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ ОБУЧАЮЩИХСЯ
ПО ДИСЦИПЛИНЕ
по направлению:
Прикладные математика и физика (бакалавриат)
профиль подготовки:
Компьютерные технологии и интеллектуальный анализ данных
факультет:
управления и прикладной математики
кафедра (название):
теоретической и прикладной информатики
курс:
4
квалификация:
бакалавр
Семестр, формы промежуточной аттестации: 8(Весенний) - Экзамен
Разработчик:
А.В. Костюшко

1. Компетенции, формируемые в процессе изучения дисциплины
Освоение дисциплины направлено на формирование у обучающегося следующих общекультурных
(ОК), общепрофессиональных (ОПК) и профессиональных (ПК) компетенций:
способность применять теорию и методы математики для построения качественных и количественных моделей объектов и процессов в естественнонаучной сфере деятельности
(ОПК-2);
способность применять полученные знания для анализа систем, процессов и методов (ОПК-4);
способность выбирать и применять подходящее оборудование, инструменты и методы исследований для решения задач в избранной предметной области (ПК-3);
способность критически оценивать применимость применяемых методик и методов (ПК-4).
2. Показатели оценивания компетенций
В результате изучения дисциплины «Системное программирование» обучающийся должен:
знать:
− основные понятия курса "Системное программирование";
− современные проблемы информатики в области системного программирования.
уметь:
− работать в команде;
− создать свои примеры ряда системных программ;
− пользоваться своими знаниями для решения фундаментальных и прикладных технологических задач;
− самостоятельно разбираться в работе закрытых частей на основании документации;
− делать качественные выводы при переходе к предельным условиям в изучаемых проблемах;
− эффективно использовать информационные технологии и ком-пьютерную технику для достижения необходимых теоретических и прикладных результатов.
владеть:
− навыками освоения большого объема информации;
− навыками самостоятельной работы в лаборатории и сети Интернет;
− культурой постановки и моделирования задач информатики;
− практикой исследования и решения теоретических и прикладных задач.
3. Перечень типовых контрольных заданий, используемых для оценки знаний, умений,
навыков
Промежуточная аттестация по дисциплине «Системное программирование» осуществляется в форме экзамена (зачета). Экзамен (зачет) проводится в письменной (устной) форме.
Контрольно-измерительные материалы:
1) Изучение комплекса программного обеспечения для разработки драйверов режима ядра.
Developing environment. Инструментарий разработчика режима ядра и его настройка.
2) Программный пакет driver development kit (DDK), отладчик ядра WinDbg, виртуальная машина Windows XP и программа Vmware Player, дизассемблер IDA. Настройка гостевой ОС.
Практикум по отладчику WinDbg, часть 1 (базовые команды).
3) Обзор защищенного режима современных процессоров. 64 битный режим. Расширенный набор регистров пользователя и адресация. Страничное преобразование. Обработка прерывания. Практикум по отладчику WinDbg.
4) Простейший драйвер режима ядра и консольная утилита. DriverEntry, DriverUnload,
IoCreateDevice, Dispatch callbacks, IOCTLs. Инсталляция через Service Manager. Загрузка и выгрузка драйвера.

5) Простейшее взаимодействие драйвера и утилиты. Практикум по отладчику WinDbg, часть 3
(точки останова, приемы отладки).
6) Базовые техники программирования драйверов: обработка ошибок, работа со строками,
работа с памятью, списки и макросы. NTSTATUS, BugCheck Codes, LIST_ENTRY, Lookaside lists, Unicode strings.
7) Функции работы с менеджерои объектов. Отладочные приемы: DBG,ASSERT,
__debugbreak().
8) Использование объектов синхронизации в драйверах. Синхронизация и синхронизация примитивы Windows, ожидание на объектах ядра. Irql, Spinlocks, Dispatcher (Event, Semap,
Mutex, Timer, Thread), APC, DPC, FastMutex, Atomic, Resources.
9) Работа с системными нитями. Работа с файлами из режима ядра. Асинхронная работа в
Windows. Workitems.
10) Структура PE файла. Работа с IDA. Обратное дизассемблирование mousefilter.sys
Подсистема ввода-вывода. Стек драйверов.
11) Работа с IRP. Completion, Cancel, PassThrough. Обработчики ISR. Краткие сведения об inf файлах. Обратное дизассемблирование драйвера mousefilter.sys
12) Native API. Использование недокументированных функций Windows.
4. Критерии оценивания
Оценка отлично 10 баллов - выставляется студенту, показавшему всесторонние,
систематизированные, глубокие знания учебной программы дисциплины, проявляющему интерес к данной предметной области, продемонстрировавшему умение уверенно и творчески применять их на практике при решении конкретных задач, свободное и правильное обоснование принятых решений.
Оценка отлично 9 баллов - выставляется студенту, показавшему всесторонние,
систематизированные, глубокие знания учебной программы дисциплины и умение уверенно применять их на практике при решении конкретных задач, свободное и правильное обоснование принятых решений.
Оценка отлично 8 баллов - выставляется студенту, показавшему всесторонние,
систематизированные, глубокие знания учебной программы дисциплины и умение уверенно применять их на практике при решении конкретных задач, правильное обоснование принятых решений, с некоторыми недочетами.
Оценка хорошо 7 баллов - выставляется студенту, если он твердо знает материал, грамотно и по существу излагает его, умеет применять полученные знания на практике, но недостаточно грамотно обосновывает полученные результаты.
Оценка хорошо 6 баллов - выставляется студенту, если он твердо знает материал, грамотно и по существу излагает его, умеет применять полученные знания на практике, но допускает в ответе или в решении задач некоторые неточности.
Оценка хорошо 5 баллов - выставляется студенту, если он в основном знает материал, грамотно и по существу излагает его, умеет применять полученные знания на практике, но допускает в ответе или в решении задач достаточно большое количество неточностей.
Оценка удовлетворительно 4 балла - выставляется студенту, показавшему фрагментарный,
разрозненный характер знаний, недостаточно правильные формулировки базовых понятий,
нарушения логической последовательности в изложении программного материала, но при этом он освоил основные разделы учебной программы, необходимые для дальнейшего обучения, и может применять полученные знания по образцу в стандартной ситуации.
Оценка удовлетворительно 3 балла - выставляется студенту, показавшему фрагментарный,
разрозненный характер знаний, допускающему ошибки в формулировках базовых понятий,
нарушения логической последовательности в изложении программного материала, слабо владеет основными разделами учебной программы, необходимыми для дальнейшего обучения и с трудом применяет полученные знания даже в стандартной ситуации.

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

Каталог: wp-content -> uploads
uploads -> «чем великобритания интересна для россии?» Великобритания входит в число крупнейших мировых держав
uploads -> Персональные компьютеры, история создания и развития
uploads -> Сборник Из опыта проектной деятельности учащихся гимназии №524 в 2012-2013 учебном году Санкт-Петербург 2013
uploads -> Использование икт на логопедических занятиях
uploads -> Государственное областное бюджетное
uploads -> Компьютерные игры – новый вид деятельности для дошкольников с зпр и. Ю. Заболотникова, Е. Ф. Половинкина, воспитатели мдоу детского сада комбинированного вида№2
uploads -> Информационный доклад
uploads -> В. П. Зинченко писал о том, что если человек в детстве не дополучил некую норму участия в игровом времяпрепровождении, он приобретает социально-психологическую ущербность вроде «игровой дистрофии», которую в последу


Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал