Платим блогерам
Блоги
Anykey911
«Проект ebpf-for-windows нацелен на то, чтобы позволить разработчикам использовать знакомые инструменты eBPF и интерфейсы прикладного программирования (API) поверх существующих версий Windows» - Microsoft.

реклама

Microsoft запустила новый проект с открытым исходным кодом, цель которого - добавить в Windows преимущества eBPF - технологии, впервые реализованной в Linux, которая позволяет прикреплять программы как к ядру, так и к пользовательским приложениям. Технология eBPF позволяет программе, поставляемой пользователем, запускаться изолированно внутри ядра операционной системы при определенном событии, таких как системный вызов, вход / выход функции, точках трассировки ядра или сетевых событиях.

реклама

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

Архитектурный вид проекта показывает, что программа eBPF может использовать цепочки инструментов для генерации байт-кода eBPF на различных языках, поэтому любое приложение может использовать его и даже загружать в инструмент командной строки Windows Netsh с помощью общей библиотеки.

Как видно на изображении выше, Microsoft использует верификатор PREVAIL eBPF, размещенный в защищенном процессе пользовательского режима, и uBPF IO Visor, работающий в контексте выполнения режима ядра, для проверки легитимности полученного байт-кода и выполнения программы eBPF поверх Windows.

Microsoft объясняет, что «программы eBPF, установленные в контексте выполнения режима ядра, могут подключаться к различным перехватчикам для обработки событий и вызова различных вспомогательных API-интерфейсов, предоставляемых оболочкой eBPF, которая внутренне обертывает общедоступные API-интерфейсы ядра Windows, позволяя использовать eBPF в существующих версиях Windows".

В настоящее время доступно только два перехватчика - XDP и привязка к сокету - оба связаны с сетью. Однако Microsoft ожидает, что в будущем будет добавлено больше, чтобы охватить и другие области.

Проект ebpf-for-windows все еще находится в начальной стадии, и его долгосрочная цель - «донести возможности eBPF до пользователей Windows» и стать частью более широкого сообщества eBPF, которое также будет направлять его развитие.

+
Написать комментарий (0)

Популярные новости

Популярные статьи

Сейчас обсуждают