- •Лекция 1. Операционные системы.
- •Экскурс в историю.
- •Основы архитектуры вычислительных систем.
- •Лекция 2. Системы программирования.
- •Выводы:
- •Основы компьютерной архитектуры.
- •Центральный процессор
- •Модель организации прерываний с использованием «вектора прерываний»
- •Лекция 3.Внешние запоминающие устройства.
- •Аппаратная поддержка ос и систем программирования.
- •Регистровые окна
- •Системный стек
- •Виртуальная память
- •Модельный пример организации страничной виртуальной памяти. Лекция 4.Операционная система. Общие характеристики и свойства.
- •Структура ос.
- •Процессы в ос unix.
- •1. Системный вызов fork()
- •2. Системный вызов exec()
- •Лекция 5. Взаимодействие процессов: синхронизация, тупики
- •Средства синхронизации
- •Классические задачи синхронизации процессов
- •Лекция 6 .Основы взаимодействия сети.
- •Многомашинные и многопроцессорные ассоциации.
- •Компьютерные сети
- •Лекция 7. Файловые системы
- •Практическая реализация фс.
- •Лекция 8. Ос unix. Файловая система.
- •Модель версии system V
- •Альтернатива для system V – ffs bsd.
- •Управление внешними устройствами.
- •Лекция 9. Программное управление внешними устройствами
- •Эффективность (когда есть все уровни кэш, но нет интенсивности потоков)
- •Одно из основных качеств программного решения – надежность (24 часа 7 дней в неделю)
- •Oc Unix: Работа с внешними устройствами
- •Лекция 10. Система межпроцессного взаимодействия ipc
- •«Очередь сообщений»
- •Ipc: разделяемая память.
- •1Й процесс:
- •2Й процесс:
- •Close – полная аналогия с работой с файлами, но аргумент – дескриптор сокета.
- •Лекция 11. Планирование
- •Алгоритмы, основанные на приоритетах
- •Планирование в ос unix
- •Планирование в Windows nt.
- •Планирование свопинга в ос Unix
- •Лекция 12. Управление оперативной памятью
- •1.Одиночное непрерывное распределение.
- •2.Распределение разделами.
- •3.Распределение перемещаемыми разделами.
- •4.Страничное распределение.
- •А лгоритм nru
- •Алгоритм fifo
- •Алгоритм «Часы»
- •А лгоритм lru
Лекция 8. Ос unix. Файловая система.
UNIX – революционная ФС, потому что это –
-
первый системный программный продукт, разработанный с использованием языка высокого уровня (обычно – assembler или макрооператоры к нему);
-
элегантная и развитая система управления процессами (fork-exec);
-
особенности ФС:
-
архитектура ФС. UNIX использует древовидную организацию ФС, которая иногда превращается в ориентированный граф, более сложный, чем дерево.
-
исп-ние концепции файлов. Практически все в UNIX-машине представлено в виде файлов. Все через единый интерфейс (раньше все сист вызовы были отдельные).
-
В системе достаточно аккуратно и прагматично организована работа с внешними устройствами. Одно и то же устройство можно в UNIX определить и как байт- и как блок-ориентированное.
-
ОС UNIX получила широкое распространение благодаря «прозрачности» принимаемых системой решений, простоте организации системных данных, алгоритмов и взаимосвязей.
6. UNIX - «переносимая» операционная система. Это означает, что большая часть кода, алгоритмов легко переносятся на другие архитектуры.
Виды файлов в ОС UNIX
Файл Unix – это специальным образом именованный набор данных, размещенный в файловой системе.
Виды файлов:
• обычный файл (regular file). Данные, кот ввели и кот получаем после их выполнения.
• каталог (directory)
• специальный файл устройств (special device file). Файлы, имеющие спец тип, посредством кот можно использовать те или иные драйверы устройств в системе UNIX.
• именованный канал (named pipe). (FIFO) регулярные файлы, имеющие определенную фикс систему доступа
• ссылка (link). Спец файлы, кот могут нарушать древовидную организацию.
• сокет (socket). Спец файлы, предназначенные для вз-я процессов как в рамках одной локальной машины, так и в рамках сети.
Права доступа
Классическая модель рассматривает 3 категории пользователей:
- пользователь (владелец)
- группа
- все пользователи системы
Права каждой категории:
-
чтение
-
модификация
-
запуск на исполнение
права интерпретируются в зависимости от типа файла.
Логическая структура ФС
UNIX предлагает некоторую стандартную структуру ФС, a’priory предполагающую определенные имена каталогов с файлами.
Есть корневой каталог UNIX с точностью до именования. Он содержит программные ядра ОС или часть ядра.
BIN каталог с исполняемыми файлами наиболее распространенных команд UNIXа. Можно перестроить команды в нек каталогах или сделать их разными для разных пользователей.
ETC файл, в кот хранится системная информация, обеспечивающая разного рода настройки в системе, в т.ч. passwd (инф-ция о всех зарегистрированных в системе пользователях).
TMP - временные файлы ФС, сохранность которых не гарантируется после перезапуска системы.
MNT - корневой каталог локальной ФС ассоциируется с к-л каталогом в MNT.
DEV - спец файлы устройств.
USR - размещается пользовательская инф-ция.
LIB – например gcc, cc.
include содержит headerы, кот используются программой пользователя для препроцессора. Например, SYS содержит include – файлы системы.
BIN содержит исполняемые файлы, которые предоставляются для пользовательского доступа и характеризуют конкретную установку. (так, если знаем имя файла, сначала ищем его в USR/BIN, а затем в BIN.
USER – домашние каталоги зарегистрированных пользователей.
Внутренняя организация ФС