Житомирський школяр придумав, як знизити навантаження на комп'ютери на програмному рівні. Історія Дениса Пирогова, котрий переміг на світовому фіналі Infomatrix

Житомирський школяр Денис Пирогов розробив віртуальну машину, яка знижує навантаження на комп’ютер. Його проєкт нещодавно отримав «срібло» на фіналі Міжнародного конкурсу комп’ютерних проєктів Infomatrix. І хлопець, вже вступивши до університету, продовжує працювати над проєктом. Розповідаємо історію житомирського вундеркінда, для якого світове визнання — не перша нагорода.

Залишити коментар
Житомирський школяр придумав, як знизити навантаження на комп'ютери на програмному рівні. Історія Дениса Пирогова, котрий переміг на світовому фіналі Infomatrix

Житомирський школяр Денис Пирогов розробив віртуальну машину, яка знижує навантаження на комп’ютер. Його проєкт нещодавно отримав «срібло» на фіналі Міжнародного конкурсу комп’ютерних проєктів Infomatrix. І хлопець, вже вступивши до університету, продовжує працювати над проєктом. Розповідаємо історію житомирського вундеркінда, для якого світове визнання — не перша нагорода.

Вже не школяр

Денису Пирогову 19 років. Зараз він студент першого курсу Житомирського політеху. Правда, хлопець вирішив вступити на заочне відділення, щоб більше часу займатися своєю розробкою — віртуальною машиною, яка оптимізує роботу комп’ютера. «Навчання має бути не тільки за програмою, а й з особистого досвіду. Заочна форма дозволяє мати більш гнучкий графік», — аргументує Денис. 

Хлопець розповідає, що захопився комп’ютерами й програмуванням років з дев’яти. 

«Коли саме я навчився кодити — не знаю. Це формувалося поступово, з інтересу до комп’ютерів, років з дев’яти і по сьогоднішній день», — говорить він. 

Дениса, за його словами, спочатку цікавило створення ігор. «У 14 років я написав 2D гру, схожу за сеттингом з Half-Life Deathmatch, незабаром прийшов до „дорослого“ кодингу — роботі з мережами, операційними системами, мікроконтролерами, графікою», — розповідає хлопець. 

До кінця 2020 року у Пирогова з’явився, як він сам каже, незвичайний інтерес до внутрішнього пристрою процесорів, дизайну ISA (а особливо RISC-V). «Я написав на той момент емулятор, що використовувався „у вузьких колах заради науки“, але незабаром знайшов кілька контрибуторів, тестерів», — розповідає хлопець.

Читайте головні IT-новини країни в нашому телеграмі
Читайте головні IT-новини країни в нашому телеграмі
По темi
Читайте головні IT-новини країни в нашому телеграмі

Що таке RISC-V

Проєкт, за словами Дениса, програмно емулює роботу реального комп’ютера, сумісного з архітектурою RISC-V, і дозволяє використовувати його для тестування і використання програм в ізольованому і переносному середовищі. 

RISC-V — це новий, відкритий стандарт процесорної архітектури, багато в чому схожий з ARM (ARM на цей момент застосовується в переважній більшості телефонів, планшетів, інших невеликих пристроїв).  Однак, як розповідає Денис, RISC-V має деякі технологічні переваги: він значно простіший у реалізації й розумінні, дозволяє досягти більшої енергоефективності. 

«Крім того, стандарт RISC-V не є надбанням окремо взятої компанії, а доступний кожному для реалізації, вивчення й поліпшення — не потрібно платити за патент, підписувати NDA, або в якомусь іншому вигляді зобов’язуватися перед іншою юрособою», — говорить Пирогов.

Це, за словами хлопця, спрощує життя невеликим компаніям, інженерам-самоучкам, підвищує рівень світових технологій.

Аналогічні розробці Дениса проєкти у світі існують. «Але вони явно переслідують дещо інші цілі. Наприклад, проєкт QEMU націлений на емуляцію цілого переліку історичних та актуальних архітектур, утім, не йде за принципом „роби одне, але роби добре“, має великі накладні витрати, у тому числі через більш роздутий транслятор TCG/TCI (безліч рівнів абстракції між віртуальною машиною і середовищем виконання)», — наводить приклад хлопець.

Розроблені конкурентні проєкти, за словами розробника, не до кінця проходять офіційні тести від RISC-V Foundation. Крім того, немає якісного аналога Machine API, що дозволяє вбудовувати віртуальні машини в будь-який додаток», — зазначає хлопець.

