Одним из главных принципов уникальной «системы Физтеха», заложенной в основу образования в МФТИ, является тщательный отбор одаренных и склонных к творческой работе представителей молодежи. Абитуриентами Физтеха становятся самые талантливые и высокообразованные выпускники школ всей России и десятков стран мира.

Студенческая жизнь в МФТИ насыщенна и разнообразна. Студенты активно совмещают учебную деятельность с занятиями спортом, участием в культурно-массовых мероприятиях, а также их организации. Администрация института всячески поддерживает инициативу и заботится о благополучии студентов. Так, ведется непрерывная работа по расширению студенческого городка и улучшению быта студентов.

Адрес e-mail:

Информатика

ПРОГРАММА

  • По курсу: ИНФОРМАТИКА И ПРИМЕНЕНИЕ КОМПЬЮТЕРОВ В НАУЧНЫХ ИССЛЕДОВАНИЯХ (системное программирование обеспечение) Продвинутый уровень
  • для специальности: 010600 «Прикладные математика и физика»
  • факультеты: ФРТК, ФОПФ, ФАКИ, ФМБФ, ФФКЭ, ФАЛТ, ФУПМ
  • кафедра: Информатики
  • курс: II
  • семестр: 3 диф. зачет- 3 сем.
  • лекции: 34 часа Экзамен-нет
  • Лабораторные занятия: 68 часов
  • ВСЕГО ЧАСОВ: 102

 

Скачать версию с программой и заданиями (PDF, 237 Кб)

 

1. Введение.

Цели и задачи курса. Понятие о вычислитель­ном комплексе. Системное программное обеспечение и опе­рационные системы. Краткая история эволюции вычисли­тельных систем. Взаимное влияние software и hardware . Ав­тономные, сетевые и распределенные операционные систе­мы. Классификация автономных операционных систем по их назначению и структуре.

Знакомство с операционной системой UNIX . Системные вызовы и библиотека libc . Понятия login и password . Упро­щенное устройство файловой системы в UNIX . Полные имена файлов. Текущая директория. Относительные имена файлов. Домашняя директория пользователя. Команда man - универ­сальный справочник. Команды cd и Is . Перенаправление стандартного ввода и стандартного вывода. Простейшие ко­манды работы с файлами - cat , cp , mkdir , mv , rm . Шаблоны имен файлов. Пользователь и группа. Системные вызовы getuid () и getgid (). Команды chown и chgrp . Права доступа к регулярному файлу и к директории. Команда chmod . Маска создания файлов. Команда umask . Редактирование файлов, компиляция и запуск программ.

2. Процессы и их планирование в операционной систе­ме.

Понятие процесса. Процесс и программа. Состояния про­цесса. Управляющий блок процесса и его контекст. Операции над процессами. Переключение контекста. Уровни планиро­вания процессов. Критерии планирования и требования к ал­горитмам планирования. Параметры планирования. Вытес­няющее и невытесняющее планирование. Алгоритмы плани­рования: FCFS , RR , SJF , гарантированное планирование, приоритетное планирование, многоуровневые очереди, мно­гоуровневые очереди с обратной связью.

Понятие процесса в UNIX , его контекст. Идентификация процесса. Краткая диаграмма состояний процессов в UNIX .

Иерархия процессов. Системные вызовы getpid () и getppid (). Создание процесса в UNIX . Системный вызов fork (). Завер­шение процесса. Функция exit (). Параметры функции main () в языке С. Переменные среды и аргументы командной строки. Изменение пользовательского контекста процесса. Семейст­во функций для системного вызова exec ().

3. Кооперация процессов.

Взаимодействующие и незави­симые процессы. Категории средств связи. Установление и завершение связи. Прямая и косвенная адресация. Информа­ционная валентность процессов и средств коммуникации. Симплексная, дуплексная и полудуплексная связь. Потоки ввода-вывода и сообщения. Буферизация данных. Надеж­ность обмена информацией. Нити исполнения и их отличие от процессов. Interleaving , race condition и взаимоисключе­ния. Условия Бернстайна. Понятие критической секции про­цесса. Программные алгоритмы организации взаимодействия процессов и предъявляемые к ним требования. Аппаратная поддержка взаимоисключений. Семафоры, мониторы Хора и сообщения. Доказательство эквивалентности мониторов, се­мафоров и сообщений.

