Введение в операционные системы
Что такое операционная система
Операционная система (ОС) — это комплекс системных программ, управляющий ресурсами вычислительной машины (процессором, оперативной памятью, дисками, устройствами ввода-вывода) и обеспечивающий интерфейс между аппаратурой, прикладными программами и пользователем[cite: 8].
ОС выполняет две взаимосвязанные задачи: управляет ресурсами (распределяет время CPU, память) и скрывает сложность аппаратуры, предоставляя программисту удобные абстракции (файлы, процессы, виртуальную память)[cite: 8]. Исторически ОС возникли из библиотек ввода-вывода и мониторов пакетной обработки 1950-х годов[cite: 8].
Ядро, режимы работы и системные вызовы
Центральная часть ОС — ядро (kernel): код, исполняющийся в привилегированном режиме (kernel mode), с полным доступом к оборудованию[cite: 8]. Процессоры современных архитектур поддерживают минимум два режима: привилегированный (ядро) и пользовательский (user mode)[cite: 8]. В пользовательском режиме запрещены инструкции обращения к устройствам[cite: 8].
Механизм обращения прикладной программы к функциям ядра — системный вызов (system call): управляемый переход в режим ядра по инструкции (в x86-64 — syscall)[cite: 8]. Примеры: управление процессами (fork, exec), файлами (open/read/write/close)[cite: 8].
Классификация и эволюция ОС
ОС классифицируются по назначению (универсальные, серверные, мобильные), режиму обработки (пакетные, разделения времени, реального времени) и числу задач (вытесняющая мультизадачность)[cite: 8]. Ключевое свойство современных систем — вытесняющая мультизадачность, где планировщик принудительно изымает процессор у процесса[cite: 8].
Эволюция шла от пакетной обработки с перфокартами (второе поколение) к мультипрограммированию и разделению времени (третье поколение, MULTICS, UNIX) и далее к персональным компьютерам (MS-DOS, Windows, macOS) и мобильным устройствам (Android, iOS)[cite: 8].