Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программа - Операционные системы - 2011.doc
Скачиваний:
41
Добавлен:
01.12.2018
Размер:
151.04 Кб
Скачать

2. Требования к уровню освоения содержания дисциплины

В результате изучения дисциплины студент должен:

Знать

  • структуру обобщенной вычислительной системы; понятия виртуальной машины, менеджера ресурсов, ядра вычислительной системы, компьютерной программы, вычислительной задачи, процесса вычислительной системы; безопасности процессов операционной стека вычислительного процесса;

  • краткую историю развития архитектуры вычислительных систем и ОС: иметь представление о понятиях пакетной ОС, многозадачной ОС, распределенной (сетевой) ОС;

  • основные понятия и концепции ОС: системные вызовы, прерывания, исключительные ситуации, файлы, процессы, нити;

  • понятие о ядре ОС, микроядерной архитектуре, смешанных системах;

  • понятия, связанные с процессами ОС: состояния процессов, планирование процессов, организация кооперации процессов, алгоритмы и синхронизации процессов;

  • организацию и управление памятью компьютера, понятие о виртуальной памяти и архитектурных средствах поддержки виртуальной памяти;

  • общие принципы организации файловой системы компьютера, механизмы реализации файловой системы;

  • принципы функционирования и организации компьютерных сетей;

  • основные команды ОС Linux.

Уметь: пользоваться основными командами ОС Linux, пользоваться ими поодиночке и в комбинациях из командной строки ОС; составлять и запускать на выполнение простейшие скриптовые файлы (командные файлы) для данной ОС; выполнять простейшие настройки ОС и ее сетевых параметров.

Владеть: начальными навыками скриптового программирования в командной оболочке ОС и настройки ОС и ее сетевых параметров.

3. Содержание разделов дисциплины

Структура вычислительной системы и краткая история операционных систем

Структура вычислительной системы; что такое ОС, ОС как виртуальная машина. ОС как менеджер ресурсов; ОС как защитник пользователей и программ; ОС как постоянно функционирующее ядро.

Краткая история эволюции вычислительных систем. Первый период (1945–1955 гг.); ламповые машины; Операционных систем нет. Второй период (1955 г.–начало 60-х). Компьютеры на основе транзисторов. Пакетные операционные системы. Третий период (начало 60-х – 1980 г.). Компьютеры на основе интегральных микросхем. Первые многозадачные ОС. Четвертый период (с 1980 г. по настоящее время). Персональные компьютеры. Классические, сетевые и распределенные системы.

Основные понятия, концепции, основы архитектуры, классификация ОС

Основные понятия, концепции ОС. Системные вызовы; прерывания; исключительные ситуации; файлы; процессы, нити.

Архитектурные особенности ОС. Монолитное ядро; многоуровневые системы (Layered systems); виртуальные машины; микроядерная архитектура; смешанные системы.

Классификация ОС. Реализация многозадачности; поддержка многопользовательского режима; многопроцессорная обработка; системы реального времени.

Начальные сведения о процессах и их планировании

Понятие процесса. Состояния процесса. Операции над процессами и связанные с ними понятия. Набор операций. Process Control Block и контекст процесса. Одноразовые операции. Многоразовые операции. Переключение контекста.

Планирование процессов. Уровни планирования. Критерии планирования и требования к алгоритмам. Параметры планирования. Вытесняющее и невытесняющее планирование.

Алгоритмы планирования процессов

Алгоритмы планирования: First-Come, First-Served (FCFS), Round Robin (RR), Shortest-Job-First (SJF), Гарантированное планирование, Приоритетное планирование. Многоуровневые очереди (Multilevel Queue). Многоуровневые очереди с обратной связью (Multilevel Feedback Queue).

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

Взаимодействующие процессы. Категории средств обмена информацией. Логическая организация механизма передачи информации. Как устанавливается связь? Информационная валентность процессов и средств связи. Особенности передачи информации с помощью линий связи. Буферизация. Поток ввода/вывода и сообщения. Надежность средств связи. Как завершается связь. Нити исполнения.

Синхронизация процессов

Алгоритмы синхронизации. Interleaving, race condition и взаимоисключения. Критическая секция. Программные алгоритмы организации взаимодействия процессов. Требования, предъявляемые к алгоритмам. Запрет прерываний. Переменная-замок. Строгое чередование. Флаги готовности. Алгоритм Петерсона. Алгоритм булочной (Bakery algorithm). Аппаратная поддержка взаимоисключений

Механизмы синхронизации. Семафоры. Концепция семафоров. Решение проблемы producer - consumer с помощью семафоров. Мониторы. Сообщения. Эквивалентность семафоров, мониторов и сообщений. Реализация мониторов и передачи сообщений с помощью семафоров. Реализация семафоров и передачи сообщений с помощью мониторов. Реализация семафоров и мониторов с помощью очередей сообщений.

Тупики, возникающие при синхронизации процессов