Понятие потока ввода-вывода в операционной системе UNIX . Работа с файлами через системные вызовы и через функции стандартной библиотеки. Файловый дескриптор. Наследование файловых дескрипторов при системных вызо­вах fork () и exec (). Системные вызовы open (), read (), write (), close (). FIFO и pipe . Системные вызовы pipe (), mknod (), функция mkfifo (). Особенности системных потоковых вызо­вов при работе с FIFO и pipe . Преимущества и недостатки потокового обмена данными. IPC в UNIX . Пространство имен. Адресация в System V IPC . Функция ftok (). Дескрипто­ры System V IPC . Разделяемая память. Системные вызовы shmget (), shmat (), shmdt (), shmctl (). Команды ipcs и ipcrm . Нить исполнения ( thread ) в UNIX , ее идентификатор. Функ­ция pthread _ self (). Создание и завершение нити исполнения. Функции pthread _ create (), pthread _ exit (), pthread _ join (). Се­мафоры в UNIX . Отличие операций над UNIX семафорами от классических операций. Системные вызовы semget (), semop (), semctl (). Понятие о POSIX семафорах. Очереди сообщений в UNIX . Системные вызовы msgget (), msgsnd (), msgrcv (), msgctl (). Понятие мультиплексирования. Мультиплексирова­ние сообщений. Модель взаимодействия процессов клиент-сервер. Неравноправность клиента и сервера.

4.    Управление памятью.

Связывание адресов. Простейшие схемы управления памятью: схема с фиксированными разде­лами, своппинг, схема с переменными разделами. Проблема размещения больших программ. Понятие виртуальной памя­ти. Страничная память. Сегментная и сегментно-страничная организации памяти. Таблица страниц. Ассоциативная па­мять. Иерархия памяти. Размер страницы. Исключительные ситуации при работе с памятью. Стратегии управления стра­ничной памятью: выборки, размещения и замещения стра­ниц. Алгоритмы замещения страниц: FIFO , ОРТ, LRU и дру­гие. Thrashing . Свойство локальности. Модель рабочего мно­жества. Аппаратно-независимая модель памяти процесса.

5.    Файловые системы.

Имена, структура, типы и атрибуты файлов. Операции над файлами. Директории. Операции над директориями. Защита файлов. Интерфейс файловой системы и ее общая структура.  Методы выделения дискового про­странства: непрерывная последовательность блоков, связный список,  связный  список  с  индексацией,  индексные  узлы. Управление свободным и занятым дисковым пространством: битовый вектор, связный список. Размер блока на диске. Реа­лизация директорий. Монтирование файловых систем. На­дежность и целостность файловых систем.

Разделы носителя информации ( partitions ) в UNIX . Логи­ческая структура файловой системы и типы файлов в UNIX . Организация файла на диске в UNIX на примере файловой системы s 5 fs . Понятие индексного узла ( inode ). Организация директорий (каталогов) в UNIX . Понятие суперблока. Указа­тель текущей позиции в файле. Системная таблица файлов и таблица индексных узлов открытых файлов. Операции над файлами и директориями. Понятие жестких и мягких связей. Системные вызовы и команды для выполнения операций над файлами и директориями: chmod , chown , chgrp , open (), creat (), read (), write (), close (), stat (), fstat (), istat (), ftruncate (), iseek (), Unk (), symlmk (), unlink (). Функции для изучения со­держимого директорий opendir (), readdir (), rewinddiri ), closedir (). Понятие о файлах, отображаемых в память { memory mapped файлах). Системные вызовы ттар(), mummap (). Понятие виртуальной файловой системы. Монти­рование файловых систем в UNIX .

6. Система управления вводом-выводом.

Общие сведе­ния об архитектуре компьютера. Структура контроллера уст­ройства. Опрос устройств и прерывания. Исключительные ситуации и системные вызовы. Прямой доступ к памяти ( Di ­ rect Memory Access - DMA ). Структура системы ввода-вывода. Систематизация внешних устройств и интерфейс между базовой подсистемой ввода-вывода и драйверами. Функции базовой подсистемы ввода-вывода. Блокирующие­ся, не блокирующиеся и асинхронные системные вызовы. Буферизация и кэширование. Spooling и захват устройств. Обработка прерываний и ошибок. Планирование запросов. Алгоритмы планирования запросов к жесткому диску: FCFS , SSTF , SCAN , C - SCAN , LOOK , C - LOOK .

Блочные и символьные устройства в UNIX . Понятие драйвера. Блочные, символьные драйверы, драйверы низкого уровня. Файловый интерфейс к драйверам. Коммутатор уст­ройств. Старший и младший номер устройства. Понятие сиг­нала в UNIX . Способы возникновения сигналов и виды их обработки. Понятия группы процессов, сеанса, лидера груп­пы, лидера сеанса, управляющего терминала сеанса, текущей и фоновой групп процессов. Системные вызовы getpgrp (), setpgrp (), getpgid (), setpgid (), getsid (), setsid (). Системный вы­зов kill () и команда kill (). Особенности получения терминаль­ных сигналов текущей и фоновой группой процессов. Полу­чение сигнала SIGHUP процессами при завершении лидера сеанса. Системный вызов signal (). Установка собственного обработчика сигнала. Сигналы SIGUSR 1 и SIGUSR 2. Использование сигналов для синхронизации процессов. Завершение порожденного процесса. Системный вызов waitpid () Сигнал SIGCHLD и его игнорирование. Возникновение сигнала. S 1 GPIPE при попытке записи в pipe или FIFO , который никто не собирается читать. Понятие о надежности сигналов POSIX функции для работы с сигналами.

