РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ Операционные системы НАПРАВЛЕНИЕ ООП 230400 Информационные системы и технологии ПРОФИЛИ ПОДГОТОВКИ Информационные системы и технологии в бизнесе КВАЛИФИКАЦИЯ (СТЕПЕНЬ) БАЗОВЫЙ УЧЕБНЫЙ ПЛАН ПРИЕМА КУРС СЕМЕСТР КОЛИЧЕСТВО КРЕДИТОВ ПРЕРЕКВИЗИТЫ КОРЕКВИЗИТЫ бакалавр 2011 г. 3 5 4 кредита ECTS Б3.Б1; Б3.В3 Б3.В.2.3, Б3.В.2.4 ВИДЫ УЧЕБНОЙ ДЕЯТЕЛЬНОСТИ И ВРЕМЕННОЙ РЕСУРС: Лекции 36 час. Лабораторные занятия 45 час. АУДИТОРНЫЕ ЗАНЯТИЯ САМОСТОЯТЕЛЬНАЯ РАБОТА ИТОГО ФОРМА ОБУЧЕНИЯ 81 час. 81 час. 162 час. очная ВИД ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ экзамен 1 1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ Цель преподавания дисциплины «Операционные системы» (ОС) заключается в формировании у студентов знаний, умений и навыков настройки современных операционных систем, а также дать представление о типах, строениях, основных понятиях, принципах функционирования и взаимодействиях операционных систем ЭВМ с различной архитектурой. Поставленные цели полностью соответствуют целям (Ц1-Ц5) ООП. Теоретические знания лекционного материала закрепляются на лабораторном практикуме при изучении особенностей реализации стандарта на переносимую операционную систему POSIX на примере операционной системы FreeBSD – универсальной многозадачной, многопользовательской Unix-подобной ОС. 2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ООП Дисциплина входит в базовую (общепрофессиональную) часть профессионального цикла. Пререквизитами данной дисциплины являются: «Информатика», «Программирование на языке высокого уровня». Также требуется опыт алгоритмизации. Знания и умения, полученные при изучении дисциплины «Информационные технологии», могут быть востребованы дисциплинами-кореквизитами: «Интернет-технологии», «Администрирование вычислительных сетей и систем». 3. РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ Основными планируемыми результатами являются: - умение применять базовые и специальные знания в области современных информационных технологий для решения инженерных задач (Р2); - знания и умения внедрять, эксплуатировать и обслуживать современные операционные системы, обеспечивать их высокую эффективность (Р6); - умение использовать базовые и специальные знания в области проектного менеджмента для ведения комплексной инженерной деятельности (Р7). Результаты освоения дисциплины позволят студенту: Формируемые компетенции в Результаты освоения дисциплины соответствии с ООП* З.2.1 Результаты освоения дисциплины позволят студенту знать: З.3.1.2 основные сведений о дискретных структурах, используемых в персональных компьютерах, одного из языков программирования, структуры локальных и глобальных компьютерных сетей; Структуры и содержания стандартного интерфейса операционных систем POSIX; назначения и общих принципов построения операционных систем; основных механизмов операционных систем: управление процессами, управление памятью, ввод/вывод, взаимодействие процессов У.2.1 Результаты освоения дисциплины позволят студенту уметь: У.3.1.2 работать в качестве пользователя персонального компьютера, использовать внешние носители информации для обмена данными между машинами, создавать резервные копии, архивы данных и программ, использовать языки и системы программирования для решения профессиональных задач, работать с программными средствами общего назначения. проводить анализ применимости и выбор интерфейсов операционной системы для решения практических задач; применять предоставляемые интерфейсом POSIX средства организации вычислительного процесса в современных многозадачных сетевых операционных системах; создавать программное обеспечение, переносимое на уровне исходных кодов; В.2.1 Результаты освоения дисциплины позволят студенту владеть: В.3.1.2 методами поиска и обмена информацией в глобальных и локальных компьютерных сетях, техническими и программными средствами защиты информации при работе с компьютерными системами, включая приемы антивирусной защиты; средствами разработки и отладки переносимого на уровне исходного кода программного обеспечения; навыками создания программного обеспечения, соответствующего международным стандартам на интерфейсы операционной системы. В процессе освоения дисциплины у студентов развиваются следующие компетенции: 1. Универсальные (общекультурные) 2 - владение культурой мышления, способность к обобщению, анализу, восприятию информации, постановке цели и выбору путей ее достижения, умение логически верно, аргументированно и ясно строить устную и письменную речь (ОК-1); - готовность к кооперации с коллегами, работе в коллективе; знание принципов и методы организации и управления малыми коллективами; способность находить организационноуправленческие решения в нестандартных ситуациях и готов нести за них ответственность (ОК-2); - владение широкой общей подготовкой (базовыми знаниями) для решения практических задач в области информационных систем и технологий (ОК-6); - умение критически оценивать свои достоинства и недостатки, наметить пути и выбрать средства развития достоинств и устранения недостатков (ОК-7). 2. Профессиональные - способность оценивать надежность и качество функционирования объекта проектирования (ПК-6); - готовность участвовать в работах по доводке и освоению информационных технологий в ходе внедрения и эксплуатации информационных систем (ПК-15); - способность использовать технологии разработки объектов профессиональной деятельности, в различных областях промышленности, предприятиях различного профиля и всех видов деятельности в условиях экономики информационного общества (ПК-18); - способность осуществлять организацию рабочих мест, их техническое оснащение, размещение компьютерного оборудования (ПК-19); - способность проводить сбор, анализ научно-технической информации, отечественного и зарубежного опыта по тематике исследования (ПК-23); - способность формировать новые конкурентоспособные идеи и реализовывать их в проектах (ПК-28); - способность к инсталляции, отладке программных и настройке технических средств для ввода информационных систем в опытную эксплуатацию (ПК-29); - готовность проводить сборку информационной системы из готовых компонентов (ПК-30); - способность к осуществлению инсталляции, отладки программных и настройки технических средств для ввода информационных систем в промышленную эксплуатацию (ПК-31). - способность поддерживать работоспособность информационных систем и технологий в заданных функциональных характеристиках и соответствии критериям качества (ПК-32); - готовность обеспечивать безопасность и целостность данных информационных систем и технологий (ПК-33); - готовность адаптировать приложения к изменяющимся условиям функционирования (ПК34); - способность составления инструкций по эксплуатации информационных систем (ПК-35). 4. СТРУКТУРА И СОДЕРЖАНИЕ ДИСЦИПЛИНЫ 4.1. РАЗДЕЛЫ ТЕОРЕТИЧЕСКОГО МАТЕРИАЛА Тема 1. Введение в операционные системы История ОС в контексте развития ЭВМ (1, 2, 3, 4 поколения ЭВМ). Приобретение операционными системами различных функций, появление стандартов. Роль и место ОС, как специального уровня программного обеспечения. Определение ОС, Основные функции ОС. Виды ОС. Методические указания Необходимо познакомиться с историей развития операционных систем. Выяснить с какими проблемами сталкивались разработчики операционных систем на различных этапах их развития. Каким образом эти проблемы решались, как развитие вычислительной техники влияло на развитие операционных систем. Вопросы и задания для самоконтроля 1. Каковы две главные функции операционной системы? 3 2. Что такое многозадачность? 3. Что такое подкачка данных (spooling)? 4. Какая из следующих команд должна быть разрешена только в режиме ядра: a) Отключение всех прерываний; b) Чтение счетчика даты/времени; c) Изменение счетчика даты/времени; d) Изменение схемы распределения памяти. 5. Перечислите основные различия между операционной системой для персонального компьютера и для мэйнфрейма. 6. В компьютере есть конвейер, состоящий из четырех ступеней. Каждая из них выполняет свою работу за одно и то же время, а именно, за 1нс. Сколько команд в секунду может выполнить машина? 7. Когда пользовательская программа выдает системный вызов, чтобы прочитать или записать файл с диска, она сопровождает его информацией о том, какой файл ей нужен, указателем на буфер данных и количеством байт. Затем управление передается операционной системе, вызывающей подходящий драйвер. Предположим, что драйвер работает с диском и прекращает свое действие до тех пор, пока не произойдет прерывание. В случае чтение данных с диска, очевидно, вызывающая программа должна быть заблокирована (потому что для нее нет данных). Что происходит при записи данных на диск? Нужно ли блокировать вызывающую программу для ожидания завершения передачи данных на диск? 8. В чем заключается разница между эмулированным и аппаратным прерывания передачи данных на диск? 9. Почему в системах разделения времени необходима таблица процессов? 10. В чем заключается существенная разница между блоковым специальным файлом и символьным специальным файлом? Тема 2. Процессы и потоки Понятие процесса, состояния процесса, модель представления процесса в операционной системе и операции, которые могут выполняться над процессами операционной системой. Методические указания Необходимо разобраться с ключевым механизмом многозадачных операционных систем: псевдопараллельностью. Выяснить, какие были предпосылки к созданию механизма псевдопараллельности, каковы выгоды от использования псевдопараллельности и чем именно они обуславливаются. Какие трудности стояли перед разработчиками механизма псевдопараллельности и как они решались. Каким образом реализована подсистема управления процессами в современных операционных системах. Вопросы и задания для самоконтроля 1. Почему когда прерывание или системный запрос передает управление операционной системе, обычно используется область стека ядра, а не стек прерванного процессора? 2. Может ли поток быть прерван прерыванием по таймеру? Если да, то при каких обстоятельствах? Если нет, то почему? 3. Рассмотрим систему, в которой все потоки реализованы в пространстве пользователя и система поддержки исполнения программ получает прерывания по таймеру раз в секунду. Пусть прерывание получено в тот момент, когда поток контролируется системой управления программ. К какой проблеме это может привести? Предложите способ решения этой проблемы. 4. В системе с потоками на уровне пользователя каждому потоку соответствует собственный стек или каждому процессу? А в системе с потоками на уровне ядра? Поясните. 5. Что такое состояние состязания? 6. Если в системе всего два процесса, имеет ли смысл использовать для их синхронизации барьер? Почему? 4 7. Можно ли синхронизировать два потока одного процесса, используя семафор в ядре, если потоки реализованы в пространстве ядра? Если потоки реализованы в пространстве пользователя? Предполагается, что потоки остальных процессов не имеют доступа к семафору. Поясните ответы. 8. Обычно планировщики с циклическим алгоритмом поддерживают список процессов, готовых к работе, причем каждый процесс находится в списке в единственном экземпляре. Что произойдет, если процесс окажется в списке дважды? Существует ли причина, по которой подобное изменение будет полезным? 9. Можно ли определить путем анализа исходного кода принадлежность процесса к процессам, ограниченным возможностями процессора или устройств ввода-вывода? Как это можно определить во время выполнения программы? 10.В гибкую систему реального времени поступает четыре периодических сигнала с периодами 50, 100, 200 и 250мс. На обработку каждого сигнала требуется 35, 20 ,10 и x мс времени процессора. Укажите максимальное значение x, при котором система остается поддающейся планированию. 11.Напишите сценарий оболочки, которая создает файл, содержащий последовательные числа, путем считывания последнего числа, прибавления к нему единицы и записывания результата в конец файла. Запустите одну копию сценария в качестве фонового процесса и одну – в качестве приоритетного процесса. Сколько времени пройдет, прежде чем возникнет состояние соревнования? Что в данной модели является критической областью? Измените сценарий, чтобы избежать состояния состязания. 12.Предположим, что у вас есть операционная система с семафорами. Реализуйте систему сообщений. Напишите процедуры для отсылки и получения писем. 13.Решите задачу обедающих философов, используя мониторы вместо семафоров. 14.Для получения большего приоритета процесс можно поместить в очередь кругового алгоритма планирования больше одного раза. Этого же эффекта можно достигнуть, запустив несколько копий программы, каждая из которых будет обрабатывать свою часть пула данных. Для начала напишите программу, которая проверяет простоту чисел из списка. Затем разработайте способ разрешить одновременный запуск нескольких программы не обращались к одному числу. Удастся ли вам ускорить обработку списка, запустив несколько копий программы? Имейте в виду, что результат будет зависеть от того, чем еще занят ваш компьютер: при отсутствии других процессов улучшения результатов не будет, но если параллельно решаются другие задачи, несколько копий программы позволят получить больший процент времени процессора. Тема 3. Управление памятью Способы управления памятью в ОС. Физическая память компьютера. Иерархическая структура физической памяти. Представление программы в логическом адресном пространстве. Связывание логических и физических адресных пространств. Аппаратные особенности поддержки виртуальной памяти. Разбиение адресного пространства процесса на части и динамическая трансляция. Методические указания Необходимо выяснить, чем обусловлена необходимость в подсистеме управления памятью в операционной системе. Какие дополнительные сложности в управление памятью привносит механизм многозадачности (псевдопараллельности). Как организована виртуальная память. Какие существуют алгоритмы замещения страниц. Вопросы и задания для самоконтроля 1. Компьютерная система имеет достаточно места для того, чтобы содержать в оперативной памяти четыре программы. Эти программы простаивают в ожидании ввода-вывода половину времени. Какая часть времени работы центрального процессора пропадает? 2. В чем разница между физическим адресом и виртуальным? 3. Для каждого из следующих десятичных виртуальных адресов вычислите номер виртуальной страницы и смещение, если размер страницы равен 4 Кбайт или 8 Кбайт: 20 000, 32 768, 60 000. 4. Машина имеет 32-разрядное адресное пространство и страницы размером 8 Кбайт. Таблица страниц целиком поддерживается аппаратно, но запись в ней отводится одно 32-разрядное слово. При запуске процесса таблица страниц копируется из памяти в аппаратуру, одно слово требует 100 нс. Если каждый процесс работает в течение 100 мс (включая время загрузки таблицы страниц), какая доля времени процессора жертвуется на загрузку таблицы страниц? 5 5. Компьютер с 32-разрядным адресом использует двухуровневую таблицу страниц. Виртуальные адреса расщепляется на 9-разрядное поле верхнего уровня таблицы, 11-разрядное поле второго уровня таблицы страниц и смещение. Чему равен размер страниц и сколько их в адресном пространстве? 6. Если используется алгоритм замещения страниц FIFO в системе с четырьмя страничными блоками и восемью страницами, сколько страничных прерываний произойдет для последовательности обращений 00172327103 при условии, что четыре страничных блока изначально пусты? Решите эту задачу для алгоритма LRU. 7. Может ли страница оказаться в двух рабочих наборах одновременно? 8. Если страница совместно используется двумя процессами, может ли она быть страницей «только для чтения» для одного процесса и «чтение-запись» для другого процесса? Почему? 9. Инструкция машинного языка, загружающая 32-разрядное слово в регистр, содержит 32разрядный адрес этого слова. Какое максимальное количество страничных прерываний может вызвать данная команда? 10. Объясните разницу между внутренней и внешней фрагментацией. Какая из них происходит в страничных системах? А какая имеет место в системах, использующих чистую сегментацию? Тема 4. Система управления вводом-выводом Основные физические и логические принципы организации ввода-вывода в вычислительных системах. Контроллеры устройств. Прямой доступ к памяти. Подсистема ввода-вывода. Блокирующиеся и неблокирующиеся системные вызовы. Буферизация и кеширование. Методические указания Необходимо выяснить, чем обусловлена необходимость реализации в операционной системе подсистемы ввода-вывода. Как подсистема ввода-вывода используется для организации связи между процессом и периферийными устройствами. Как подсистема ввода-вывода используется для организации взаимодействия между процессами в рамках одной вычислительной системы. Вопросы и задания для самоконтроля 1. Почему оптические устройства хранения данных обладают более высокой плотностью записи данных, чем магнитные накопители? 2. Во многих версиях UNIX значение времени хранится в 32-разрядном целом числе, в виде числа секунд от некоторой точки отсчета. Когда перестанет хватать 32-разрядного числа для хранения значения времени (год и месяц)? 3. На некотором компьютере обработчик прерываний от таймера выполняет свои действия за 2 мс (включая накладные расходы по переключению процессов). Прерывания от таймера поступают с частотой 60 Гц. Какая часть времени работы центрального процессора расходуется на таймер? 4. Основными дополнительными цветами являются красный, зеленый и синий. Это означает, что любой цвет может быть сконструирован как линейная суперпозиция этих цветов. Может ли существовать такая цветная фотография, которую невозможно представить при помощи 24разрядного цвета? 5. Почему терминалы, использующие интерфейс RS-232, управляются прерываниями, а терминалы с отображением на память – нет? 6. В каком из четырех уровней программного обеспечения ввода-вывода выполняются следующие действия: a. Вычисление номеров дорожки, сектора и головки для чтения диска; b. Запись команд в регистры устройства; c. Проверка разрешения доступа пользователя к устройству; d. Преобразование двоичного целого числа в ASCII - символы для вывода на печать. 7. Драйвер диска получает запросы на чтение/запись к цилиндрам 10, 22, 20, 2, 40, 6 и 38. Перемещение блока головок с одного цилиндра на соседний занимает 6 мс. Сколько потребуется времени на перемещение головок при использовании алгоритма: e. Обслуживания в порядке поступления запросов; f. Обслуживания в первую очередь ближайшего цилиндра; g. Элеваторного алгоритма (сначала блок головок двигается вверх). Во всех случаях начальное положение блока головок на цилиндре 20. 6 Тема 5. Сети и сетевые операционные системы Стек протоколов TCP/IP. Программный интерфейс сокетов. Алгоритм организации связи между процессами по протоколам TCP/IP и UDP/IP. Методические указания Необходимо познакомиться с архитектурой протоколов TCP/IP и UDP/IP в рамках семиуровневой модели OSI/ISO. С программным интерфейсом сокетов. Рассмотреть особенности инициализации TCP соединения на серверной и на клиентской стороне. Выяснить, каким образом архитектурные особенности протоколов TCP и UDP определяют области их применения. Вопросы и задания для самоконтроля 1. В чем разница между протоколами TCP и UDP? 2. Каков порядок обмена данными по протоколу UDP? 3. Каков порядок обмена данными по протоколу TCP? 4. Что произойдет с клиентской программой, работающей по протоколу TCP, если серверная программа не запущена? 5. Что произойдет с клиентской программой, работающей по протоколу UDP, если серверная программа не запущена? 4.2. ПЕРЕЧЕНЬ ЛАБОРАТОРНЫХ РАБОТ Лабораторная работа № 1. «Первоначальное знакомство с UNIX» (2 часа) Цель работы: получение начальных навыков работы в среде ОС UNIX: вход в систему; знакомство с текстовым редактором ed; применение команд shell для работы с файлами; работа в среде Midnight Commander. Задание на лабораторную работу Для успешной сдачи работы требуется выполнить наизусть следующие операции: 1) войти в UNIX с паролем; 2) создать трехуровневое поддерево каталогов; 3) с помощью ed создать в одном из новых каталогов текстовый файл; 4) вывести файл на экран; 5) выполнить добавление текста в начало, в середину и в конец файла; 6) вывести файл на экран; 7) произвести переименование файла; 8) выполнить копирование файла (исходный файл и файл-копия должны располагаться в разных каталогах); 9) удалить созданные файлы и каталоги; 10) выполнить операции 2-9 с помощью Midnight Commander; 11) выйти из UNIX. Контрольные вопросы к лабораторной работе 1) Чем отличаются утилиты от команды вызова функции shell? 2) Изобразите графически трех уровневую структуру дерева. 3) Приведите назначения ключей команды ls (любых трех). 4) Какие Вы знаете текстовые редакторы кроме ed? 5) Специальные символы. 6) При помощи какой команды можно удалить не пустой каталог? 7) Как скопировать все содержимое каталога? Лабораторная работа № 2. «Процессы» (2 часа) Цель работы: знакомство со стандартным программным интерфейсом управления процессами: Системные вызовы getpid() и getppid(); Системный вызов fork(); 7 Системный вызов exec(). Задание на лабораторную работу Написать программу, печатающую значения PID и PPID для текущего процесса; Написать программу, выполняющую порождение нового процесса; Написать программу, выполняющую порождение нового процесса с разным поведением процесса-родителя и процесса-ребенка; Написать программу, выводящую на экран параметры командной строки и список переменных окружения; Написать программу, выполняющую запуск новой программы в текущем процессе; Написать программу, выполняющую запуск новой программы в дочернем процессе. Лабораторная работа № 3. «Файлы, именованные и неименованные каналы» (2 часа) Цель работы: знакомство со стандартным программным интерфейсом управления файлами и каналами (pipe, fifo). Задание на лабораторную работу Написать программу, выполняющую запись строки в файл на жестком диске; Написать программу, выполняющую чтение строки из файла на жестком диске; Написать программу, порождающую дочерний процесс, который обменивается с родительским процессом текстовой строкой через неименованный канал (pipe); Написать программу, порождающую дочерний процесс, который, в свою очередь, запускает отдельную программу, обменивающуюся с родительским процессом текстовой строкой через неименованный канал; Написать две программы, обменивающиеся между собой текстовой строкой через именованный канал (fifo); Лабораторная работа № 4. «Разделяемая память и нити исполнения» (4 часа) Цель работы: знакомство со стандартным программным интерфейсом управления разделяемой памятью (shared memory) и нитями исполнения (threads). Задание на лабораторную работу Напишите две программы, обменивающиеся текстовой строкой через сегмент разделяемой памяти; Напишите программу, порождающую две параллельно исполняющиеся нити (threads), обменивающиеся текстовой строкой через глобальную переменную; Лабораторная работа № 5. «Семейство протоколов TCP/IP. Сокеты.» (4 часа) Цель работы: знакомство с протоколами TCP/IP и UDP/IP, и со стандартным программным интерфейсом сетевых сокетов. Задание на лабораторную работу Напишите две программы, обменивающиеся текстовой строкой через UDP сокет; Напишите две программы, обменивающиеся текстовой строкой через TCP сокет; Напишите клиентскую и серверную программы, такие, чтобы сервер обменивался текстовой строкой с произвольным количеством одновременно подключенных к нему клиентов про протоколу TCP/IP; 5. ПРОМЕЖУТОЧНЫЙ КОНТРОЛЬ 5.1. Требования для сдачи экзамена После завершения изучения дисциплины студенты выполняют итоговую экзаменационную работу. Итоговая экзаменационная работа сдается устно по билетам. Экзаменационный билет состоит из двух частей. Первая часть включает два вопроса по теоретической части учебного материала. Вторая часть содержит два вопроса из практической части. Для получения положительной оценки на экзамене необходимо ответить минимум на один вопрос из каждой части билета. Образец билета представлен. 5.2. Теоретические вопросы для подготовки к экзамену 8 Подробно объясните понятие «Операционная система». Место ОС среди программного и аппаратного обеспечения современных ЭВМ. Основные функции ОС. Операционные системы ЭВМ I поколения. Общие черты, причины возникновения и основные характеристики. 5. Операционные системы ЭВМ II поколения. Общие черты, причины возникновения и основные характеристики. 6. Операционные системы ЭВМ III поколения. Общие черты, причины возникновения и основные характеристики. 7. Операционные системы ЭВМ IV поколения. Общие черты, причины возникновения и основные характеристики. 8. Операционная система как менеджер ресурсов (назначение и свойства). 9. Операционная система, как расширенная машина (назначение и свойства). 10.Основные типы ОС и их особенности. 11.Характеристики, особенности, примеры ОС мэйнфреймов. 12.Характеристики, особенности, примеры серверных ОС. 13. Характеристики, особенности, примеры многопроцессорных ОС. 14.Характеристики, особенности, примеры ОС персональных компьютеров. 15.Характеристики, особенности, примеры ОС реального времени. 16.Характеристики, особенности, примеры встроенных ОС. 17.Характеристики, особенности, примеры ОС смарт-карт. 18.Взаимодействие ОС и аппаратного обеспечения компьютера (необходимость и характеристики). 19.Взаимодействие ОС и процессора компьютера. 20.Взаимодействие ОС и памяти (ОЗУ и ПЗУ) компьютера. 21.Взаимодействие ОС с магнитными дисками и другими носителями информации компьютера. 22.Взаимодействие ОС с устройствами ввода-вывода. 23.Взаимодействие ОС и системы BIOS компьютера. 24.Понятие Процесса в Операционных системах. 25. Межпроцессное взаимодействие и взаимодействие процесса и ОС. 26.Понятие взаимоблокировки процессов и роль ОС при разрешении тупиковых ситуаций. 27.Понятие файловой системы в ОС. Назначение и организация. 28.Обеспечение безопасности в ОС. 29.Оболочки ОС. 30.Многопользовательские ОС и их характеристики. 31.Системные вызовы в ОС. Предназначение, роль ядра при их обработке. 5.3. Практические вопросы для подготовки к экзамену 1. Системные вызовы для управления процессами и порядок их использования. 2. Системные вызовы для управления файлами и порядок их использования. 3. Системные вызовы для управления именованными каналами и порядок их использования. 4. Системные вызовы для управления неименованными каналами и порядок их использования. 5. Системные вызовы для управления разделяемой памятью и порядок их использования. 6. Системные вызовы для управления нитями исполнения и порядок их использования. 7. Порядок создания сервера TCP/IP. 8. Порядок создания клиента TCP/IP. 1. 2. 3. 4. 9 9. Порядок создания сервера UDP/IP. 10.Порядок создания клиента UDP/IP. 1. 2. 3. 4. 5.4. Образец экзаменационного билета Экзаменационный билет № X Подробно объясните понятие «Операционная система». Взаимодействие ОС с устройствами ввода-вывода. Системные вызовы для управления именованными каналами и порядок их использования. Порядок создания клиента TCP/IP. 6. ОБРАЗОВАТЕЛЬНЫЕ ТЕХНОЛОГИИ Достижение планируемых результатов освоения дисциплины образовательными технологиями, сочетание которых приведено в таблице 2. обеспечивается Таблица 2 Методы и формы организации обучения (ФОО) ФОО Лекц. Методы IT-методы Работа в команде Case-study Игра Методы проблемного обучения. Обучение на основе опыта Опережающая самостоятельная работа Проектный метод Поисковый метод Исследовательский метод Другие методы + + + + + + Лаб. Практ./сем. Тренинги, Контр. СРС раб. занятия (case-study) мастер-классы раб. + + + + + + + + + + + + + + + + + + + + + + 7. ОРГАНИЗАЦИЯ И УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ 6.1 Самостоятельную работу студентов (СРС) можно разделить на текущую и творческую. Текущая СРС – работа с лекционным материалом, подготовка к лабораторным работам; опережающая самостоятельная работа; изучение тем, вынесенных на самостоятельную проработку; подготовка к контрольным работам и зачету. Творческая проблемно-ориентированная самостоятельная работа (ТСР) – поиск, анализ, структурирование и презентация информации по теме раздела дисциплины, применительно к индивидуальному проекту. Также ТСР включает выполнение одного индивидуального домашнего задания (ИДЗ). ИДЗ представляет собой реферативный обзор по индивидуальной теме. Выполнение этих заданий необходимо для закрепления и расширения теоретических и практических знаний. Выполнение ИДЗ оформляется в виде отдельного отчета в соответствии с требованиями стандарта «СТО ТПУ 2.5.01-2011. Система образовательных стандартов. Работы выпускные квалификационные, проекты и работы курсовые. Структура и правила оформления» (http://standard.tpu.ru/standart.html). Объем отчета по ИДЗ 20-25 страниц. Предлагаются следующие темы для выполнения ИДЗ: 1. Операционная система Windows. Ее история, современное состояние и влияние на развитие ИТ индустрии. 2. Операционная система Mac OS X. Ее история, современное состояние и влияние на развитие ИТ индустрии. 3. Операционная система Linux. Ее история, современное состояние и влияние на развитие ИТ индустрии. 4. Операционная система Android. Ее история, современное состояние и влияние на развитие ИТ индустрии. 10 5. Операционная система FreeBSD. Ее история, современное состояние и влияние на развитие ИТ индустрии. 6. Операционная система Plan 9. Ее история, современное состояние и влияние на развитие ИТ индустрии. 7. Операционная система Oberon. Ее история, современное состояние и влияние на развитие ИТ индустрии. 8. Операционная система QNX. Ее история, современное состояние и влияние на развитие ИТ индустрии. 9. Операционная система Chrome OS. Ее история и современное состояние. 10. Операционная система Firefox OS. Ее история и современное состояние. 11. Проект GNU. Его история, современное состояние и влияние на развитие ИТ индустрии. 12. Операционные системы реального времени. Область применения, архитектурные особенности, примеры реализации. 13. Ядро операционной системы. Типы архитектур ядра операционной системы. 14. Встраиваемые операционные системы. 15. Микроконтроллеры. Программирование микроконтроллеров. 16. Язык программирования Fortran. История развития и влияние на индустрию программирования. 17. Язык программирования LISP. История развития и влияние на индустрию программирования. 18. Язык программирования C. История развития и влияние на индустрию программирования. 19. Центральный процессор. История развития. Архитектура фон Неймана. Современные архитектуры. 20. Мультимедийные операционные системы. Особенности реализации и специфические проблемы мультимедйных ОС. 21. Игровые приставки. История развития и современные игровые платформы. 22. Графические интерфейсы пользователей. История развития и современное состояние. Графический сервер X. 23. Графические интерфейсы пользователей. История развития и современное состояние. Интрефейс Win32 API. 24. Графические интерфейсы пользователей. История развития и современное состояние. Переносимые пользовательские интерфейсы на основе HTML5. 25. Кроссплатформенные средства разработки программного обеспечения. Библиотека Qt. 26. Кроссплатформенные средства разработки программного обеспечения. Библиотека wxWidgets. 6.2 Контроль самостоятельной работы Оценка результатов самостоятельной работы организуется как единство двух форм: самоконтроль и контроль со стороны преподавателя.Самоконтроль в обучающей программе, контроль знаний, полученных с помощью обучающей программы. Защита индивидуального проекта. По результатам текущего и рубежного контроля формируется допуск студента к зачету. Зачет проводится в письменной форме и оценивается преподавателем. 6.3 Учебно-методическое обеспечение самостоятельной работы студентов Для самостоятельной работы студентов используются сетевые информационные образовательные ресурсы: http://www.mcst.ru/os_elbrus http://www.rus-os.narod.ru/ http://www.winline.ru/ http://osys.ru/ 7. СРЕДСТВА (ФОС) ТЕКУЩЕЙ И ИТОГОВОЙ ОЦЕНКИ КАЧЕСТВА ОСВОЕНИЯ ДИСЦИПЛИНЫ 7.1. Текущий контроль Текущий контроль изучения дисциплины состоит из следующих видов: контроль за своевременным и правильным выполнением лабораторных работ и ИДЗ; o контроль усвоения теоретического материала – проведение контрольных работ; 11 и оценка активности участия студента в практических занятиях в ходе проведения лабораторных работ; По результатам проведенных видов контроля формируется допуск студента к итоговому контролю – экзамену. 7.2. Итоговый контроль Итоговый контроль по дисциплине осуществляется по результатам выполнения лабораторных, контрольных работ, активности участия студента в практических занятиях (casestudy), ИДЗ и его защиты. 1. 2. 3. 4. 8. УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ Основная литература Стивенс У.Р. UNIX: разработка сетевых приложений : пер. с англ. / У. Р. Стивенс, Б. Феннер, Э. Рудольфф. – 3-е изд. – СПб.: Питер, 2007. – 1038 с. Молчанов А.Ю. Системное программное обеспечение: учебник для вузов / А. Ю. Молчанов. – 3-е изд. – СПб.: Питер, 2010. – 397 с. Иртегов Д.В. Введение в операционные системы: учебное пособие. – 2-е изд. – СПб.: БХВПетербург, 2008. – 1040 с.: ил. Яремчук С. А. Я. Linux Mint на 100 %.. – СПб.: Питер, 2011. – 240 е.: ил. Дополнительная литература 1. Назаров С.В. Современные операционные системы/ С.В. Назаров, А.И. Широков. – М.: Интернет-Университетет Информационных технологий: Бином. Лаборатория знаний, 2010. 2. Карпов В.Е. Основы операционных систем. Курс лекций: учебное пособие / В.Е. Карпов, К.А. Коньков; под ред. В.П. Иванникова. – Электронное издание. – М.: ИНТУИТ. РУ «Интернет университет информационных технологий», 2005. – 536 с. 3. Курячий Г.В. Операционная система Linux: Курс лекций: учебное пособие / Г. В. Курячий, К. А. Маслинский.– 2-е изд., испр.– М.: ALT Linux; Издательство ДМК Пресс, 2010. – 348 с. 4. Таненбаум Э. Современные операционные системы. 3-е изд. – СПб.: Питер. - 1120с. Программное обеспечение и Internet-ресурсы http://www.mcst.ru/os_elbrus http://www.rus-os.narod.ru/ http://www.winline.ru/ http://osys.ru/ Операционная система FreeBSD 9. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ МОДУЛЯ Компьютеры класса IBM PC с операционной системой FreeBSD. Программа составлена на основе Стандарта ООП ТПУ в соответствии с требованиями ФГОС по направлению 230400 «Информационные системы и технологии». Программа одобрена на заседании кафедры Автоматики и компьютерных систем __________________________________________________________ (протокол № ____ от «___» _______ 2011 г.). Автор Татарский Ф.Е. Рецензент Дмитриева Е.А. 12