Изучение изменения размера кодовой базы Ext4, Btrfs и XFS

Эрик Сандин (Eric Sandeen) из компании Red Hat проанализировал интенсивность развития файловых систем Ext4, Btrfs и XFS, изучив число связанных с данными ФС строк кода в различных версиях Linux-ядра. Результаты получились довольно интересными: на протяжении нескольких лет, размер кода (комментарии не учитывались), связанного с XFS уменьшается, что свидетельствует о проводимых оптимизациях и избавлении от лишнего груза. XFS постепенно избавляется от изначально присущей данной ФС усложненности и запутанности кодовой базы.

В отличие от XFS, файловые системы Ext4 и Btrfs идут по пути постоянного усложнения. Наибольший рост кодовой базы Ext4 наблюдался во время выпуска ядер 2.6.24-2.6.27, в дальнейшем размер кодовой базы почти линейно постоянно увеличивается ((за время существования Ext4, размер его кода увеличился с 17 до 30 тысяч строк). Размер кодовой базы Btrfs опережает по темпу роста Ext4 - с момента первой интеграции Btrfs в ядро 2.6.29 размер кода увеличился с 33 до 49 тысяч строк.

Некоторые другие выводы:

  • Код XFS значительно лучше документирован, комментарии составляют примерно 39% от всего размера кода. В EXT4 доля комментариев составляет 33%, а в Btrfs - 17%;
  • В коде XFS выявлено 4806 дублирующихся строк в 561 блоках в 55 файлах. В ext4+jbd2 найдено 917 дубликатов, затрагивающих 116 блоков в 23 файлах. В Btrfs присутствует 2252 дубликатов в 272 блоках в 31 файле.

Полный текст статьи читайте на OpenNet