Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak

Саша Шепелєв

Предложите Саше работу над вашим следующим проектом или зарегистрируйте профиль фрилансера и начинайте зарабатывать прямо сейчас.

Украина Радомышль, Украина
19 дней 9 часов назад
Свободен для работы свободен для работы
на сервисе 19 дней 9 часов

Рейтинг

Успешных проектов
Нет данных
Средняя оценка
Нет данных
Рейтинг
107
C и C++
Встраиваемые системы и микроконтроллеры

Навыки и умения

Портфолио


  • мини

    C и C++
    Minit — это минималистичный, сверхлегкий и отказоустойчивый инициализатор системы (PID 1) и супервайзор процессов для Linux, написанный на чистом Си. Это компактная и быстрая альтернатива systemd (или современная замена для s6/runit), разработанная специально для встроенных систем (embedded), контейнеров, IoT и кастомных дистрибутивов. Основные возможности кратко: Управление сервисами и зависимостями: Парсит простые текстовые .conf-файлы. Строит граф зависимостей и запускает сервисы параллельно, что обеспечивает мгновенную загрузку системы. Поддерживает уровни загрузки по аналогии с systemd (мишени / targets, например basic.target, multi-user.target). Продвинутый супервайзор процессов: Защита от сбоев: имеет встроенные механизмы Flap detection и Crash-loop throttle (экспоненциальную задержку перезапуска с джитером), чтобы сервисы, которые циклически падают, не перегружали процессор. Модель Circuit Breaker: если сервис постоянно ломается, minit временно изолирует его (как предохранитель). Health-checks: самостоятельно проверяет жизнеспособность процессов через Unix-сокеты или кастомные команды. Если процесс завис — перезапускает его. Низкоуровневая интеграция без внешних зависимостей: logind-shim: встроенный минимальный аналог systemd-logind. Работает через D-Bus, позволяя запускать дисплейные менеджеры (GDM, SDDM) и управлять сессиями пользователей. Управление питанием: корректно обрабатывает закрытие крышки ноутбука и переход в сон (suspend/hibernate), учитывая delay-инHIBиторы от сервисов (например, дает NetworkManager время корректно разорвать сессии). Ранний D-Bus: сам поднимает системную шину D-Bus во время загрузки, избегая race conditions. Безопасность и ограничения ресурсов: Умеет на лету применять seccomp-фильтры (текстовые allow-списки или бинарный BPF-формат) и сбрасывать Linux Capabilities для изоляции процессов. Распределяет сервисы по cgroups (v2), позволяя жестко лимитировать CPU и память прямо из конфига. Эффективная архитектура: Никаких расточительных циклов опроса (busy-polling). Реакция на выход процессов и graceful shutdown реализованы через неблокирующие epoll и sigtimedwait. Управляется через консольную утилиту minit-ctl, которая умеет показывать дерево зависимостей, tail-логи и отдавать статус в формате JSON.