Космический блин. Как черкасский школьник покоряет околоземную орбиту
Космічний млинець. Як Черкаський школяр підкорює навколоземну орбіту
По темі
Космічний млинець. Як Черкаський школяр підкорює навколоземну орбіту

Ентузіасти в дії

Зараз над проєктом працює невелика команда ентузіастів. Денис розповідає, що завдяки своїй розробці познайомився з програмістом, який зайнявся роботою віртуальної периферії (пристрої введення, жорсткі диски, мережа). А напрацювання Дениса крутяться навколо симуляції процесора, підсистеми пам’яті, продуктивності, інфраструктури проєкту. 

«Ми робимо майже всю велику роботу, але ще пара десятків людей займаються тестуванням, періодично надсилають невеликі доопрацювання і замітки», — зізнається хлопець.

Грошей у свій проєкт Пирогов не залучав. «В основному розробка ведеться на ентузіазмі, але з підтримкою (в тому числі ресурсами та ідеями) з боку спільноти та однодумців на зразок: «Хлопці, я вам нові патчі й доопрацювання відправив», «Ось вам залізяка для тестів», — пояснює Денис. 

Де корисний the RISC-V Virtual Machine

За допомогою розробки житомирянина можна сильно спростити роботу з комп’ютером. 

Зокрема, за словами Дениса, його проєкт корисний при:

  • симуляції повноцінних систем на основі Linux, Android, FreeBSD і використанні їх в практичних або навчальних цілях, в повній ізоляції заради безпеки, і маючи необмежену владу над віртуальною системою;
  • розробці та налагодженні драйверів, ядра операційних систем та іншого ПЗ; 
  • у розважальних цілях — можлива інтеграція реалістичних комп’ютерів в ігровий світ, що створює якусь інженерну пісочницю з кодовими дверима на мікроконтролерах, роботами, комп’ютерами;
  • в освітніх цілях. 

За допомогою розробки Пирогова вже вдалося виправити кілька багів в ядрі Linux і проєкті LLVM.

«Виправлення прийняті мейнтейнерами в офіційні репозиторії», — гордо каже хлопець.

Також проєкт Дениса допоміг розробити навчальну операційну систему, а деякі програми та ігри отримали підтримку пристроїв на базі RISC-V завдяки даному інструменту. 

Інструмент можна використовувати всім безоплатно. «Використання в особистих цілях вільне з можливістю вивчати внутрішній устрій в академічних або практичних цілях, але ліцензія GPL також зобов’язує робити доступними будь-які модифікації для їх можливого прийняття в проєкт і підтримки свободи — в цьому вся філософія», — говорить Денис. 

Також, за словами хлопця, можливе ліцензування проєкту і для вбудовування в комерційні проєкти, або реалізація необхідного vendor-specific функціоналу на платній основі. «Вартість, як правило, залежить від складності реалізації», — говорить він. 

Программист с 11 лет. Как вундеркинд из Днепра создает бармена-андроида
Програміст з 11 років. Як вундеркінд з Дніпра створює бармена-андроїда
По темі
Програміст з 11 років. Як вундеркінд з Дніпра створює бармена-андроїда

Світове визнання

У листопаді 2021 року проєкт Дениса вийшов у світовий фінал Міжнародного конкурсу комп’ютерних проєктів Infomatrix і взяв «срібну» медаль.

«Будемо сподіватися що це тільки початок цікавих змагань», — натхненно каже хлопець.

Його керівник Житомирський вчитель Микола Тарасюк розповідає, що код в цьому проєкті був ідеальним, і чому у хлопця не «золото», йому незрозуміло. 

Сам Денис ставиться до цього філософськи. «З приводу „ідеального коду“ — проєкт регулярно аналізується різними інструментами для пошуку можливих багів і вразливостей, стабільно тримає планку якості за мірками Valgrind, GCC Sanitizer, Clang-Analyze, PVS Studio, Looks Good to Me, Control Flag. Кожна зміна проходить уважне ревю й документується. Емульована система проходить формальну верифікацію відповідності стандарту RISC-V, а я є сертифікованим фахівцем», — розповідає хлопець.

«Срібло» на Infomatrix — не єдина нагорода Пирогова. Його проєкти займали призові місця й на інших конкурсах. Зокрема, в активі Дениса перше місце по Україні в конкурсі iTalent, призове місце в регіональному конкурсі GoldenByte влітку 2019 року з проєктом мережевої бібліотеки для ігор і комунікацій. 

«На сьогодні той самий проєкт використовується для декількох онлайн ігор, як альтернатива інструментарію в фреймворках love2D і Clickteam Fusion», — розповідає він. 

