скачать Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования «ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» УТВЕРЖДАЮ Директор ИДО________________ С.И. Качин «_____»_____________2010 г. СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ Рабочая программа, методические указания и контрольные задания для студентов специальности 230101 «Вычислительные машины, комплексы, системы и сети» Института дистанционного образования
Издательство Томского политехнического университета 2010 УДК 681.3 Системное программное обеспечение: рабочая программа, методические указания и контрольные задания для студентов спец. 230101 «Вычислительные машины, комплексы, системы и сети» ИДО./ сост. Ю.Я. Кацман, А.Г. Столяров. – Томск: Изд-во Томского политехнического университета, 2010. – 12с. Рабочая программа, методические указания и контрольные задания рассмотрены и рекомендованы к изданию методическим семинаром кафедры вычислительной техники – протокол №8 от 12 ноября 2009 г. Зав. кафедрой, д.т.н., профессор Н.Г. Марков Аннотация Рабочая программа учебной дисциплины «Системное программное обеспечение» предназначена для подготовки инженеров по специальности 230101 «Вычислительные машины, комплексы, системы и сети». Содержание программы соответствует ГОС ВПО и предназначено для изучения функций и алгоритмов управления ОС в современных ЭВМ, комплексах и вычислительных системах. Теоретическая часть изучаемой дисциплины включает следующие разделы: «Классификация системного программного обеспечения», «Управление процессами, потоками и заданиями», «Управление ресурсами», «Файловые системы», «Поддержка сетей», ... Лабораторный практикум посвящен практическому ознакомлению с функциями и возможностями среды графического программирования LabVIEW 8 для решения задач системного программирования. Лабораторные занятия проводятся на персональных компьютерах с операционной системой Windows.
E–mail: katsman@tpu.ru E–mail: sta@tpu.ru ^
Целью преподавания дисциплины «Системное программное обеспечение (СПО)» является изучение организации функционирования (алгоритмов функционирования ОС) вычислительных процессов в современных ЭВМ, комплексах и вычислительных системах. В результате изучения дисциплины студент должен знать структуру и характеристики системного ПО, проблемы, связанные с функционированием совместно протекающих процессов. Пользуясь полученными знаниями, студент должен уметь выбирать и использовать алгоритмы планирования задач, использовать конструкции и примитивы, предназначенные для описания и управления вычислениями с различной степенью параллельности, строить корректные схемы вычислений. Содержание дисциплины «Системное программное обеспечение» по специальности 230101 базируется на материале ряда дисциплин: «Теория автоматов», «Операционные системы», «Программирование на языке высокого уровня», «Организация ЭВМ и систем». Курс «Системное программное обеспечение» относится к числу общепрофессиональных дисциплин специальности 230101 и занимает в подготовке инженеров важное место. Он является базовым для изучения последующих дисциплин: «Сети ЭВМ и средства телекоммуникаций», «Микропроцессорные системы», «Методы проектирования систем логического управления». Данный курс определяет профессиональную направленность подготовки специалистов.
Преподавание данной дисциплины предусматривает следующие конкретные средства, способы и организационные мероприятия, обеспечивающие достижение целей:
^ 2.1 Введение 2.1.1 Вводная информация: предмет курса; содержание теоретического материала курса; содержание цикла лабораторных работ, список литературы для изучения. 2.1.2 Системное программное обеспечение: основные понятия и их определения; расположение СПО в общей структуре ЭВМ, классификация и структура СПО; организация взаимодействия между аппаратурой ЭВМ, СПО и ППО (прикладное программное обеспечение). 2.1.3 Классификация системных программ: ОС, загрузчики, трансляторы, компиляторы и интерпретаторы, отладчики и утилиты. 2.1.4 Интерфейс операционной системы: основные принципы и стандарты; системные вызовы; интерфейсы WinAPI, POSIX API; 32 и 64 разрядные интерфейсы; проблема локализации, стандарты ANSI и UNICODE. 2.1.5 Средства разработки Windows-программ, используемые при изучении дисциплины: LabVIEW 8. ^ 2.2.1 Объекты ядра: создание, уничтожение, таблица описателей, учет пользователей объектов ядра, наследование. 2.2.2 Процесс выполнения программ: создание, завершение процессов и потоков. 2.2.3 Синхронизация потоков: механизмы синхронизации (семафоры, мониторы, сообщения, барьеры). 2.2.4 Решение классических проблем синхронизации: проблема обедающих философов, проблема читателей и писателей, проблема спящего брадобрея. 2.2.5 Реализация синхронизации: синхронизация потоков в пользовательском режиме; синхронизация потоков с использованием объектов ядра 2.2.6 Межпроцессные взаимодействия (IPC): механизмы, каналы, очереди сообщений, разделяемые сегменты памяти, сокеты, вызов удаленных процедур (RPC). 2.3 Ввод-вывод 2.3.1 Аппаратура ввода-вывода: устройства, контроллеры устройств; ввод-вывод, отображаемый на адресное пространство памяти; прямой доступ к памяти (DMA); настройка адресов и защита. 2.3.2 Программное обеспечение ввода-вывода: задачи ПО; управляемый прерываниями ввод-вывод; использование DMA. 2.3.3 Программные уровни ввода-вывода: обработчики прерываний, драйверы устройств, независимое от устройств ПО ввода-вывода; ПО ввода-вывода пространства пользователя. 2.3.4 Подсистема ввода-вывода в MS Windows 2000: компоненты ввода-вывода и их взаимодействие. ^ 2.4.1 Файлы: структура и типы файлов; доступ к файлу; атрибуты файла; операции с файлами; файлы, проецируемые в память. Синхронный и асинхронный ввод/вывод. 2.4.2 Каталоги: одноуровневые, двухуровневые и иерархические системы каталогов; операции с каталогами 2.4.3 Реализация файловой системы: структура файловой системы, реализация файлов и каталогов; совместно используемые файлы; надежность и производительность файловой системы 2.4.4 Взаимоблокировки, их обнаружение. Избежание взаимоблокировок; безопасные и небезопасные состояния. ^ 2.5.1 Драйверы: задачи, классификация и особенности их функционирования, основные свойства и характеристики; драйверы в OC MS Windows и Unix. 2.5.2 Организация работы подсистемы управления внешними устройствами в MS Windows 2000, Windows XP, Windows Server 2003: типы драйверов; стек драйверов; загрузка, инициализация и выгрузка драйверов; инсталляция драйверов; синхронный и асинхронный ввод-вывод; выполнение операций ввода-вывода; Plug and Play. 2.5.3 Унифицированная модель разработки драйверов для Windows платформ (WDM): свойства; структура драйвера и принципы функционирования; интерфейс Native API методы и средства разработки; управление памятью, работа со строками, осуществление операций ввода-вывода; драйвер-фильтр. 2.6 Защита 2.6.1 Классы безопасности. Компоненты системы защиты. Проверка прав доступа; дескрипторы защиты и управления доступом. 2.6.2 Права и привилегии учетных записей, суперпривилегии. Аудит безопасности. Вход в систему; Инициализация Winlogon; этапы входа пользователя. Политика ограниченного использования программ. ^ 2.7.1 Сетевая архитектура Windows: эталонная модель OSI; сетевые компоненты. 2.7.2 Сетевые API. Разрешение имен (DNS, WINS). Драйверы протоколов; расширения TCP/IP. ^ 3.1 Тематика лабораторных работ Лабораторные работы проводятся на IBM-совместимых компьютерах под управлением MS Windows NT/2000. Среда разработки – LabVIEW 8. 3.1.1 Введение в понятие «виртуальный инструмент», знакомство со средой графического программирования LabVIEW (2 часа). 3.1.2 Исследование особенностей программирования интерфейса RS-232 на примере манипулятора «мышь» в среде графического программирования LabVIEW (4 часа). 3.1.3 Исследование файловой системы Windows с использованием средств LabVIEW (4 часа). 3.1.4 Изучение принципов параллельных вычислений (потоков) в ОС Windows (4 часа). ^ 1. Основные принципы эффективного программирования в среде LabVIEW. 2. Интеграция стороннего программного обеспечение в программы, созданные в среде LabVIEW. ^ 4.1 Общие методические указания Контрольная работа выполняется в виде написания реферата. Каждый студент получает вариант индивидуального контрольного задания (тему реферата) либо у преподавателя на установочной сессии, либо определяет самостоятельно, как число, составленное из двух последних цифр зачетной книжки. Тематика рефератов связана с современным состоянием и перспективами развития СПО, поэтому она может ежегодно обновляться. Информационные материалы для реферата необходимо брать из монографий, периодической технической литературы (журналов), а также с Web-серверов сети Internet. Объем реферата – не более 20 страниц машинописного текста, включая рисунки, таблицы и библиографические ссылки. Реферат можно послать по электронной почте (katsman@tpu.ru, либо sta@tpu.ru). В письме студент должен указать (фамилию, имя, отчество, номер группы), название дисциплины, тему реферата и предоставить сам реферат. При отсутствии электронной почты, реферат необходимо сдать преподавателю на проверку в начале сессии. Для сдачи экзамена наличие проверенного и принятого преподавателем реферата обязательно! ^
^ «СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ» 5.1 Перечень вопросов для подготовки к экзамену
^ 6.1 Литература обязательная 1. Таненбаум Э. Современные операционные системы, 2-е изд.: Пер. с англ. – СПб: Питер, 2003. – 1040 с.: ил. 2. Гордеев А. В., Молчанов А. Ю. Системное программное обеспечение: Учебник для вузов – СПб: Питер, 2003. – 736 с.: ил. 3. Вильямс А. Системное программирование в Windows 2000 для профессионалов – СПб: Питер, 2003. – 624 с.: ил. 4. Джонсон М. Системное программирование в среде Win32, 2-е изд.: Пер. с англ. – M.: Издательский дом “Вильямс”, 2001. – 464 с.: ил. 5. Рихтер Дж. Windows для профессионалов: создание эффективных Win32 приложений с учетом специфики 64-разрядной версии Windows, 4-е изд.: Пер, англ – СПб: Питер; М.: Издательско-торговый дом "Русская Редакция", 2001. - 752 с.; ил. 6. Документация Win32 API (MSDN). 7. Документация по разработке драйверов в MS Windows (DDK). 8. А. Я. Суранов, LabVIEW 8.20., Справочник по функциям, М: «ДМК Пресс», 2007. 9. Дж. Трэвис, Дж. Кринг, LabVIEW для всех, М: «ДМК Пресс», 2008. 10. Питер Блюм, LabVIEW. Стиль программирования, М: «ДМК Пресс», 2008. ^
6.3 Перечень используемых информационных продуктов
Учебное издание ^ Рабочая программа, методические указания и контрольные задания
|