7. Сети и сетевые операционные системы.

Причины объ­единения компьютеров в сети. Сетевые и распределенные операционные системы. Взаимодействие удаленных процес­сов как основа работы вычислительных сетей. Локальные и глобальные вычислительные сети. Топология компьютерных сетей. Взаимная синхронизация вычислительных комплек­сов: обнаружение коллизий ( CSMA / CD ), метод передачи эс­тафетной палочки ( token passing ), использование слотоь длл данных. Удаленная адресация и разрешение адресов. Поня­тие о DNS . Локальная адресация. Понятие порта. Полные ад­реса. Понятие со кета ( socket ). Фиксированная, виртуальная и динамическая маршрутизация. Сети, коммутируемые цепя­ми, сообщениями и пакетами данных. Связь с установлением логического соединения и передача данных с помощью со­общении. Многоуровневая модель построения сетевых вы­числительных систем. Семейства и стеки протоколов. Эта­лонная модель OSJ/ISO.

Краткая история семейства протоколов TCP/IP. Общие сьедсния об архитектуре семейства протоколов TCP/IP. Уро­вень сетевого интерфейса. Уровень Internet . Протоколы IP , ICMP , ARP , RARP . Internet-адреса. Транспортный уровень. Протоколы TCP и LIDP . Понятие порта. Понятие encapsulation . Уровень приложений/процессов. Использова­ние модели клиент-сервер для взаимодействия удаленных процессов. Понятие socket в UNIX . Организация связи между удаленными процессами с помощью датаграмм Организация связи между процессами с помошью установки логического соединения Сетевой порядок байт. Функции htons (). htcnl (), ntohs (), niohl (). Функции     преобразования     IР-аресов inet _ ntoa (), inet _ aton (). Функция bzero (). Системные вызовы socket (), bind (), sendto (), recvfrom (), accept (), listen (), connectQ .

8. Проблемы безопасности операционных систем.

Клас­сификация угроз. Формализация подхода к обеспечению ин­формационной безопасности. Классы безопасности. Полити­ка безопасности. Криптография как одна из базовых техноло­гий безопасности ОС. Шифрование с симметричными и ас-симстричными ключами. Правило Кирхгофа. Алгоритм RSA . Идентификация и аутентификация. Пароли, уязвимость па­ролей. Авторизация. Разграничение доступа к объектам ОС. Домены безопасности. Матрица доступа. Недопустимость повторного использования объектов. Аудит, учет использо­вания системы защиты.

Учебно-методическое   и    информационное   обеспечение дисциплины

Основная литература

1. Карпов В. Е., Коньков К. А. Основы операционных сис­тем. - М.: ИНТУИТ.РУ «Интернет-Университет Инфор­мационных технологий», 2005.

Дополнительная литература

1.Стопинге В. Операционные   системы.   -   М.:   Вильяме, 2001.

2.Олифер В.Г., Олифер Н.А. Сетевые операционные систе­мы .  СПб.: Питер, 2001.

3.Стивене У. UNIX : Взаимодействие процессов.  СПб.: Питер, 2002.

4.Стивене У. UNIX : Разработка  сетевых  приложений.  СПб: Питер, 2003.

5.Таненбаум Э. Современные   операционные   системы.  СПб.: Питер, 2002.

6.Дейтел Х.М., Дейтел П.Дж., Х1офпес Д.Р. Операционные системы. Основные принципы: 3-е издание. - М.: ООО «Би­ном-Пресс», 2006.

7.Дейтел Х.М., Дейтел П. Дж.,   Чофнес Д. Р. Операцион­ные системы. Распределенные системы, сети, безопасность: 3-е издание. - М: 000 «Бином-Пресс», 2006.

8.  SilberschatzA., GalvinP. В . Operating System Concepts. 6th edition. - John Willey & Sons, 2002.

Если вы заметили в тексте ошибку, выделите её и нажмите Ctrl+Enter.

© 2001-2016 Московский физико-технический институт
(государственный университет)

Техподдержка сайта

МФТИ в социальных сетях

soc-vk soc-fb soc-tw soc-li soc-li
Яндекс.Метрика