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

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

Адрес e-mail:

Информатика

 

ПРОГРАММА

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

 

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

Программа курса

1. Введение.

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

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

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

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

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



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

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

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

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

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

Разделы носителя информации ( partitions ) в UNIX . Логи­ческая структура файловой системы и типы файлов в UNIX . Организация файла на диске в UNIX на примере файловой системы s 5 fs . Понятие индексного узла ( inode ). Организация директорий (каталогов) в UNIX . Понятие суперблока. Указа­тель текущей позиции в файле. Системная таблица файлов и таблица индексных узлов открытых файлов. Операции над файлами и директориями. Понятие жестких и мягких связей. Системные вызовы и команды для выполнения операций над файлами и директориями: chmod , chown , chgrp , open (), creat (), read (), write (). close (), ftntncate (), lseek (), link (), symlink (), unlink (). Функции для изучения содержимого директо­рий opendir (), readdir (), rewinddir (), closedir (). Понятие вирту­альной файловой системы.

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

Блочные и символьные устройства в LJNIX . Понятие драйвера. Блочные, символьные драйверы. Файловый интер­фейс к драйверам. Коммутатор устройств. Старший и млад­ший номер устройства. Понятие сигнала в UNIX . Способы возникновения сигналов и виды их обработки. Системный вызов kill () и команда kill (). Системный вызов signal (). Уста­новка собственного обработчика сигнала. Сигналы SIGUSR 1 и SIGUSR 2. Использование сигналов для синхронизации процессов. Завершение порожденного процесса. Системный вызов waitpid (). Сигнал SIGCHLD . Возникновение сигнала SIGPIPE при попытке записи в pipe или FIFO , который никто не собирается читать. Понятие о надежности сигналов.

 

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

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

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





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



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

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

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

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

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

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

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

Электронные ресурсы

1.  http :// cs . mipt . ru

2.  http :// acm . mipt . ru

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

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

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

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

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