Ученые показали, почему компьютеры довольно часто переживают глубокие системные сбои — а люди нет.
Системный подход: Перевернутая пирамида
Сравните иерархическую организацию процессов регуляции и контроля в бактерии (слева) и операционной системе (справа). Если у первой небольшое число базовых механизмов, расширяясь к основанию, определяет деятельность массы специализированных систем, в ОС ситуация обратная: масса «контролирующих органов» - и небольшое число специализированных процессов

По сути, и природа, и архитекторы IT-систем сталкиваются со схожими проблемами. И именно разные решения, которые используются для этого, и приводит к тому, что компьютеры то и дело приходится «перезагружать», а живые организмы — практически никогда. Для этого американские ученые во главе с Марком Герштейном (Mark Gerstein) сравнили эволюцию контролирующих систем у бактерий — кишечных палочек (Escherichia coli) — и в операционных системах Linux.

«Сравнение генома с «операционной системой», управляющей организмом, является широко распространенным, — говорит профессор Герштейн. — Мы же решили рассмотреть, насколько реалистична эта аналогия».

Контролирующие системы и у E.coli, и в Linux имеют иерархическую организацию, однако между ними обнаруживается ряд существенных различий. Сеть взаимодействующих молекул у бактерии образует устойчивую пирамиду, на вершине которой уверенно расположилось совсем небольшое число ключевых регуляторных генов, в итоге контролирующих весь широкий набор независимых специализированных функций. В отличие от этого, в ОС Linux картина получается почти зеркальной. Большое количество высокоуровневых функций контролирует сравнительное немного процессов на нижних этажах иерархии.

По мнению Герштейна, такая ситуация связана с тем, что разработчики ОС, стараясь экономить время, ресурсы и усилия, работая над совершенствованием программы, предпочитают надстраивать новые процедуры поверх существующих, вместо того, чтобы подходить к вопросу системно и, при необходимости, полностью переписывать архитектуру.

«Кроме экономии, — подытоживает Герштейн, — это приводит к тому, что операционная система становится менее устойчива, и даже небольшие изменения в базовых модулях могут иметь непредсказуемые последствия».

Профессор сравнивает устройство ОС с ростом улиц в мегаполисе: планировщики концентрируют усилия лишь на тех участках, где трафик особенно напряженный и пробки случаются чаще всего, зачастую забывая о проблеме в целом. Впрочем, об истоках проблем с пробками лучше прочесть нашу статью «Пробочная болезнь».

По пресс-релизу Yale University