<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">trudyniisi</journal-id><journal-title-group><journal-title xml:lang="ru">Труды НИИСИ</journal-title><trans-title-group xml:lang="en"><trans-title>SRISA Proceedings</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">2225-7349</issn><issn pub-type="epub">3033-6422</issn><publisher><publisher-name>НИЦ «КУРЧАТОВСКИЙ ИНСТИТУТ» - НИИСИ</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.25682/NIISI.2025.4.0005</article-id><article-id custom-type="elpub" pub-id-type="custom">trudyniisi-128</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ И ИХ ЭЛЕМЕНТЫ</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>COMPUTING SYSTEMS AND THEIR COMPONENTS</subject></subj-group></article-categories><title-group><article-title>Оптимизация ввода-вывода с помощью кеширующих блочных устройств в среде GNU/Linux</article-title><trans-title-group xml:lang="en"><trans-title>Optimizing Input/Output using caching block devices in GNU/Linux environment</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Прилипко</surname><given-names>А. Г.</given-names></name><name name-style="western" xml:lang="en"><surname>Prilipko</surname><given-names>A. G.</given-names></name></name-alternatives><email xlink:type="simple">aleksey.prilipko@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Романюк</surname><given-names>С. Г.</given-names></name><name name-style="western" xml:lang="en"><surname>Romanyuk</surname><given-names>S. G.</given-names></name></name-alternatives><email xlink:type="simple">sgrom@niisi.ras.ru</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Самборский</surname><given-names>Д. В.</given-names></name><name name-style="western" xml:lang="en"><surname>Samborskiy</surname><given-names>D. V.</given-names></name></name-alternatives><email xlink:type="simple">samborsky_d@fastmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff xml:lang="ru" id="aff-1"><institution>НИЦ «Курчатовский институт» - НИИСИ</institution><country>Russian Federation</country></aff><pub-date pub-type="collection"><year>2025</year></pub-date><pub-date pub-type="epub"><day>30</day><month>12</month><year>2025</year></pub-date><volume>15</volume><issue>4</issue><issue-title>МАТЕМАТИЧЕСКОЕ И КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ СЛОЖНЫХ СИСТЕМ: ТЕОРЕТИЧЕСКИЕ И ПРИКЛАДНЫЕ АСПЕКТЫ</issue-title><fpage>31</fpage><lpage>35</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Прилипко А.Г., Романюк С.Г., Самборский Д.В., 2025</copyright-statement><copyright-year>2025</copyright-year><copyright-holder xml:lang="ru">Прилипко А.Г., Романюк С.Г., Самборский Д.В.</copyright-holder><copyright-holder xml:lang="en">Prilipko A.G., Romanyuk S.G., Samborskiy D.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.t-niisi.ru/jour/article/view/128">https://www.t-niisi.ru/jour/article/view/128</self-uri><abstract><p>Современные устройства хранения данных имеют широкий диапазон основных характеристик: объёма, пропускной способности, и скорости записи. В силу физических ограничений в одном устройстве невозможно достичь максимальных значений всех этих характеристик. Тем не менее, совместное использование разных типов накопителей часто позволяет оптимизировать производительность операционной системы для решения прикладных задач. Ядро ОС GNU/Linux позволяет создавать композитные устройства блочного ввода-вывода, такие как программные массивы накопителей данных (RAID-устройства) и кеширующие программные устройства. В данной статье выполнен анализ системных средств и ядра ОС GNU/Linux с целью поиска стратегии повышения производительности аппаратно-программной конфигурации подсистемы ввода-вывода.</p></abstract><trans-abstract xml:lang="en"><p>. Modern data storage devices vary widely in their key characteristics: capacity, throughput, and write latency. Due to physical limitations, no single device can maximize all of these characteristics simultaneously. However, combining different types of storage often makes it possible to optimize operating system performance for specific application workloads. The GNU/Linux kernel enables the creation of composite block I/O devices, including software RAID arrays and caching devices. This article presents an analysis of system tools and GNU/Linux kernel capabilities, with the goal of developing an algorithm for determining the optimal hardware-software configuration of the I/O subsystem.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>ввод-вывод данных</kwd><kwd>Linux</kwd><kwd>RAID</kwd><kwd>dm-cache</kwd><kwd>dm-writecache</kwd></kwd-group><kwd-group xml:lang="en"><kwd>input-output</kwd><kwd>Linux</kwd><kwd>RAID</kwd><kwd>dm-cache</kwd><kwd>dm-writecache</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт документации ядра Linux, раздел «Device Mapper: RAID». https://www.kernel.org/doc/Documentation/device-mapper/dm-raid.txt (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт документации ядра Linux, раздел «Device Mapper: RAID». https://www.kernel.org/doc/Documentation/device-mapper/dm-raid.txt (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт документации ядра Linux, раздел «Device Mapper: Cache». https://www.kernel.org/doc/Documentation/device-mapper/cache.txt (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт документации ядра Linux, раздел «Device Mapper: Cache». https://www.kernel.org/doc/Documentation/device-mapper/cache.txt (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт документации ядра Linux, раздел «Device Mapper: Write cache». https://www.kernel.org/doc/Documentation/device-mapper/writecache.txt (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт документации ядра Linux, раздел «Device Mapper: Write cache». https://www.kernel.org/doc/Documentation/device-mapper/writecache.txt (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт документации ядра Linux, раздел «Device Mapper: Cache policies». https://www.kernel.org/doc/Documentation/admin-guide/device-mapper/cache-policies.txt (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт документации ядра Linux, раздел «Device Mapper: Cache policies». https://www.kernel.org/doc/Documentation/admin-guide/device-mapper/cache-policies.txt (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт документации ядра Linux, раздел «Memory Management». https://www.kernel.org/doc/html/latest/admin-guide/mm/index.html (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт документации ядра Linux, раздел «Memory Management». https://www.kernel.org/doc/html/latest/admin-guide/mm/index.html (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">А.Б. Бетелин, Г.А. Прилипко, А.Г. Прилипко, С.Г. Романюк, Д.В. Самборский. Динамический анализ и оптимизация ввода-вывода в среде виртуализации GNU Linux/QEMU/KVM. «Труды НИИСИ РАН», т.14 (2024), №1, 25-32</mixed-citation><mixed-citation xml:lang="en">А.Б. Бетелин, Г.А. Прилипко, А.Г. Прилипко, С.Г. Романюк, Д.В. Самборский. Динамический анализ и оптимизация ввода-вывода в среде виртуализации GNU Linux/QEMU/KVM. «Труды НИИСИ РАН», т.14 (2024), №1, 25-32</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт утилиты vmtouch. https://hoytech.com/vmtouch (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт утилиты vmtouch. https://hoytech.com/vmtouch (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт утилиты vmprobe. https://vmprobe.com/intro (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт утилиты vmprobe. https://vmprobe.com/intro (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт документации ядра Linux, раздел «RAM block device driver». https://www.kernel.org/ doc/html/latest/admin-guide/blockdev/ramdisk.html (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт документации ядра Linux, раздел «RAM block device driver». https://www.kernel.org/ doc/html/latest/admin-guide/blockdev/ramdisk.html (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Сайт утилиты Flexible I/O tester (FIO). https://fio.readthedocs.io/en/latest/index.html (дата обращения 19.12.2025)</mixed-citation><mixed-citation xml:lang="en">Сайт утилиты Flexible I/O tester (FIO). https://fio.readthedocs.io/en/latest/index.html (дата обращения 19.12.2025)</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
