Lectures

Учебная программа подготовки по дисциплине "Операционные системы".

 

Рабочая учебная программа подготовки по дисциплине "Операционные системы". Updated October, 28 2014.

 

Лекция 1. Вводная лекция. История развития, назначение, функции и классификация операционных систем. Updated September, 09 2014.

 

Лекция 2. Основные понятия, системные вызовы, структура операционной системы. Updated September 9, 2014.

 

Лекция 3. Процессы и потоки. Межпроцессное и межпоточное взаимодействие. Часть 1. Updated September 09, 2014.

 

Лекция 3. Процессы и потоки. Межпроцессное и межпоточное взаимодействие. Часть 2. Updated September 09, 2014.

 

Лекция 3. Процессы и потоки. Межпроцессное и межпоточное взаимодействие. Часть 3. Механизмы синхронизации в распределенных системах. Updated September, 09 2014.

 

Лекция 4. Распределение ресурсов. Взаимоблокировки. Updated September, 09 2014.

 

Лекция 5. Распределение ресурсов. Управление памятью. Общие вопросы. Часть 1. Updated September, 09 2014.

 

Лекция 5. Распределение ресурсов. Управление памятью. Виртуальная память. Часть 2. Updated September, 09 2014.

 

Лекция 5. Распределение ресурсов. Управление памятью. Моделирование алгоритмов управления памятью. Часть 3. Updated September, 09 2014.

 

Лекция 6. Ввод-вывод. Основные понятия. Часть 1. Updated September, 09 2014.

 

Лекция 6. Ввод-вывод: диски, таймеры. Часть 2. Updated September 09, 2014.

 

Лекция 7. Файловые системы. Общие понятия. Updated September 09, 2014.

 

Лекция 7. Файловые системы. Часть 2. Файловые системы MS-DOS, XFS, EXT4. Updated September, 09 2014.

 

Лекция 8. Операционные системы для многопроцессорных и многомашинных вычислительных систем. Мультипроцессоры. OpenMP. Часть 1. Updated September 09, 2014.

 

Лекция 8. Операционные системы для многопроцессорных и многомашинных вычислительных систем. Кластеры. MPI. Часть 2. Updated Septemer 09, 2014.

 

Лекция 9. Организация сетевого взаимодействия. Updated Septemer 09, 2014.

 

Лекция 10. Основные понятия. Архитектура ОС Windows. Updated September 09, 2014.

 

Лекция 11. Управление процессами, потоками и памятью в ОС Windows. Часть 1. Updated September 09, 2014.

 

Лекция 11. Управление процессами, потоками и памятью в ОС Windows. Часть 2. Updated September 19, 2014.

 

Лекция 12. Управление вводом-выводом, файловой системой и безопасностью в ОС Windows. Часть 1. Безопасность ОС Windows. Updated September 09, 2014.

 

Лекция 12. Управление вводом-выводом, файловой системой и безопасностью в ОС Windows. Часть 2. Управление вводом-выводом и внешней памятью в ОС Windows. Updated September 09, 2014.

 

Лекция 12. Управление вводом-выводом, файловой системой и безопасностью в ОС Windows. Часть 3. Файловые системы ОС Windows. (Самостоятельное изучение) Updated September 09, 2014.

 

Лекция 13. Архитектура ОС UNIX. Особенности программирования. Управление потоками и процессами. Updated November, 21 2010.

 

Лекция 14. Управление памятью, ввод-вывод, файловая система и безопасность в ОС UNIX. Updated November, 21 2010.

 

Лекция 15. Архитектура ОС QNX. Особенности программирования. Процессы и потоки. Updated November, 21 2010.

 

Список вопросов модульных контрольных работ. Варианты билетов для модульных контрольных работ. Темы курсовой работы. Требования к оформлению и содержанию курсовой работы. Темы расчетно-графической работы. Билеты к экзамену. Билеты к зачету. Updated January, 27 2013.

 

Term Papers

Методическое пособие по оформлению курсовой работы. 

Кулик М.С., Полухин А.В. Положение о дипломные работы (проекты) выпускников Национального авиационного университета. Приказ ректора университета от 03.11.2006 №178/од. –НАУ. –Киев, 2006. –с. 73.

Design-Graphical Tasks

Пример отчета к расчетно-графической работе.  Исследование временных характеристик многопоточного приложения в ОСРВ QNX во время обработки информации от периферийных устройств. 

Laboratory Research

Шаблон лабораторной работы в формате Microsoft Word.

 

 