Що далі? 

На питання про те, ким Денис хоче стати, коли виросте, він віджартовується: «А хіба я вже не виріс?».

«Розроблений інструмент відмінно стане в нагоді в сфері embedded розробки та іншому хитро-залізячному світі, а саме таку роботу мені б і хотілося мати», — зізнається житомирський вундеркінд.

 Але і плани у хлопця амбітні. «З ідей — в майбутньому, використовуючи отримані знання, можна реалізувати транслятор x86 додатків для платформ ARM і RISC-V, близький за продуктивністю до Rosetta, або приєднатися до перспективного проєкту box86 і розширити його можливості», — зізнається Денис. 

«Мне по приколу находить талантливых детей». Ученики житомирского учителя информатики работают в IT с 10 класса и побеждают в конкурсах. Яркая история Николая Тарасюка
«Мені по приколу знаходити талановитих дітей». Учні Житомирського вчителя інформатики працюють в IT з 10 класу та перемагають у конкурсах. Яскрава історія Миколи Тарасюка
По темі
«Мені по приколу знаходити талановитих дітей». Учні Житомирського вчителя інформатики працюють в IT з 10 класу та перемагають у конкурсах. Яскрава історія Миколи Тарасюка
Миллион на роботов. Как украинец Павел Пикулин «доигрался» до миллионов и осуществил свою детскую мечту
Мільйон на роботів. Як українець Павло Пікулін «догрався» до мільйонів і здійснив свою дитячу мрію
По темі
Мільйон на роботів. Як українець Павло Пікулін «догрався» до мільйонів і здійснив свою дитячу мрію
Гений до 20-ти. 12 историй украинских изобретателей-тинэйджеров
Геній до 20-ти. 12 історій українських винахідників-тінейджерів
По темі
Геній до 20-ти. 12 історій українських винахідників-тінейджерів

Хочете повідомити важливу новину? Пишіть у Telegram-bot.

А також підписуйтесь на наш Telegram-канал — dev.ua | IT України.

Читайте також

Знайди свою зірку. Криворізька школярка вчить українців рахувати зірки за допомогою ПЗ та алгоритмів
Знайди свою зірку. Криворізька школярка вчить українців рахувати зірки за допомогою ПЗ та алгоритмів
Знайди свою зірку. Криворізька школярка вчить українців рахувати зірки за допомогою ПЗ та алгоритмів
15-річна дівчинка з Кривого Рогу зі своїм проєктом «Змінні зорі» посіла бронзове місце на Міжнародному ярмарку науки, енергетики, інженерії та музики, який проходив у листопаді 2021 року. Buca International Music Science Energy Engineering Fair (Buca IMSEF) — це змагання старшокласників, які створюють наукові та технологічні дослідження. Зазвичай захід проходить у Туреччині, але цього року його провели онлайн. Криворізька школярка створила алгоритми, які за допомогою ПЗ допоможуть астрономам-аматорам знаходити змінні зірки. Тепер будь-яка людина з його допомогою може знайти свою змінну зірку.
Виправні роботи, штрафи та попередження. Як дитячий Instagram доводить батьків до суду: 5 історій
Виправні роботи, штрафи та попередження. Як дитячий Instagram доводить батьків до суду: 5 історій
Виправні роботи, штрафи та попередження. Як дитячий Instagram доводить батьків до суду: 5 історій
В держреєстрі судових рішень безліч справ, фігурантами яких стають малолітні користувачі соціальної мережі Instagram. Проте через вік вони часто не можуть бути відповідачами у справах, тому відповідальність несуть їхні батьки, яких звинувачують у неналежному виконанні батьківських обов’язків.  dev.ua проаналізував грудневі рішення судів і знайшов кілька кейсів, де батьки розхльобують діяння своїх дітей, маючи адміністративні стягнення. 
Малолітній Instagram-блогер виклав відео із вбивством поросяти. Героя ролику ледь не посадили на 5 років
Малолітній Instagram-блогер виклав відео із вбивством поросяти. Героя ролику ледь не посадили на 5 років
Малолітній Instagram-блогер виклав відео із вбивством поросяти. Героя ролику ледь не посадили на 5 років
Instagram - зло? У Вінниці суд заарештував вчителя фізкультури, який чіплявся до семикласниці у соцмережі
Instagram - зло? У Вінниці суд заарештував вчителя фізкультури, який чіплявся до семикласниці у соцмережі
Instagram - зло? У Вінниці суд заарештував вчителя фізкультури, який чіплявся до семикласниці у соцмережі

Обговорення

Коментарів поки немає.