<?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">cheb</journal-id><journal-title-group><journal-title xml:lang="ru">Чебышевский сборник</journal-title><trans-title-group xml:lang="en"><trans-title>Chebyshevskii Sbornik</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">2226-8383</issn><publisher><publisher-name>Tula State Lev Tolstoy  Pedagogical University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.22405/2226-8383-2019-20-4-124-136</article-id><article-id custom-type="elpub" pub-id-type="custom">cheb-692</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>Article</subject></subj-group></article-categories><title-group><article-title>О полурешётке состояний процессов Linux</article-title><trans-title-group xml:lang="en"><trans-title>On semilattice of Linux processes’ states</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>Efanov</surname><given-names>Nikolay Nikolaevich</given-names></name></name-alternatives><bio xml:lang="ru"><p>аспирант, ассистент/преподаватель кафедры информатики и вычислительной математики</p></bio><bio xml:lang="en"><p>PhD Student Teaching assistant, Department of Informatics</p></bio><email xlink:type="simple">nefanov90@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Московский физико-технический институт</institution><country>Россия</country></aff><aff xml:lang="en"><institution>Moscow Institute of Physics and Technology</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2019</year></pub-date><pub-date pub-type="epub"><day>13</day><month>02</month><year>2020</year></pub-date><volume>20</volume><issue>4</issue><fpage>124</fpage><lpage>136</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Ефанов Н.Н., 2020</copyright-statement><copyright-year>2020</copyright-year><copyright-holder xml:lang="ru">Ефанов Н.Н.</copyright-holder><copyright-holder xml:lang="en">Efanov N.N.</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.chebsbornik.ru/jour/article/view/692">https://www.chebsbornik.ru/jour/article/view/692</self-uri><abstract><p>В работе рассматривается структура данных - множество состояний процессов Linux,которая используется в задаче восстановления дерева процессов в Unix-подобных операционных системах. Целью исследования является анализ зависимостей в такой структуре,введение естественного порядка по зависимостям, предложение и обоснование возможности его введения как верхней полной полурешётки. Следующие из технических свойствприкладной задачи иерархии атрибутов позводяют ввести дополнительные ограниченияна минимальные верхние границы в полурешётке. Ограничения формально описываются ввиде подходящих операторов предзамыкания и замыкания. Из ограничений следует необходимое условие корректности дерева процессов. На основании свойств точек, возвращае-мых введёнными операторами и схемы выполнения системного вызова, приводится достаточное условие корректности: для каждого атрибута, возникающего в контексте процесса,должно существовать решёточно упорядоченное относительно наследуемого порядка множество, содержащее промежуточные состояния процессов, через которые и разрешаютсязависимости. Введённые условия формируют критерий корректности дерева процессов,что может быть полезно в таких задачах как генерация тестов для систем сохранения ивосстановления состояний Unix-подобных ОС, поиск аномалий, повышение портабельности и надёжности программных комплексов. Приводятся также схемы зависимостей между атрибутами, которые вводят частные ограничения на реконструирующее множество.Рассматриваются открытые вопросы и предлагаются дальнейшие шаги.</p></abstract><trans-abstract xml:lang="en"><p>The paper discusses a set of states of Linux processes as data structure, which is used in thetask of process-tree reconstruction in Unix-like operating systems. The purpose of the studyis to analyze dependencies in such structure, to introduce the natural order of dependencies,to propose the class of such reconstruction structure as upper complete semilattice. Followingfrom the technical properties of the applied problem attributes’ hierarchy allow to introduceadditional restrictions on the minimum upper bounds in such semilattice.Constraints are formally described as suitable pre-closure and closure operators. Theconstraints implies the necessary condition for the correctness of the process tree. Based onthe properties of points returned by the proposed operators and system call execution scheme,a sufficient condition for correctness is given. The introduced conditions form the criterion forprocess-tree correctness, which can be useful in such tasks as generating tests for checkpointrestore in Unix-like operating systems, anomalies detection, increasing portability and reliabilityof software. Dependency schemes between attributes that impose particular constraints on thereconstructing set are also shown. Opened questions are also highlighted and further steps aresuggested.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>математическое моделирование</kwd><kwd>прикладная алгебра</kwd><kwd>полугруппы</kwd><kwd>деревья</kwd><kwd>Unix-подобные операционные системы</kwd><kwd>системные вызовы</kwd><kwd>дерево процессов</kwd><kwd>восстановление по контрольным точкам</kwd><kwd>замыкания</kwd></kwd-group><kwd-group xml:lang="en"><kwd>mathematical modeling</kwd><kwd>applied algebra</kwd><kwd>semi-groups</kwd><kwd>trees</kwd><kwd>Unix-like operating systems</kwd><kwd>system calls</kwd><kwd>process tree</kwd><kwd>checkpoint restore</kwd><kwd>closures</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title></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>
