- •Министерство образования российской федерации
- •Содержание
- •Введение
- •Предмет и задачи курса
- •Рекомендации по литературе
- •Краткий очерк истории ос
- •Предыстория ос
- •Пакетные ос
- •Ос с разделением времени
- •Однозадачные ос для пэвм
- •Многозадачные ос для пк с графическим интерфейсом
- •Классификация ос
- •Критерии оценки ос
- •Надежность
- •Эффективность
- •Удобство
- •Масштабируемость
- •Способность к развитию
- •Мобильность
- •Основные функции и структура ос
- •Ос, используемые в дальнейшем изложении
- •Управление устройствами
- •Основные задачи управления устройствами
- •Классификация периферийных устройств и их архитектура
- •Прерывания
- •Архитектура подсистемы ввода/вывода
- •Способы организации ввода/вывода
- •Ввод/вывод по опросу и по прерываниям
- •Активное и пассивное ожидание
- •Синхронный и асинхронный ввод/вывод
- •Буферизация и кэширование
- •Понятие буферизации
- •Сглаживание неравномерности скоростей процессов
- •Распараллеливание ввода и обработки
- •Согласование размеров логической и физической записи
- •Редактирование при интерактивном вводе
- •Кэширование дисков
- •Опережающее чтение.
- •Драйверы устройств
- •Управление устройствами в ms-dos
- •Уровни доступа к устройствам
- •Драйверы устройств в ms-dos
- •Управление символьными устройствами
- •Управление блочными устройствами
- •Структура диска
- •Разделы и логические тома
- •Средства доступа к дискам
- •Управление устройствами вWindows
- •Драйверы устройств в Windows
- •Доступ к устройствам
- •Управление устройствами вUnix
- •Драйверы устройств вUnix
- •Устройство как специальный файл
- •Управление данными
- •Основные задачи управления данными
- •Характеристики файлов и архитектура файловых систем
- •Размещение файлов
- •Защита данных
- •Разделение файлов между процессами
- •Файловая системаFaTи управление данными вMs-dos
- •Общая характеристика системы fat
- •Структуры данных на диске
- •Структура записи каталога файловой системы fat
- •Создание и удаление файла
- •Работа с файлами в ms-dos
- •Системные функции
- •Доступ к данным
- •Структуры данных в памяти
- •Новые версии системы fat
- •Файловые системы и управление данными вUnix
- •Архитектура файловой системы unix
- •Жесткие и символические связи
- •Монтируемые тома
- •Типы и атрибуты файлов
- •Управление доступом
- •Структуры данных файловой системыUnix
- •Доступ к данным в unix
- •Развитие файловых системUnix
- •Файловая системаNtfSи управление данными вWindows
- •Особенности файловой системы ntfs
- •Структуры дисковых данных
- •Главная таблица файлов
- •Атрибуты файла
- •Доступ к данным
- •Защита данных
- •Аутентификация пользователя
- •Дескриптор защиты
- •Управление процессами
- •Основные задачи управления процессами
- •Реализация многозадачного режима
- •Понятия процесса и ресурса
- •Квазипараллельное выполнение процессов
- •Состояния процесса
- •Вытесняющая и невытесняющая многозадачность
- •Дескриптор и контекст процесса
- •Реентерабельность системных функций
- •Дисциплины диспетчеризации и приоритеты процессов
- •Проблемы взаимодействия процессов
- •Изоляция процессов и их взаимодействие
- •Проблема взаимного исключения процессов
- •Двоичные семафоры Дейкстры
- •Средства взаимодействия процессов
- •Целочисленные семафоры
- •Семафоры с множественным ожиданием
- •Сигналы
- •Сообщения
- •Общая память
- •Программные каналы
- •Проблема тупиков
- •Управление процессами вMs-dos
- •Процессы в ms-dos
- •Среда программы
- •Запуск программы
- •Завершение работы программы
- •Перехват прерываний и резидентные программы
- •Управление процессами вWindows
- •Понятие объекта в Windows
- •Процессы и нити
- •ПланировщикWindows
- •Процесс и нить как объекты
- •Синхронизация нитей
- •Способы синхронизации
- •Объекты синхронизации и функции ожидания
- •Типы объектов синхронизации
- •Критические секции
- •Сообщения
- •Управление процессами в unix
- •Жизненный цикл процесса
- •Группы процессов
- •Программные каналы
- •Сигналы
- •Средства взаимодействия процессов в стандарте posix
- •Планирование процессов
- •Состояния процессов в unix
- •Приоритеты процессов
- •Интерпретатор команд shell
- •Управление памятью
- •Основные задачи управления памятью
- •Виртуальные и физические адреса
- •Распределение памяти без использования виртуальных адресов
- •Настройка адресов
- •Распределение с фиксированными разделами
- •Распределение с динамическими разделами
- •Сегментная организация памяти
- •Страничная организация памяти
- •Сравнение сегментной и страничной организации
- •Управление памятью в ms-dos
- •Управление памятью вWindows
- •Структура адресного пространства
- •Регионы
- •Отображение исполняемых файлов
- •Файлы, отображаемые на память
- •Стеки и кучи
- •Управление памятью вUnix
- •Литература
- •Дроздов Сергей Николаевич операционные системы Конспект лекций
Литература
Олифер В.Г., Олифер Н.А. Сетевые операционные системы. СПб.: Питер, 2001. 544 с.
Таненбаум Э. Современные операционные системы. СПб.: Питер, 2002. 1040 с.
Столлингс В. Операционные системы. М.: Вильямс, 2002. 848 с.
Бек Л. Введение в системное программирование. М.: Мир, 1988. 448 с.
Краковяк С. Основы организации и функционирования ОС ЭВМ. М.: Мир, 1988. 480 с.
Кейслер С. Проектирование операционных систем для малых ЭВМ. М.: Мир, 1986. 680 с.
Шоу А. Логическое проектирование операционных систем. М.: Мир, 1981. 360 с.
Рихтер Дж. Windowsдля профессионалов. М.: Издательский отдел «Русская редакция» ТОО “ChannelTradingLtd.”, 1995. 720 с.
Питрек М. Секреты системного программирования в Windows95. Киев, Диалектика, 1996. 448 с.
Питрек М. Внутренний мир Windows. Киев, «ДиаСофт Лтд.», 1995. 416 с.
Робачевский А.М. Операционная система UNIX. СПб.: БХВ, 1999. 528 с.
Дансмур М., Дейвис Г. Операционная система UNIXи программирование на языке Си. М.: Радио и связь, 1989. 192 с.
Бах М. Архитектура операционной системы UNIX.
Финогенов К.Г. Самоучитель по системным функциям MS-DOS. М.: Радио и связь, Энтроп, 1995. 382 с.
Кнут Д. Искусство программирования. Т.1, Основные алгоритмы. М.: Вильямс, 2002. 720 с.
http://www.citforum.ru
http://www.rsdn.ru
http://www.emanual.ru
http://www.infocity.kiev.ua
http://www.helloworld.ru
http://www.msdn.microsoft.com
http://www.sysinternals.com
http://www.bcd.org
http://www.linux.org
http://www.informit.com
Дроздов Сергей Николаевич операционные системы Конспект лекций
Для студентов специальностей 220400, 351500
Ответственный за выпуск Дроздов С.Н.
Редактор
Корректор
ЛР № 020565 от 23 июня 1997 г. Подписано к печати
Формат 80 64Бумага офсетная.
Офсетная печать Усл. п. л. – Уч.-изд. л. –
Заказ № < < C> > Тираж экз.
Издательство Таганрогского государственного радиотехнического университета
ГСП 17А, Таганрог, 28, Некрасовский, 44
Типография Таганрогского государственного радиотехнического университета
ГСП 17А, Таганрог, 28, Энгельса, 1
1Как вспоминает один из разработчиков первого советского компьютера МЭСМ (Малая(!) Электронная Счетная Машина), когда этого монстра включали, то приходилось в январе месяце открывать все окна, чтобы удержать температуру в машинном зале в пределах 30.
1Источник термина не совсем понятен. Среди значений английского слова «cash» наиболее подходящим кажется «наличные деньги» - та мелочь в кошельке, которая позволяет не обращаться каждый раз в банк ради мелких покупок.
1Вспомните, как поступаетWindowsпри очередной загрузке после некорректного выключения компьютера.
1Теоретически можно задать число копийFAT, отличное от двух. Это число хранится как один из параметров вBOOT-секторе. На практике всегда используются две копииFAT.
1Как вы думаете, в чем разница между перемещением файла в пределах одного диска и перемещением с диска на диск?
2Придумано около десятка неудачных вариантов русского эквивалента для термина «handle», среди них – дескриптор, ссылка, логический номер, ключ, манипулятор, описатель, индекс... Выразительнее всего был бы прямой перевод – «рукоятка», но ни у кого не хватает смелости, чтобы ввести такой «несерьезный» термин. Так что давайте удовольствуемся честной транслитерацией «хэндл».
1Налицо некоторый разнобой в общепринятой терминологии: в системе сневытесняющейдиспетчеризациейвытеснениепроцесса все-таки возможно, но только по инициативе самого процесса.
1Иногда используют также термин «разделение времени» (timesharing). Однако этот термин лучше оставить для обозначения многотерминальных ОС, описанных в п. 1.3.3. К системам с квантованием времени относятся также ОС реального времени, заметно отличающиеся от систем разделения времени.
1Но к экзамену вспомнить!
1Одно и то же расширениеEXEозначает различные форматы программ дляMS-DOSи дляWindowsразных версий. Каждый из этих форматов имеет собственную сигнатуру. Например, дляEXE-файлов современнойWindowsиспользуется сигнатура 'PE'.
1Использование слова «nice» – «приятный, любезный, благовоспитанный, изящный» в данном контексте обычно объясняют так: этот процесс настолько любезен, что уступает всем дорогу.
1Опыт подсказывает, что как только компьютеры с памятью в несколько гигабайт станут обычными, появятся и программы, способные найти более или менее полезное употребление всей этой памяти.