
- •Операционная система. Функции, назначение. Многопользовательские системы. Мультипрограммные системы.
- •Языки управления заданиями (языки команд операционной системы). Процедуры.
- •Средства управления вводом/выводом. Понятия наборов данных и файлов. Операции поддерживаемые на системном уровне.
- •Управление данными на носителях. Ограничения доступа к наборам данных.
- •Процессы в операционных системах. Общие понятия. Ресурсы процесса.
- •Процессы в операционных системах. Создание и уничтожение процесса. Наследование свойств.
- •Процессы в операционных системах. Взаимодействие процессов. Сигналы и их обработка.
Управление данными на носителях. Ограничения доступа к наборам данных.
Данные на внешних носителях хранятся в виде наборов данных, которые состоят из отдельных дисковых блоков, содержащих собственно данные и метаданных – описателя, содержащего информацию о наборе – права доступа к нему, списки блоков и всю информацию, которая позволяет выполнять операции над этим набором – открытие, закрытие, чтение, запись, создание, удаление.
Файлы – логические имена наборов данных, связываемые с метаданными. Один набор данных может быть представлен несколькими файлами. Файлы организуются в систему каталогов, образующих файловую систему (вторая трактовка термина «файловая система» – физический формат дисковых блоков, хранящих данные, и метаданных).
Во многих операционных системах существуют средства ограничения доступа к файлам. В однопользовательских ОС обычно ограничивается доступ к файлам самой ОС (например, установка атрибута «скрытый» в DOS), в многопользовательских ОС права устанавливаются не просто на набор данных, а на набор данных для определенных пользователей. Каждое ограничение устанавливает возможность использования той или иной операции над набором данных. Сам набор операций зависит от конкретной ОС.
В Unix-системах существует 3 категории, для которых устанавливаются права:
владелец файла или пользователь владелец (u);
владеющая файлом группа пользователей или группа-владелец (g);
все пользователи системы (o).
Для каждой категории выставляются разрешения на основные операции над набором:
чтение(r):
запись(w):
выполнение(x):
Для получения информации о правах доступа можно посмотреть, например, используя команду ls:
ls –l
-rw-r--r-- …….. file.txt
При этом, первая тройка – u, вторая – g, третья – o.
Для изменения владельца и группы используется команда chown и chgrp:
Например, chown user1 file.sh изменяет владельца на user1.
Например, chgrp group1 file.sh изменяет группу на group1.
Управление доступом производится с помощью команды chmod:
Например, chmod o+rw go-w file.sh устанавливает права на чтение и запись для владельца файла и право записи для группы и остальных.
Процессы в операционных системах. Общие понятия. Ресурсы процесса.
Программа в общем случае – набор инструкций процессора, представленный в виде файла. Для того, чтобы программа могла быть запущена на выполнение, ОС должна сначала создать окружение или среду выполнения задачи, включающую в себя ресурсы памяти, возможность доступа к системе ввода-вывода и т.п. Совокупность окружения и области памяти, содержащей код и данные программы называется процессом.
Процессы бывают двух типов:
системные (выполняющие части ядра ОС)
прикладные (выполняющие задачи пользователя)
Процессы в ОС имеют атрибуты (UNIX):
идентификатор процесса PID;
идентификатор родительского процесса PPID;
приоритет процесса;
устройство терминала;
реальный и эффективный идентификаторы пользователя и группы.
Процессам выделяются ресурсы, предоставляемые ОС:
оперативная память;
доступ к файлам (файловые дескрипторы);
процессорное время.
В случае многопроцессной ОС возникает проблема распределения ресурсов между процессами. Для этого используются:
планировщик задач – балансировка нагрузки на систему между процессами – распределение процессорного времени согласно приоритету процессов;
механизм защиты памяти – запрещает доступ процесса к области оперативной памяти, занятой другими процессами (за исключением случая межпроцессного взаимодействия с использованием общей памяти).
механизм блокировки файлов и устройств работает по принципу, аналогичному семафору – если какой-либо процесс открывает файл на запись, то на этот файл ставится блокировка, чтобы исключить ситуации одновременной записи или записи/чтения.