Условия возникновения тупиков. Основные направления борьбы с тупиками. Игнорирование проблемы тупиков. Способы предотвращения тупиков. Способы предотвращения тупиков путем тщательного распределения ресурсов. Алгоритм банкира. Предотвращение тупиков за счет нарушения условий возникновения тупиков. Нарушение условия взаимоисключения. Нарушение условия ожидания дополнительных ресурсов. Обнаружение тупиков. Восстановление после тупиков.

Простейшие схемы управления памятью компьютера

Физическая организация памяти компьютера. Логическая память. Связывание адресов. Функции системы управления памятью. Схема с фиксированными разделами. Один процесс в памяти. Оверлейная структура. Динамическое распределение. Свопинг. Схема с переменными разделами. Страничная память. Сегментная и сегментно-страничная организация памяти.

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

Общие сведения о файлах

Имена файлов. Типы файлов. Атрибуты файлов. Организация файлов и доступ к ним. Последовательный файл. Файл прямого доступа. Другие формы организации файлов. Операции над файлами

Директории. Логическая структура файлового архива. Разделы диска. Организация доступа к архиву файлов Операции над директориями. Защита файлов. Контроль доступа к файлам. Списки прав доступа.

Реализация файловой системы

Общая структура файловой системы. Управление внешней памятью. Методы выделения дискового пространства. Выделение непрерывной последовательностью блоков. Связный список. Таблица отображения файлов. Индексные узлы

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

Структура файловой системы на диске. Реализация директорий. Примеры реализации директорий в некоторых ОС. Директории в ОС MS-DOS. Директории в ОС Unix. Поиск в директории. Линейный поиск. Хеш-таблица. Другие методы поиска. Монтирование файловых систем. Связывание файлов. Кооперация процессов при работе с файлами. Примеры разрешения коллизий и тупиковых ситуаций. Надежность файловой системы. Целостность файловой системы. Порядок выполнения операций. Журнализация. Проверка целостности файловой системы при помощи утилит.

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

Физические принципы организации ввода-вывода. Общие сведения об архитектуре компьютера. Структура контроллера устройства. Опрос устройств и прерывания. Исключительные ситуации и системные вызовы. Прямой доступ к памяти (Direct Memory Access – DMA).

Логические принципы организации ввода-вывода. Систематизация внешних устройств и интерфейс между базовой подсистемой ввода-вывода и драйверами. Функции базовой подсистемы ввода-вывода. Блокирующиеся, неблокирующиеся и асинхронные системные вызовы. Буферизация и кэширование. Spooling и захват устройств. Обработка прерываний и ошибок. Планирование запросов.

Алгоритмы планирования запросов к жесткому диску. Строение жесткого диска и параметры планирования Алгоритм First Come First Served (FCFS) Алгоритм Short Seek Time First (SSTF). Алгоритмы сканирования (SCAN, C-SCAN, LOOK, C-LOOK).

Основы сетевых технологий и сетевых функций ОС

Взаимодействие удаленных процессов как основа работы вычислительных сетей. Основные вопросы логической организации передачи информации между удаленными процессами. Понятие протокола. Многоуровневая модель построения сетевых вычислительных систем. Проблемы адресации в сети. Одноуровневые адреса. Двухуровневые адреса. Удаленная адресация и разрешение адресов. Локальная адресация. Понятие порта. Полные адреса. Понятие сокета. Проблемы маршрутизации в сетях. Связь с установлением логического соединения и передача данных с помощью сообщений. Синхронизация удаленных процессов.

Основы организации компьютерных сетей

Два корня сетей передачи данных. Появление первых вычислительных машин. Программные мониторы — первые операционные системы. Мультипрограммирование. Многотерминальные системы — прообраз сети. Первые сети — глобальные. Наследие телефонных сетей. Мини-компьютеры — предвестники локальных сетей. Появление стандартных технологий локальных сетей. Роль персональных компьютеров в эволюции компьютерных сетей. Новые возможности пользователей локальных сетей. Эволюция сетевых операционных систем. Связь компьютера с периферийными устройствами. Связь двух компьютеров. Клиент, редиректор и сервер. Задача физической передачи данных по линиям связи. Топология физических связей. Адресация узлов сети.

Модель OSI и стандартизация сетей

Многоуровневый подход. Декомпозиция задачи сетевого взаимодействия. Протокол. Интерфейс. Стек протоколов . Модель OSI. Общая характеристика модели OSI. Физический уровень. Канальный уровень. Сетевой уровень. Транспортный уровень. Сеансовый уровень. Представительный уровень. Прикладной уровень. Сетезависимые и сетенезависимые уровни. Понятие "открытая система". Модульность и стандартизация. Источники стандартов. Стандарты Internet. Стандартные стеки коммуникационных протоколов. Стек OSI. Стек TCP/IP. Стек IPX/SPX. Стек NetBIOS/SMB.

Основы работы в ОС Linux

Сеанс работы в Linux. Терминал и командная строка. Работа с файловой системой. Права доступа. Работа с текстовыми данными. Возможности командной оболочки. Текстовые редакторы. Работа с внешними устройствами. Конфигурационные файлы. Программирование в командной оболочке.