Пример отчета по лабораторной работе №2 для случая, когда рассматривается межпроцессное взаимодействие между удаленными компьютерами посредством web-сервисов, в формате Microsoft Word. Updated Fabruary, 07 2011.

 

 

Пример функциональной спецификации к приложению, которое разрабатывается в рамках лабораторной работы, в формате Microsoft Word.

 

 

Пример функциональной спецификации к приложению, которое разрабатывается в рамках лабораторной работы.

 

 

Лабораторная работа 1. Инсталляция операционных систем QNX, PCBSD, Ubuntu, Linux, Windows XP.

  

Лабораторная работа 2. Разработка многопроцессных и многопоточных приложений.

  

Лабораторная работа 2. Разработка многопроцессных и многопоточных приложений. Исходный код на языке C# многопоточного приложения для анализа логов web-сервера Apache. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 3. Разработка многопроцессных и многопоточных приложений с доступом к совместным ресурсам. 

  

Лабораторная работа 3. Разработка многопроцессных и многопоточных приложений с доступом к совместным ресурсам. Исходный код на языке C# многопоточного приложения для анализа логов web-сервера Apache. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 4. Разработка приложений с активным использованием больших объемов памяти. 

  

Лабораторная работа 4. Разработка приложения активно использующего оперативную память. Исходный код на языке C++ библиотеки для управления динамическим выделением памяти. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 5. Разработка приложения для работы с USB устройствами. 

  

Лабораторная работа 5. Разработка приложения для работы с USB устройствами. Исходный код на языке C# библиотеки для взаимодействия с различными устройствами. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 6. Разработка приложения для эмуляции работы файловой системы. 

  

Лабораторная работа 6. Разработа приложения для эмуляции работы файловой системы. Исходный код примера приложения на языке С++. Microsoft Visual Studio 2005 Solution.

 

Лабораторная работа 7. Разработка приложения для многопроцессорных вычислительных систем с помощью библиотеки OpenMP. Updated May 10, 2010.

  

Лабораторная работа 7. Разработка приложения для многопроцессорных вычислительных систем с помощью библиотеки OpenMP. Исходный код приложения на языке C++ с использование стандартной бибилиотеки С++ и бибилиотеки OpenMP v2.0. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 8. Разработка распределенного приложения с использованием технологии Remote Procedures Calls (RPC). Updated May 16, 2010. 

  

  

Лабораторная работа 8. Разработка распределенного приложения с использованием технологии Remote Procedures Calls (RPC). Приложение анализирует логи web-сервера Apache. Исходный код приложения на языке C++ с использованием неявных RPC-вызовов. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 8. Разработка распределенного приложения с использованием технологии Remote Procedures Calls (RPC). Исходный код приложения на языке C++ с использованием явных и неявных RPC-вызовов. Microsoft Visual Studio 2005 Solution. Детальное описание данного приложения приведено: http://www.codeproject.com/KB/IP/rpcintro1.aspx

  

Лабораторная работа 9. Изучение инструментов по работе с операционными системами семейства Microsoft Windows. Updated January 14, 2012. 

  

  

Лабораторная работа 10. Разработка windows-сервиса и клиентского приложения к нему. Updated September 24, 2010. 

  

  

Лабораторная работа 10. Разработка windows-сервиса и клиентского приложения к нему.  Приложение архивирует и разархивирует файлы посредством windows-сервиса, управление процессом архивации происходит через специальное клиентское приложение. Межпроцессное взаимодействие реализовано через Microsoft .NEt Remoting. Исходный код приложения на языке C#. Microsoft Visual Studio 2005 Solution.

  

Лабораторная работа 11. Разработка приложения для восстановления удаленных файлов на NTFS диске. Updated October 17, 2010. 

  

  

Лабораторная работа 11. Разработка приложения для восстановления удаленных файлов на NTFS диске. Исходный код приложения на языке C++. Microsoft Visual Studio 2005 Solution. Детальное описание данного приложения приведено: www.codeproject.com/KB/files/NTFSUndelete.aspx

Лабораторная работа 12. Разработка консольного приложения для FreeBSD в среде KDevelop для анализа логов web-сервера Apache. Updated October 24, 2010. 

  

  

Лабораторная работа 13. Разработка системного сервиса и консольного приложения для взаимодействия с ним для FreeBSD в среде KDevelop. Updated November 14, 2010. 

  

  

