- •И.Н.Акуленок, а.В.Акуленок
 - •Часть I. Основы операционной системы unix Утверждено советом университета
 - •Введение
 - •Глава 1. История создания ос unix
 - •Реализации oc unix
 - •Unix на платформе Intel
 - •Доля компьютеров с ос unix (1993 год)
 - •Продажи unix–серверов (III квартал 2007 года)
 - •1.1. Первые шаги по созданию unix
 - •1.2. Исследовательские версии unix
 - •1.3. Основные стандарты
 - •1.3.1. Основные задачи стандартизации
 - •1.4. Разработчики операционных систем
 - •1.4.1. Версии at&t
 - •1.4.2. Версии Microsoft/sco
 - •1.4.3. Версии университета Беркли
 - •1.4.4. Версии компании Sun
 - •1.4.5. Версии компании Nowell
 - •1.4.6. Популярные версии unix
 - •1.4.7. Свободно распространяемые системы unix
 - •1.5. Реализация ядра unix
 - •1.5.1. Микроядро Mach
 - •1.5.2. Микроядро Chorus
 - •1.6 Характеристики oc unix
 - •1.6.1.Файловая система
 - •1.6.2. Многозадачность
 - •1.6.3. Многопользовательский режим
 - •1.6.4. Мобильность
 - •1.6.5. Виртуальная память
 - •1.6.6. Связь между задачами
 - •1.6.7. Внешние устройства
 - •1.6.8. Связь между компьютерами
 - •1.6.9. Графический пользовательский интерфейс
 - •1.6.10. Безопасность
 - •1.6.11. Поддержка баз данных
 - •1.6.12. Наличие стандартов
 - •1.6.13. Открытость
 - •1.6.14. Разработка программного обеспечения
 - •1.7. Контрольные вопросы
 - •1.8. Тесты
 - •Глава 2. Функционирование ос unix
 - •2.1. Ядро
 - •2.1.1. Функции ядра
 - •2.1.2. Структура ядра
 - •2.1.3. Файловая подсистема
 - •2.1.4. Подсистема управления процессами
 - •2.1.5. Подсистема ввода/вывода
 - •2.2. Командный процессор Shell
 - •2.3. Программы–утилиты
 - •2.4. Контрольные вопросы
 - •2.5. Тесты
 - •Глава 3. Процессы
 - •3.1. Контекст процесса
 - •3.3. Типы процессов
 - •3.3.1. Системные процессы
 - •3.3.2. Демоны
 - •3.3.3. Прикладные процессы
 - •3.4. Атрибуты процесса
 - •3.4.1. Идентификатор процесса
 - •3.4.2. Идентификатор родительского процесса
 - •3.4.3. Приоритет процесса
 - •3.4.4. Терминальная линия
 - •3.4.5. Реальный и эффективный идентификаторы пользователя
 - •3.4.6. Реальный и эффективный идентификаторы группы
 - •3.4.7. Идентификатор терминальной группы
 - •3.5. Иерархия процессов
 - •3.6. Взаимодействие процессов
 - •3.6.1. «Отцы», «дети», «сироты», «зомби»
 - •3.7. Системные вызовы
 - •3.7.1. Механизм создания процесса и запуска программы
 - •3.7.2. Графический пример дерева процессов
 - •3.8. Связи между процессами
 - •3.8.1. Сигналы
 - •Сигналы posix 1.1
 - •3.8.2. Очереди сообщений
 - •3.8.3. Семафоры
 - •3.8.4. Совместная память
 - •3.8.5. Программные каналы
 - •3.8.6. Программные гнезда
 - •3.9. Контрольные вопросы
 - •3.10. Тесты
 - •Глава 4. Файловая система unix
 - •4.1. Имена файлов
 - •4.2. Структура файловой системы
 - •4.2.1. Загрузочный блок
 - •4.2.2. Суперблок
 - •4.2.3 Дескрипторы файлов
 - •4.2.4. Блоки данных и свободные блоки
 - •4.3. Типы файлов
 - •4.3.1. Обычные файлы
 - •4.3.2. Каталоги
 - •4.3.4. Символические связи
 - •4.3.5. Fifo – Именованные каналы
 - •4.3.6. Сокеты
 - •4.3.7. Обозначение типов файлов
 - •Типы файлов
 - •4.4. Дескриптор обычного файла
 - •4.5. Дескриптор каталога
 - •4.6. Дескриптор специального файла
 - •4.7. Системная таблица файлов
 - •4.8. Монтирование файловых систем
 - •4.9. Демонтирование файловых систем
 - •4.10. Проверка и восстановление файловых систем
 - •4.11. Журналирование файловых систем
 - •4.12. Контрольные вопросы
 - •4.13. Тесты
 - •Глава 5. Этапы начальной загрузки ос Unix
 - •5.1. Загрузка и инициализация ядра
 - •5.2. Распознавание и конфигурирование устройств
 - •5.3. Создание спонтанных процессов
 - •5.4. Выполнение команд оператора
 - •5.5. Выполнение командных файлов запуска системы
 - •5.6. Переход в многопользовательский режим
 - •5.7. Контрольные вопросы
 - •5.8. Тесты
 - •Глава 6. Обзор командных файлов
 - •6.1. Процесс init
 - •6.1.1. Формат файла inittab
 - •6.1.2. Уровни выполнения
 - •Уровни выполнения
 - •6.1.3. Дисциплины обработки процесса
 - •Дисциплины обработки процесса
 - •6.1.4. Запуск и этапы работы процесса init
 - •6.2. Процесс rc
 - •6.2.1. Сценарии запуска системы Solaris
 - •6.3. Процесс cron
 - •6.4. Процесс регистрации пользователей
 - •6.5. Контрольные вопросы
 - •6.6. Тесты
 - •Глава 7. Останов системы
 - •7.1. Выключение питания
 - •7.2. Команда shutdown
 - •7.3. Команда halt
 - •7.4. Изменение уровня выполнения процесса init
 - •Глава 8. Задачи системного администрирования
 - •8.1. Инструменты администрирования
 - •8.1.1. Администрирование aix
 - •8.1.2. Администрирование hp-ux
 - •8.1.3. Администрирование Solaris
 - •8.1.4. Администрирование Linux
 - •8.2. Пользователь root
 - •8.2.1. Команда su
 - •8.3. Добавление новых пользователей в систему
 - •8.3.1. Файл /etc/passwd
 - •Идентификаторы пользователей
 - •8.3.2. Файл /etc/group
 - •8.4. Контрольные вопросы
 - •8.5. Тесты
 - •Литература
 - •Содержание
 - •Глава 1. История создания ос unix 6
 - •Глава 2. Функционирование ос unix 51
 - •Глава 3. Процессы 75
 - •Глава 4. Файловая система unix 116
 - •Акуленок Ирина Николаевна Акуленок Анатолий Васильевич
 - •Часть I. Основы операционной системы unix
 
