ПРОЕКТ ПРОГРАММЫ ДИСЦИПЛИНЫ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Новосибирский национальный исследовательский государственный университет» Факультет информационных технологий УТВЕРЖДАЮ _______________________ « ___» _____________ 20___г. РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ Встраиваемые системы Магистерская программа Информационно-измерительные системы НАПРАВЛЕНИЕ ПОДГОТОВКИ 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА» Квалификация (степень) выпускника Магистр Форма обучения очная Новосибирск 2011 Программа дисциплины «Встраиваемые системы» составлена в соответствии с требованиями ФГОС ВПО к структуре и результатам освоения основных образовательных программ магистратуры по общенаучному циклу по направлению подготовки «Информатика и вычислительная техника», а также задачами, стоящими перед Новосибирским государственным университетом по реализации Программы развития НГУ. Автор Лысаков Константин Фёдорович, к.т.н., старший преподаватель Факультет информационных технологий Кафедра информационно-измерительных систем 2 1. Цели освоения дисциплины Дисциплина «Встраиваемые системы» имеет своей целью обучение базовым знаниям по организации процесса тестирования и отладки программных продуктов с использованием современных технологий и подходов. Для достижения поставленной цели выделяются задачи курса: Дать представление о встраиваемых системах. Познакомить с аппаратными особенностями встраиваемых платформ. Провести сравнительный обзор операционных систем, используемых во встраиваемых системах. Провести обзор программных средств, используемых для разработки и отладки программного обеспечения встраиваемых систем. Приобрести практические навыки для построения программных компонентов встраиваемых систем. Приобрести практические навыки отладки программного обеспечения встраиваемой системы. 2. Место дисциплины в структуре образовательной программы Дисциплина «Встраиваемые системы» относится к циклу М2 «Профессиональный цикл. Базовая часть». Для изучения дисциплины «Встраиваемые системы» студент должен в объеме компетенций бакалавра владеть иностранным языком, уметь программировать на одном из процедурных или объектно-ориентированных языков, иметь представление о современной цифровой схемотехнике и компьютерных архитектурах, а также иметь базовые знания по операционным системам и сетевым технологиям. Дисциплина «Встраиваемые системы» опирается на следующие дисциплины, предшествующие ей в учебном плане: Логические основы программирования. Программирование на языке высокого уровня. Организация ЭВМ и систем. Операционные системы. Сетевые технологии. Дисциплины, последующие после неё в учебном плане: Научно-исследовательская работа. Итоговая государственная аттестация. 3. Компетенции обучающегося, формируемые в результате освоения дисциплины «Встраиваемые системы». 3 Общекультурные компетенции: способен совершенствовать и развивать свой интеллектуальный и общекультурный уровень (ОК-1); использует на практике умения и навыки в организации исследовательских и проектных работ, в управлении коллективом (ОК4); способен самостоятельно приобретать с помощью информационных технологий и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности (ОК-6); способен к профессиональной эксплуатации современного оборудования и приборов (ОК-7). Профессиональные компетенции: применять перспективные методы исследования и решения профессиональных задач на основе знания мировых тенденций развития вычислительной техники и информационных технологий (ПК-1); формировать технические задания и участвовать в разработке аппаратных и/или программных средств вычислительной техники (ПК4); применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6); знать и уметь применять современные концепции, методы и CASEсистемы при построении программно-алгоритмических пакетов обработки сигналов и изображений (ПК-9); знать и уметь разрабатывать программные компоненты для встраиваемых систем, с учетом особенностей платформ Android, Embedded Linux и Windows CE (ПК-15). В результате изучения дисциплины студент должен: Знать: Основные компоненты встраиваемой системы. Отличия платформ Android, Linux и Windows CE. Основные способы загрузки встраиваемой системы. Как программировать флэш-память на демонстрационной плате. Как построить ядро ОС. Как добавить дополнительные программы в образ встраиваемой системы. Как использовать JTAG-отладчик. Уметь: Управлять встраиваемой системой через последовательный порт. 4 Обновить программное обеспечение, используемое на демонстрационной плате. Настроить сетевую файловую систему для загрузки по сети. Скомпилировать пользовательское приложение для использования во встраиваемой системе. Отлаживать работу пользовательских приложений. Владеть: Принципами проектирования и разработки встраиваемых систем. Принципами отладки программного обеспечения, используемого во встраиваемых системах. 4. Структура и содержание дисциплины Общая трудоемкость дисциплины составляет 4 зачетные единицы, 144 часа. Неделя семестра Семестр Раздел № дисциплины п/ п Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) 1 Что такое встраиваемая 1 система. Основные компоненты встраиваемой системы. 1 Лекци и 1 2 Обзор встраиваемых 1 операционных систем. Системы реального времени. 2 1 5 Семи Сам. нары Раб. 2 2 2 4 Формы текущего контроля успеваемости (по неделям семестра) Форма промежуточн ой аттестации (по семестрам) Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение 3 Особенности 1 встраиваемых систем на базе Windows CE. Отличие от версий Windows для настольных компьютеров. 3-4 2 4 6 4 Особенности 1 встраиваемых систем на базе Linux. Отличия «встраиваемых» Linuxсистем и систем на базе Android от Desktopверсий. 5-6 2 4 8 5 Программные и 1 аппаратные средства для программирования флэш-памяти. 7 1 2 8 6 Построение ядра 1 встраиваемой операционной системы. Программное 1 8-9 2 4 8 10 1 2 6 7 6 предыдущей лекции Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение предыдущей лекции Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение предыдущей лекции Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение предыдущей лекции Опрос обеспечение для построения и развертывания образа встраиваемой системы. 8 Процесс первоначальной 1 загрузки. Файловые системы, используемые для хранения данных во флэш-памяти. RAMдиск. Загрузка по сети. Использование USB и SD-карт для хранения корневой файловой системы. 1112 2 4 8 9 Разработка 1 пользовательских приложений для встраиваемых систем. 1314 2 4 6 10 Отладка встраиваемой 1 системы с использованием PC. Возможности JTAGотладчика для отладки загрузчика и работы ядра ОС на ранних 1516 2 4 6 7 студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение предыдущей лекции Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение предыдущей лекции Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные студентам для самостоятельн ой работы в течение предыдущей лекции Опрос студентов: Разбор решений задач и ответы на вопросы, предложенные этапах загрузки. Итого за семестр 16 32 36 96 студентам для самостоятельн ой работы в течение предыдущей лекции экзамен 5. Образовательные технологии Для более успешного изучения и освоения нового материала, в рамках лабораторных занятий используются «семинар-практикумы» – форма организации занятий, при которой часть студентов временно объединяется в группы с учетом уровневых достижений для решения задач за ограниченное, заранее заданное время. По истечении времени для решения задачи группы отчитываются перед всеми остальными студентами. При отчете группы приоритет отдается субъективной эффективности группы, то есть не столько результату работы, сколько организации процессу решения задачи. Эта форма урока сконструирована специально для интегральной технологии обучения. Во время лекционных занятий активно используются современные мульмедиа-технологии (проекторы, анимация, различные программные средства), позволяющие улучшить восприятие нового материала за счет обеспечения его наглядности. Также во время лекций приглашаются узкие специалисты в обсуждаемой области, что обеспечивает повышенный интерес к занятиям у студентов. 6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины В течение семестра существует набор практических заданий, разбитых на 3 блока. Для каждого блока определен крайний срок сдачи заданий, после которого задачи из предыдущего блока не принимаются и студент сосредотачивается на выполнении текущего блока. Это позволяет не допустить критического отставания студента от общего процесса обучения, а также обеспечивает контроль за успеваемостью в течение всего срока обучения дисциплине. 6.1. Перечень примерных контрольных вопросов и заданий для самостоятельной работы. 1. Что такое встраиваемая система. Основные типы и виды встраиваемых систем. 8 2. Основные компоненты встраиваемой системы. Функциональные блоки и архитектуры типовых встраиваемых систем. 3. Особенности встраиваемых систем на базе Windows CE. Анализ стоимости разработки ПО и технической поддержки. 4. Особенности встраиваемых систем на базе Linux. Анализ стоимости разработки ПО и технической поддержки. 5. Используемые виды памяти и накопителей для встраиваемых систем. 6. Программные и аппаратные средства для программирования флэшпамяти. 7. Построение ядра встраиваемой операционной системы. Обзор обязательной функциональной составляющей. 8. Программное обеспечение для построения и развертывания образа встраиваемой системы. 9. Обзор применяемых файловых систем для встраиваемых систем. 10.Процесс первоначальной загрузки. 11.Файловые системы, используемые для хранения данных во флэш-памяти. Обзор преимуществ и недостатков. 12.Разработка пользовательских приложений для встраиваемых систем. 13.Методы и способы отладки встраиваемых систем. 14.Отладка встраиваемой системы с использованием PC. 6.2 Примерная тематика рефератов. 1. Обзор встраиваемых операционных систем. 2. Системы реального времени и их особенности. 3. Отличие разработки и поддержки встраиваемых систем от стационарных ПК. 4. Отличие «встраиваемых» Linux-систем и систем на базе Android от Desktop-версий. 5. Обзор существующих встраиваемых систем на базе Android. 6. Обзор существующих встраиваемых систем на базе Embedded Linux. 7. Обзор существующих встраиваемых систем на базе Windows CE. 8. Загрузка по сети. 9. Использование USB и SD-карт для хранения корневой файловой системы. 10.Возможности JTAG-отладчика для отладки загрузчика и работы ядра ОС на ранних этапах загрузки. 6.3. Примерный перечень вопросов к экзамену по всему курсу. 1. Что такое встраиваемая система. Основные типы и виды встраиваемых систем. 2. Основные компоненты встраиваемой системы. Функциональные блоки и архитектуры типовых встраиваемых систем. 3. Особенности встраиваемых систем на базе Windows CE. Анализ стоимости разработки ПО и технической поддержки. 4. Особенности встраиваемых систем на базе Linux. Анализ стоимости разработки ПО и технической поддержки. 9 5. Используемые виды памяти и накопителей для встраиваемых систем. 6. Программные и аппаратные средства для программирования флэшпамяти. 7. Построение ядра встраиваемой операционной системы. Обзор обязательной функциональной составляющей. 8. Программное обеспечение для построения и развертывания образа встраиваемой системы. 9. Обзор применяемых файловых систем для встраиваемых систем. 10.Процесс первоначальной загрузки. 11.Системы реального времени и их особенности. 12.Отличие разработки и поддержки встраиваемых систем от стационарных ПК. 13.Отличие «встраиваемых» Linux-систем и систем на базе Android от Desktop-версий. 14.Обзор существующих встраиваемых систем на базе Android. 15.Обзор существующих встраиваемых систем на базе Embedded Linux. 16.Обзор существующих встраиваемых систем на базе Windows CE. 17.Загрузка по сети. 18.Использование USB и SD-карт для хранения корневой файловой системы. 19.Возможности JTAG-отладчика для отладки загрузчика и работы ядра ОС на ранних этапах загрузки. 6.4. Оценочные средства для текущего контроля успеваемости: В течение семестра на каждом практическом занятии студентам предлагаются 1-2 задачи. На каждом следующем практическом занятии происходит контроль выполнения предложенных ранее заданий, что обеспечивает высокий уровень взаимодействия с каждым студентом и позволяет существенно улучшить понимание и освоение студентом нового для него материала. Особенностью предлагаемых задач является то, что 3-4 небольших задания могут объединяться и представлять собой некий законченный проект. В качестве итогового проекта студентом может быть выбрана любая решаемая на практических занятиях задача и дополнена неким функционалом, который сделал бы полученный программный продукт более универсальным. 6.5. Оценочные средства для итогового контроля успеваемости: Итоговая оценка студента складывается из промежуточных оценок, которые студент получает на каждом практическом занятии по результатам выполнения текущих заданий. В конце семестра преподаватель сообщает студенту его оценку. Если студент не согласен, то он имеет возможность сдать зачет, продемонстрировав свои практические навыки и теоретические знания в объеме материала, представленного в течение курса. 10 7. Учебно-методическое и информационное обеспечение дисциплины а) основная литература: 1. К.Г. Жуков. Модельное проектирование встраиваемых систем в LabVIEW. Издательство: ДМК Пресс, 2011 г, - 688 с. 2. P. Raghavan, Amol Lad, Sriram Neelakandan. Embedded Linux System Design and Development. Издательство: AUERBACH, 2005 г, - 432 с. 3. Peter Marwedel. Embedded System Design. 2005 – 264 с. б) дополнительная литература: 1. С. Ф. Баррет, Д. Дж. Пак. Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С. 2007- 640 с 2. Jiwon Hahn. A Runtime System for Memory-Constrained Networked Embedded Systems. 2010, - 164 с. 3. Wayne Wolf. Computers as Components: Principles of Embedded Computing System Design. 2005, - 688 с. 8. Материально-техническое обеспечение дисциплины Компьютерный класс компьютерами, объединенными в локальную сеть и доступом к Интернет. Для обучения каждому студенту необходимы: персональный компьютер, с установленным следующим ПО: o MS Visual Studio o MSDN Во время семинарских занятий также необходим проектор, подключенный к ПК с установленным Microsoft Office, для наглядной демонстрации изучаемого материала и проведения лекционных занятий. Рецензент (ы) Программа одобрена на заседании Методической комиссии ФИТ от ___________ года, протокол № _______. 11