Дмитрий Кривенок: "Персистентная память в Linux"
Персистентная память в Linux
Технологии энергонезависимой памяти (NVM) продолжают эволюционировать и в этом году были анонсированы новые многообещающие технологии (например 3D XPoint).
До недавнего времени, однако, эти технологии были доступны только в самых продвинутых системах и использовали нестандартные и несовместимые проприетарные аппаратные и программные интерфейсы.
В 2015 годы был опубликован ряд индустриальных стандартов и спецификаций и в Linux начала добавляться поддержка NVDIMM.
Многие классы сегодняшних приложений могут существенно выиграть от использования персистентной памяти и новые типы приложений будут появляться как только такая память станет широко доступной.
Эффективное использование персистентной памяти требует иной модели программирования, новых возможностей в ядре Linux и новых инструментов и библиотек.
Готов ли Linux к работе с этими технологиями?
Автор расскажет о последних стандартах (SNIA NPM, APCI 6.0, NVDIMM specs), архитектуре и реализации подсистемы "ND" в ядре Linux, а также об открытых библиотеках NVM.
Дмитрий Кривенок
Россия. Санкт-Петербург
Ведущий инженер-программист
EMC
В 2008 году я закончил Санкт-Петербургский электротехнический университет (“ЛЭТИ”) где получил степень магистра по специальности прикладная математика и информатика.
Моя карьера как разработчика ПО началась еще в 2004 году и в течение нескольких лет я работал в ряде российских компаний где занимался в основном системным программированием и разработкой серверных компонентов промышленных OSS/BSS систем.
В 2009 году я пришел в компанию EMC где стал работать над проприетарной технологией контейнеров используемой в системах хранения данных. После этого я работал в нескольких группах над различными проектами от СХД начального уровня до технологии встраивания различных сервисов в СХД посредством KVM/LXC и SDS решений. В данный я занимаю позицию ведущего инженера и работаю над продуктом vVNX.
К числу моих профессиональных интересов относятся:
- Проектирование и реализация операционных систем
- Системное программирование в Linux/UNIX
- Технологии хранения данных и сетевые технологии
- Виртуализация и контейнеры
- Эффективные процессы разработки ПО и автоматизаци