Лабораторная работа 14. Разработка серверного и консольного клиентского приложения для обмена сообщения с ним для QNX в среде QNX Mnemonics IDE. Updated November 25, 2010. 

  

  

Лабораторная работа 14. Разработка серверного и консольного клиентского приложения для обмена сообщения с ним для QNX в среде QNX Mnemonics IDE. Исходный код приложения на языке C++. Детальное описание данного приложения приведено: www.codeproject.com/KB/IP/client_server_socket.aspx

Лабораторная работа 14. Разработка серверного и консольного клиентского приложения для обмена сообщения с ним для QNX в среде QNX Mnemonics IDE. Исходный код приложения на языке C++. Детальное описание данного приложения приведено: http://www.codeproject.com/KB/IP/singleServerMulClient.aspx 

  

  

Additional info

Д. Кнут. Исусство программирования. Том 1. Основные алгоритмы. -2002. -с. 500.

 

Д. Кнут. Исусство программирования. Том 2. Получисленные алгоритмы. -2002. -с. 500.

 

Д. Кнут. Исусство программирования. Том 3. Сортировка и поиск. -2002. -с. 355.

 

Э. Таненбаум. Современные операционные системы. 2-ое изд.

 

Э. Таненбаум, А. Вудхалл. Операционные системы: разработка и реализация.

 

С. Кейслер. Проектирование операционных систем для малых ЭВМ.

 

А. Шоу. Логическое проектирование операционных систем.

 

В.Г. Олифер, Н.А. Олифер. Сетевые операционные системы, Учебник для ВУЗов.

 

А.К. Гультяев. Виртуальные машины: несколько компьютеров в одном.

 

Д. Алексеев, Е. Ведричев, А. Волков и др. Практика работы с QNX.

 

Р. Кертен. Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform

 

Руководство FreeBSD. Проект документации FreeBSD. -856 с.

 

FreeBSD Architecture Handbook. The FreeBSD Documentation Project. -214 с.

 

Настольная книга Gentoo Linux x86. -100 с.

 

Сборник статей Gentoo Linux x86 v1.5. -1074 с.

 

Сборник статей Gentoo Linux x86 v2.0-M2. -1198 с.

 

Ал. Вильямс. Системное программирование в Windows 2000. СпБ: Питер, 2001. -624 с.

 

Уолтер Они. Использование Microsoft Windows Driver Model + исходники. Microsoft Press: Питер, 2003. -763 с.

 

Джонсон М.К., Троан Э.В. Разработка приложений в среде Linux, 2-ое издание. Пер. с англ. М.: ООО "И.Д. Вильямс", 2007. -544 с.

 

Джонс Э., Оланд Д. Программирование в сетях Microsoft Windows. Мастер-класс. Пер. с англ. -СпБ: Питер, М: Издательско-торговый дом "Русская редакция", 2002. -608 с.

 

Молчанов А.Ю. Системное программное обеспечение. Лабораторный практикум. Пер. с англ. -СпБ: Питер, 2005. -284 с.

 

Румянцев П.В. Работа с файлами в Win32 API. -197 с.

 

Руссинович М, Соломон Д. Внутренне устройство Microsoft Windows: Windows Server 2003, Windows XP и Windows 2000. Мастер-класс. Пер. с англ. -4-ое изд. -М: Издательстко-торговый дом "Русская редакция"; Спб: Питер; 2005. -992 с.

 

Хоглунд Г., Батлер Дж. Руткиты: внедрение в ядро Windows. -Спб.: Питер, 2007. -285 с.

 

Саймон Р. Windows 2000 API. -1085 с.

 

Мандиа К., Просис К. Защита от вторжений: Расследование компьютерных преступлений. -486 с.

 

Кэрриэ Б. Криминалистический анализ файловых систем. -Спб.: Питер, 2007. -480 с.

 

Касперски К. Восстановление данных. Практическое руководство. Пер. с англ. -Спб.:БХВ-Петербург, 2006. -352 с.

 

В.В. Лабор. C# Создание приложение для Windows.

 

O'Reilly. C# Cookbook.

 

Руководство по оформлению и документированию исходного кода на языке C# для автоматизированного построения программной документации XML Documentation.

 

Руководство по документированию исходного кода для автоматизированного построения программной документации посредством пакета Doxygen.

 

Влад Головач. Дизайн пользовательского интерфейса. v.1.1. -Usethics.

 

М. Ховард, Д.Лебланк. Защищенный код. 2-е изд., испр.

 

В. Столингс. Основы защиты сетей.