System Design Space
Граф знанийНастройки

Обновлено: 24 марта 2026 г. в 11:23

Операционная система: обзор

medium

User space и kernel space, роль ядра и драйверов, распространённые ОС и их сценарии.

Обзор операционных систем полезен тем, что возвращает базовый вопрос: где заканчивается приложение и начинается системная среда, которая на самом деле управляет процессами, памятью, сетью и устройствами.

В реальной работе глава помогает видеть цену системных вызовов, переключений контекста и границ между user space и kernel space, когда service-level проблема оказывается системной.

В интервью и архитектурных обсуждениях она полезна тем, что позволяет объяснять сбои и деградации через реальные механизмы ОС, а не через расплывчатое «что-то тормозит на хосте».

Практическая польза главы

Kernel boundary

Показывает, где проходят границы ответственности между приложением и ОС в production-контуре.

Syscall cost

Помогает учитывать цену системных вызовов и переключений контекста в latency-чувствительных путях.

Resource isolation

Учит проектировать сервисы с учетом CPU/memory limits и поведения процессов при перегрузке.

Interview clarity

Дает сильный язык для объяснения, почему архитектурная проблема на самом деле системная.

Источник

Operating system

Роль операционных систем, ключевые функции и виды ОС.

Перейти на сайт

Операционная система — это интерфейс между приложениями и компьютерным железом. Она управляет всей машинерией: процессами, памятью, файлами, устройствами, сетью и безопасностью.

Ключевые обязанности ОС

  • Планирование процессов и потоков (CPU scheduling).
  • Управление памятью и адресными пространствами.
  • Файловые системы, доступ к данным и буферизация.
  • Управление устройствами через драйверы.
  • Сетевой стек и базовая безопасность (права, изоляция, учетные записи).

User space и kernel space

User space изолирует приложения, а kernel space содержит ядро и драйверы. Переход между ними происходит через системные вызовы.

User space vs kernel space

Выберите шаг, чтобы увидеть, где выполняется работа и как ОС взаимодействует с железом.

User space

ПриложенияБиблиотекиRuntime/VM
System call boundary

Kernel space

ПланировщикМенеджер памятиФайловые системыСетевой стек

Device drivers

Драйверы устройств переводят запросы ОС в команды железа.

Hardware

CPU, RAM, диски, сеть, периферия.

Активный шаг

Нажмите «Старт», чтобы пройти путь выполнения программы.

Как выполняются пользовательские программы

Жизненный цикл процесса

  • Загрузка исполняемого файла и создание процесса.
  • Выделение виртуального адресного пространства и страниц памяти.
  • Планировщик ядра выдаёт квант CPU и переключает контекст.
  • Системные вызовы переводят выполнение в kernel space для I/O.
  • Прерывания возвращают результат и управление в user space.

Роль драйверов

  • Драйвер получает запрос от ядра (например, запись файла или отправка пакета).
  • Переводит универсальный запрос ОС в команды контроллера устройства.
  • Обрабатывает прерывания и сообщает ядру о завершении операции.

Распространённые операционные системы

Связанная глава

Android: мобильная ОС

Архитектура Android, ограничения мобильной среды и практические паттерны.

Открыть главу

Android

Смартфоны, планшеты, Android TV и часть embedded‑устройств.

Архитектурный фокус: Ядро Linux + Binder IPC + ART runtime + sandbox по UID.

  • Жёсткие ограничения на фоновые задачи и энергопотребление.
  • Сильная зависимость UX от качества сетевых API и кэширования.
  • Фрагментация устройств и версий ОС влияет на совместимость.

Для System Design: Для мобильного бэкенда критичны offline-first, экономия трафика и устойчивость к нестабильной сети.

Связанная книга

Modern Operating Systems (short summary)

Фундаментальные механизмы ОС: процессы, память, I/O, виртуализация и безопасность.

Читать обзор

Windows

Настольные ПК, корпоративные рабочие станции, игры.

Архитектурный фокус: Линейка Windows NT: гибридное ядро, развитая драйверная и enterprise‑экосистема.

  • Максимальная совместимость с legacy‑ПО и периферией.
  • Глубокая интеграция с AD/Group Policy в корпоративном контуре.
  • Операционная модель часто завязана на централизованное управление endpoints.

Для System Design: В enterprise-системах важно учитывать доменную аутентификацию, политики безопасности и клиентские агенты.

iOS / iPadOS

Мобильные устройства Apple и планшеты.

Архитектурный фокус: XNU (Darwin): Mach + BSD, строгий sandbox, code signing и permission model.

  • Сильная аппаратно-программная оптимизация и предсказуемая производительность.
  • Контролируемая платформа: меньше фрагментации, но жёстче ограничения.
  • Фоновая активность и сетевой доступ строго регулируются системой.

Для System Design: При проектировании клиент-серверных функций важны ограниченные фоновые окна и энергоэффективные протоколы.

Связанная документалка

Linux и UNIX или кто породил ВСЕ современные системы!

История UNIX-линейки и её влияние на Linux, BSD, Darwin и современную инфраструктуру.

Смотреть разбор

macOS

Компьютеры Apple, разработка, креативные индустрии.

Архитектурный фокус: Darwin/XNU, POSIX-среда, тесная связка с экосистемой Apple и developer tooling.

  • UNIX-подобная модель хорошо подходит для инженерных workflows.
  • Сильная интеграция desktop-приложений, безопасности и аппаратных возможностей.
  • Популярная рабочая среда для backend/frontend и mobile-разработки.

Для System Design: Для команд разработки это базовая рабочая платформа, где важны reproducible dev‑окружения и автоматизация.

Связанная глава

Linux: архитектура и популярность

Почему Linux стал стандартом в серверах и как его архитектура влияет на System Design.

Открыть главу

Linux

Серверы, облака, контейнеры, десктопы.

Архитектурный фокус: Монолитное ядро с модулями, cgroups/namespaces, богатый стек сетевых и системных инструментов.

  • Доминирует в серверной, облачной и контейнерной инфраструктуре.
  • Гибкая кастомизация под конкретные workload'ы и hardware.
  • Широкий выбор дистрибутивов и моделей сопровождения.

Для System Design: Почти весь production backend опирается на Linux: это база для Kubernetes, сервисов и SRE-практик.

Embedded / Real-time OS

Встроенные системы, промышленность, автомобилестроение.

Архитектурный фокус: Упор на deterministic scheduling, bounded latency и контроль над ресурсами в real-time.

  • Приоритет предсказуемости времени отклика, а не максимальной пропускной способности.
  • Часто работают на ограниченных CPU/памяти и специальных контроллерах.
  • Примеры: QNX, VxWorks, RIOT, TinyOS, Zephyr.

Для System Design: Критичны для edge/IoT: архитектура строится вокруг SLA по времени реакции и отказобезопасности.

Практический вывод

Понимание того, как ОС управляет ресурсами, помогает проектировать приложения под реальные ограничения железа: планирование CPU, границы памяти, особенности хранения и стоимость I/O.

Связанные главы

Чтобы отмечать прохождение, включи трекинг в Настройки