Рубрика «системное программирование»
Как мы видеокарту AMD на ПЛИС с RISC-V и Linux запускали
2025-09-16 в 11:28, admin, рубрики: amd, gpu, linux, pcie, аппаратное обеспечение, драйвера, ПЛИС, системное программированиеМеня зовут Сергей Мирошниченко. Я руковожу группой системного программирования в YADRO. Мой рассказ будет о том, как мы решили запустить AMD GPU на ПЛИС с RISC-V и Linux.
Началось все с задачи проверить, насколько хорошо работает PCIe-подсистема нашей СнК. Для этого мы взяли гарантированно рабочие NVMe и видеоускоритель с полным комплектом ПО для них (драйвера в ванильном ядре Linux, двоичные файлы прошивок).
OYBoot: как мы написали свой UEFI-загрузчик под Xeon IceLake
2025-08-25 в 9:37, admin, рубрики: OpenYard, UEFI, загрузка ос, загрузчик, системное программированиеСоздать собственный UEFI-загрузчик для серверной платформы на Intel Xeon IceLake без исходников, полной документации и официальной поддержки ― звучит как приключение. Мы в OpenYard решились на этот шаг, чтобы получить полный контроль над прошивкой, безопасность на уровне железа и независимость от вендоров. В статье наш путь: от первых проб с edk2 и FSP до релиза OYBoot, с реверсом драйверов, интеграцией BMC и борьбой за стабильный старт платформы.
Гранулярное погружение в атаки на кэш в ARMv8. Разбираем типы атак и митигации
2025-07-14 в 7:45, admin, рубрики: ARMv8, атаки, информационная безопасность, кэш, микроядро, операционные системы, ОС, Программирование, Процессоры, системное программированиеПривет! Без лишнего: в статье расскажу про атаки на кэш-память в процессорах семейства ARMv8. Подробно изучил их для совершенствования безопасности KasperskyOS: познакомлю с теорией и практикой, механизмами работы и способами митигации. Также кратко расскажу, как мы тестировали каждый способ атаки на KasperskyOS, какие из них оказались неприменимы, какие могут представлять угрозу и как микроядро с подобными угрозами справляется. Если интересно гранулярно погрузиться в типологию атак на кэш — добро пожаловать!
Путешествие туда и обратно за безопасным ELF-парсером
2025-05-02 в 11:15, admin, рубрики: информационная безопасность, операционные системы, парсинг, Программирование, С++, системное программированиеЖил-был в норе под землей… разработчик группы разработки защитных решений безопасной платформы. Привет! Я Максим Жуков, занимаюсь безопасностью различных аспектов KasperskyOS. Расскажу про один из них, ELF-парсер.
Эта история не про то, как мы в «Лаборатории Касперского» сделали парсер с нуля. А про то, как я отправился в долгое исследовательское путешествие в поисках способа сделать наш существующий парсер безопаснее, что узнал о разных инструментах в пути и какую неожиданную помощь получил от Темного Владыки Мелькора.
Самый маленький эмулятор x86
2025-03-07 в 9:12, admin, рубрики: freebsd, IOCCC, системное программирование, эмуляторКопаясь в проектах-победителях IOCCC, неожиданно наткнулся на самый маленький эмулятор x86 архитектуры на свете — 4043 байт!
Пишем свой загрузчик операционной системы Linux
2025-03-06 в 9:01, admin, рубрики: gcc, linux, ruvds_статьи, UEFI, загрузка ос, загрузчик, системное программирование
Меня давно интересовал вопрос, насколько сложно написать собственный загрузчик операционной системы. Я не говорю о простой программе, выводящей «Hello, World!», а о полноценном загрузчике, который передаёт управление от встроенного программного обеспечения компьютера ядру операционной системы. Современные загрузчики представляют собой сложные программы, способные загружать множество операционных систем различными способами, учитывая массу нюансов, связанных с программным и аппаратным обеспечением. Читая их исходный код, легко утонуть в деталях и потерять понимание сути и реализации.
Я решил начать изучение с максимально простого подхода, постепенно усложняя задачи, экспериментируя и получая новые знания. Если мне удалось вас заинтересовать, добро пожаловать под кат. Читать полностью »
Кэш. Теория кэширования. Устройство и разновидности кэша
2025-01-18 в 7:16, admin, рубрики: system design, Алгоритмы, кэш, кэширование данных, Программирование, системное программированиеКэш — это временное хранилище данных, предназначенное для ускорения доступа к часто используемой информации. Он работает по принципу сохранения уже обработанных данных, чтобы при повторном запросе не выполнять те же вычисления или не запрашивать информацию из медленных источников, таких как база данных или внешний сервер. Благодаря кэшу приложения работают быстрее, снижается нагрузка на систему, и пользователи получают мгновенный отклик вместо долгого ожидания.
В тихом омуте… или интересный режим работы смартфона OnePlus 6T
2024-12-20 в 8:05, admin, рубрики: android, OnePlus, бэкдор, информационная безопасность, реверс-инжиниринг, системное программированиеНесколько лет назад один из членов нашей команды заказал себе OnePlus 6T прямо из Китая. Телефон пришел в оригинальной упаковке и типовой комплектации: с зарядным устройством, кабелем и чехлом. Смартфон без проблем проработал год, ничем, на первый взгляд, не отличаясь от тех, что продаются в России.
Читать полностью »
Как создать простую операционную систему с нуля
2024-11-01 в 7:07, admin, рубрики: операционная система, системное программирование, создание ос, ядроМногие разработчики хоть раз задумывались о том, чтобы создать свою собственную операционную систему (ОС). Это может показаться сложной задачей, но, если разбить процесс на этапы, создание минимальной ОС становится более реалистичным. В этой статье мы рассмотрим основные шаги создания простой операционной системы с нуля, а также инструменты и знания, которые могут вам понадобиться.

