Как устроена операционная система?
Операционная система является посредником между пользователем и оборудованием, обеспечивая удобную среду для выполнения программ. Конечный пользователь использует программы (приложения), для нужд которых выделены системные ресурсы компьютера. Этим распределением управляет операционная система, благодаря чему можно получить относительно высокую степень независимости программ от конкретного оборудования и соответствующий уровень безопасности и эффективности. В свете анализ последних событий стали популярны отечественные операционные системы, с общей структурой которых мы и разберемся.
Общая структура операционной системы
Точного определения того, какие компоненты входят в состав операционной системы, нет. Наиболее общепринятым определением является «маркетинг», согласно которому все, что производитель делает доступным в составе набора программного обеспечения, называемого операционной системой, является его частью. В общем, структура операционной системы различает ядро и системные программы, которые поставляются вместе с ней. Ядро представляет собой набор модулей, скрывающих детали аппаратной реализации компьютерной системы, обеспечивающих определенный набор служб, используемых, в том числе, для реализации системных программ. С точки зрения контакта с пользователем важен интерпретатор команд, который может быть частью ядра или системной программы.
Задачи операционной системы:
- Определение пользовательского интерфейса: операционная система предоставляет пользователям набор команд или оконную систему вместе с соответствующим меню, которое позволяет им взаимодействовать с компьютерной системой.
- Совместное использование файловой системы: операционная система организует и облегчает доступ к информации, например, в виде иерархической файловой системы.
- Предоставление среды выполнения программы: Операционная система предоставляет структуры данных для организации выполнения программы, а также для сохранения и восстановления состояния обработки (процессы и переключение контекста).
- Управление устройствами ввода-вывода: соответствующие модули управления, интегрированные с операционной системой, инициируют работу внешних устройств и обеспечивают эффективную передачу данных между центральным блоком и этими устройствами.
- Поддержка базового класса ошибок: операционная система реагирует на ошибки пользователя (например, недоступность ресурса, отсутствие прав доступа), ошибки программиста.
Эффективность использования ресурсов и удобный пользовательский интерфейс — две общие независимые цели проектирования операционных систем.