министерство образования российской федерации
САНКТ–ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ МОРСКОЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
И.Н.Акуленок, а.В.Акуленок
ОПЕРАЦИОННЫЕ СРЕДЫ БОЛЬШИХ СИСТЕМ
Часть I. Основы операционной системы unix Утверждено советом университета
в качестве учебного пособия
Санкт–Петербург
2008
Рецензенты:
Акуленок И.Н., Акуленок А.В. Основы операционной системы UNIX. Часть I. Учеб.пособие. Спб.: Изд.центр СПбГМТУ, 2008, 132 с.
При работе над второй редакцией в пособие было добавлено несколько новых глав, большая часть исходного материала была пересмотрена. В результате пособие по курсу "Операционные среды больших систем" стало состоять из трех частей. В первой части – "Основы операционной системы UNIX" рассмотрены принципы организации, идеологии и архитектуры системы. Во второй части курса – "Работа с файловой системой ОС UNIX" изложены основы использования команд UNIX и дано полное описание большинства общеупотребимых команд, что позволит быстро начать работу с ОС UNIX. В третьей части, под названием "Основы программирования в shell'е", подробно описаны интерпретаторы UNIX – sh, csh, ksh и bash, возможности из применения и основные приемы программирования в shell’e для создания сценариев, что позволит одинаково успешно работать со всеми интерпретаторами UNIX.
Курс "Операционные среды больших систем" предназначен для студентов кораблестроительных специальностей, а также для всех потенциальных пользователей операционной системы UNIX – от новичков, которые смогут детально ознакомиться с основными возможностями операционной системы UNIX, до профессионалов, узнающих много полезного. Пособие может использоваться и для самостоятельного изучения основ операционной системы UNIX.
Ил. 21. Табл.7. Библиогр.:16 назв.
 СПбГМТУ,
2008
Введение
В первой части курса поставлена задача дать описание наиболее развитой на сегодняшний день и в то же время остающейся классической ОС UNIX SYSTEM V, которой следуют большинство разработчиков во всем мире. Следует иметь в виду, что именем UNIX обозначается значительное семейство операционных систем, каждая из которых имеет свое название и присущие только ей особенности. В этой части сделана попытка выделить то общее, что составляет «генотип» UNIX, а именно: базовый пользовательский и программный интерфейсы, назначение основных компонентов, их архитектуру и взаимодействие, и на основе этого представить систему в целом.
Первое, над чем надо бы задуматься, что есть операционная система? В конце концов, нет большого смысла изучать UNIX без знания значения этого слова. Вторая и третья глава позволят вам освоить терминологию UNIX, принципы построения и архитектурные особенности операционной системы. Без знания этой «анатомии» работа в операционной системе превращается в использование заученных команд, а неизбежные ошибки приводят к необъяснимым последствиям. Здесь кратко описываются:
ядро системы (подсистемы ввода/вывода, управления памятью и процессами, а также файловая подсистема);
режим пользователя и режим ядра;
системные вызовы;
процессы;
межпроцессорные коммуникации.
Одной из наиболее важных характерных черт UNIX – ее файловая система, поэтому одна из глав (четвертая) знакомит вас с организацией файловой системы и методами, используемыми для идентификации файлов и структуры каталогов. Остальные главы посвящены рассмотрению следующих вопросов:
начальная загрузка, понимание этапов которой позволяет относительно легко устранять неполадки, возникающие в системе;
обзор стартовых командных файлов;
задачи системного администрирования;
останов системы.
