1.1 Назначение и функции операционных систем
Операционная система компьютера представляет собой комплекс взаимосвязанных программ, который действует как интерфейс между приложениями и пользователями с одной стороны, и аппаратурой компьютера с другой стороны [11]. Операционная система выполняет две группы функций:
• предоставляет пользователю или программисту вместо реальной аппаратуры компьютера расширенной виртуальной машины;
• повышает эффективность использования компьютера путем рационального управления его ресурсами в соответствии с некоторым критерием.
Пользователь, как правило, не интересуется деталями устройства аппаратного обеспечения компьютера, он видится ему как набор приложений, которые можно написать на одном из языков программирования. Операционная система предоставляет программисту ряд возможностей, которые могут использовать программы с помощью специальных команд, называемых системными вызовами. Поэтому программное приложение включает в себя множества системных вызовов, необходимых, например, для работы с файлами. Операционная система скрывает от программиста детали аппаратного обеспечения и предоставляет удобный интерфейс для исполнения системы операционной среды.
В тоже время операционная система выступает в качестве менеджера ресурсов. В соответствии с этим подходом работа операционной системы заключается в обеспечении организованного и контролируемого распределения процессоров, памяти и устройств ввода-вывода между различными программами. Работа операционной системы имеет следующие особенности:
• функции операционной системы работают так же, как и остальное программное обеспечение – реализуются в виде отдельных программ или набора программ, исполняющихся процессов;
• операционная система должна передавать управление другими процессами и ожидать, когда процессор снова выделит ей время для выполнения своих обязанностей.
Управление ресурсами включает решение следующих общих, не зависящих от типа ресурса задач:
• планирование ресурса – то есть определение, какому процессу, когда и в каком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;
• удовлетворение запросов на ресурсы;
• отслеживание состояния и учет использования ресурса – то есть поддержание оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;