- •Раздел 1. Операционная система unix. Введение в операционную систему unix
- •Отличительные черты ос unix
- •Основы архитектуры операционной системы unix Модель системы unix.
- •Структура ядра ос unix.
- •Основы файловой системы ос unix
- •Типы файлов
- •Структура файловой системы unix
- •Владельцы файлов
- •Права доступа к файлу
- •Дополнительные атрибуты файлов
- •Устройства
- •Маска создания файла
- •Программы Oc unix
- •Процессы ос unix
- •Типы процессов
- •Атрибуты процесса
- •Процесс создания и запуска программ
- •Системный вызов завершения процесса exit
- •Системные функции типа exec
- •Обработка ошибок
- •Ограничения для процессов
- •Пользователи системы, Атрибуты пользователя
- •Средства ВзаимодействиЯ между процессАми
- •Сигналы
- •Посылка сигналов.
- •Int raise (int sig); // посылает сигнал вызывающему процессу (т.Е. Самому себе).
- •Обработка сигналов.
- •Набор сигналов.
- •Файловая подсистема ос unix
- •Индексный дескриптор
- •Блоки хранения данных
- •Недостатки и ограничения файловой системы s5fs
- •Файловая система ffs (Fast File System)
- •Основные отличия ffs от s5fs
- •Ограничения ffs
- •Каталоги ffs
- •Раздел 2. Взаимодействие процессов. Процесс, Понятие и классификация
- •Ресурсы, Понятие и классификация
- •Взаимодействие процессов Задача взаимного исключения
- •Integer очередь;
- •ОБобщенная задача взаимного исключения
- •Integer очередь;
- •Синхронизирующие примитивы (семафоры)
- •Процесс 1 :
- •Процесс 2 :
- •V(свободно);
- •Задача “производитель-потребитель” применение ОбщиХ семафорОв
- •Задача “производитель-потребитель” (буфер ограниченНый)
- •Взаимодействие через переменные состояния
- •Integer array желание[1:n], сп[1:n];
- •Integer чпб, бб, рб, чсеб, I;
- •Integer разм_п, n, max, nmax;
- •Проблема тупиков
- •Алгоритм банкира
- •Integer Св_Деньги; boolean Безопасно;
- •If ((Завершение_под_сомнением [I]) and
- •Применение алгоритма банкира
- •V(Взаимн_искл);
- •V(Возвращенные_Талеры[Номер_Клиента[m]]);
- •If (Попытка_выдать_талер_клиенту(h))
- •Монитороподобные средства синхронизации
- •Механизм типа «критическая область»
- •Механизм типа «условная критическая область»
- •Var s : semaphore; считывание : boolean; m : t;
- •Раздел 3. Вычислительные структуры. Машины, управляемые контроллерами (устройствами управления)
- •Усовершенствованная структура вычислительной машины, управляемой контроллерОм
- •Системы с операционным конвейером
- •Мультипроцессорные системы
- •Транспьютеры
- •Распределение памяти в транспьютерах
- •Диспетчеризация процессов
- •Организация ВводА / выводА в транспьютере.
- •Гарвардская архитектура на примере процессоров семейства adsp
Структура файловой системы unix
В данной системе для обозначения каталогов используются общепринятые имена, которые почти одинаковы для всех реализаций операционной системы, что облегчает работу с файловой системой, администрирование и переносимость.
/
bin etc home mnt
dev dsk rdsk lib lost+faund tmp usr
local include spool lib bin
init.d rc3.d rc2.d default male lp cron
auth rc0.d
Корневой каталог (/) - основа файловой системы UNIX. Все остальные файлы и каталоги располагаются в рамках структуры, порождённой корневым каталогом, независимо от их физического местоположения.
В каталоге /bin находятся наиболее часто употребимые команды и утилиты системы.
В каталоге /dev содержатся специальные файлы устройств, являющиеся интерфейсом доступа к периферийным устройствам. Этот каталог может содержать несколько подкаталогов, группирующих файлы устройств одного типа.
В каталоге /etc находятся системные конфигурационные файлы и многие утилиты администрирования. Самые важные из них - скрипты инициализации системы, которые хранятся в каталогах rcN, где N номер, определяющий уровень системы.
В каталоге /lib находятся библиотечные файлы языка C и других языков программирования. Часть их может находиться в каталоге usr/lib.
Каталог /lost+found каталог потерянных файлов. При аппаратных сбоях и сбоях операционной системы могут появляться безымянные файлы. Программы проверки и восстановления помещают сюда неповреждённые безымянные файлы под числовыми именами.
Каталог /mnt стандартный каталог для временного связывания (монтирования) физических файловых систем к корневой для получения единого дерева логической файловой системы. Обычно содержимое этого каталога пусто, т.к. при монтировании он перекрывается связанной файловой системой.
Каталог /home предназначен для размещения каталогов пользователей.
Каталог /usr каталог различных сервисных подсистем, таких как системы печати, электронная почта, электронные справочники, исполняемые файлы утилит UNIX.
В каталоге /spool находятся выполняемые файлы утилит UNIX.
Каталог /tmp предназначен для хранения временных файлов, необходимых для работы различных подсистем UNIX.
Владельцы файлов
Файлы в UNIX имеют двух владельцев: пользователя (user owner) и группу (group owner).
Группой называется некий список пользователей системы. Пользователь может быть членом нескольких групп, одна из которых является первичной, другие - дополнительными.
Владелец-пользователь может не быть членом группы, владеющей файлом. Это позволяет организовать гибкую систему доступа к файлу.
Для определения владельцев файла используется команда ls -l для просмотра файлов каталогом. При этом в двух столбиках выводится имя владельца-пользователя и имя владельца-группы.
Владельцем-пользователем вновь созданного файла является пользователь, создавший файл. Но реально файл создает не пользователь, а процесс, запущенный пользователем.
Идентификатор владельца-пользователя устанавливается равным эффективному пользовательскому идентификатору процесса, создающего файл. Порядок назначения владельца-группы зависит от конкретной реализации операционной системы. Это может быть либо первичная группа владельца-пользователя, либо владельцем-группой может стать группа, владеющая каталогом, в котором создан файл.
Для изменения владельца файла используется утилита chown:
chown stud1 prog1.c prog2.c t.txt
Первый параметр определяет пользователя, а далее следует список файлов, пользователем (владельцем) которых становится первый аргумент.
Для изменения владельца группы используется команда chgrp:
chgrp ppt *.c
Владение файлом определяет набор операций, которые пользователь может совершать с файлом. Некоторые из этих операций, такие как изменение прав доступа или владельца, файла может осуществлять только владелец или суперпользователь. Операции чтения/записи или запуск на выполнение дополнительно контролируются правами доступа.