Posted by: DASannikov on: 22 Июнь, 2008

Предыдущая запись на эту тему, под названием “Файловая система Linux”, вызвала ряд обоснованных критических замечаний. В частности заголовок многим показался не совсем правильным так как рассматривалась не файловая система, а всего лишь одна из ее составляющих – структура каталогов (filesystem hierarchy). На мой взгляд присутствует некая неоднозначность трактовки термина “файловая система”, и не всегда понятно о чем конкретно речь. Чтобы избежать этой неоднозначности для обозначения тех составных компонентов файловой системы о которых пойдет речь далее я буду использовать термин “структура каталогов файловой системы” или просто “структура каталогов”.
Haiku — свободная операционная система для персональных компьютеров, первая версия которой нацелена на бинарную совместимость с операционной системой BeOS.
BeOS — операционная система, разработанная Be Inc. как мультимедийная система нового поколения. К выгодным отличиям BeOS от других популярных в то время систем относят многопоточность, микроядерность, поддержку многопроцессорных архитектур, 64-битную журналируемую файловую систему, крайне удобный и простой пользовательский интерфейс.
(c) Wikipedia.
Haiku, пока нельзя считать полноценной операционной системой. Система в фазе активной разработки но на данный момент практически неработоспособна. На сайте проекта всегда можно скачать последний ночной билд (всего около 40Мб), но это будет именно технический ночной билд, а не поставка для конечного пользователя. В нем не будет инсталлятора, пользовательских программ и др. – это просто ядро, графическая оболочка и несколько примеров. Это вещь в себе. Это эксперимент с надеждой перейти в нечто большее – возродить пользовательскую BeOS, давно уже канувшую в историю.
Итак, следуя своему желанию посмотреть и сравнить структуру каталогов разных операционных систем я скачал свежий билд Haiku. :) Смотрим что внутри!.

Пользовательский уровень.
На рабочем столе три ярлыка. Каждый из них это ссылка на каталог. На скриншоте выше открыт “корень” системы. Думаю тут все понятно. Дальше интересней…
А что внутри!.
Известно что Haiku наследница unix систем, поэтому добираемся до консоли. И вскрываем “нутро”. Знакомые *nix каталоги (точнее ссылки). Глядя на скриншот становиться понятно как организованна связка с пользовательским уровнем. Используються ссылки, много скрытых каталогов, выход в корень практически недоступен рядовому пользователю (как оказалось “корень” пользовательского уровня это не корень файловой системы)

Итак, оценки структуры каталогов файловой системы с точки зрения юзабилити. С точки зрения простого пользователя не желающего тратить время на “систему”, а желающего просто работать и выполнять какие-то свои, пользовательские задачи.
Обучаемость – 5 баллов.
Все действительно очень просто!. Просматривая структуру каталогов стандартными средствами видно простые и понятные названия каталогов (некоторые из них кстати пустые). beos, apps, preferences – и другие названия говорят сами за себя. Достаточно нескольких секунд чтобы понят что к чему.
Эффективность – 4 баллов.
Все это так же эффективно для администратора как и в Linux. В основе своей где-то в недрах структуры каталогов заложена та же самая идеология. Но это эффективно и для пользователя!. Нормальные, человеческие наименования каталогов делают свое дело. Я знаю где, что и, самое главное, не возникает вопросов почему именно так. Установив новую программу я знаю где ее искать и где хранятся ее настройки…
Почему 4?! Есть одна, так же как и в Linux, значительная проблема с “домашним каталогом”. В нем хранится много “мусора”, то есть в нем много файлов которые на самом деле не ваши, а системы, скопировав свой каталог например на флешку и принеся его на работу вы, кроме ожидаемых документов, принесете с собой все настройки рабочего стола и другой os-specific “хлам”.
Запоминаемость – 5 баллов.
Тут просто нечего запоминать – достаточно прочитать название каталога чтоб все вспомнить. Внутри каждого каталога лежат файлы определенного типа – в “apps” исполняемые файлы. в “preferences” текстовые файлы конфигурации. В “common” картинки, мультимедиа и подобное…
Ошибки – 3 балла.
На данном этапе разработки в билдах нет поддержки нескольких пользователей операционной системы, нет соответственно и разграничений по правам. Загрузив систему пользователь волен делать в ней что угодно (я думаю что в системе разграничение все же присутствует, но пока все работает от “root” ). Это увеличивает вероятность ошибки, но эффективность всей структуры каталогов позволяет ее минимизировать. 3 балла с учетом этого – ошибку сделать физически легко, но трудно на уровне понимания системы. (то есть нужно быть полностью невменяемым чтобы удалить или сохранить файл в папке “beos” к примеру)
Удовлетворенность – 5 баллов.
В структуре каталогов все понятно и “уютно”. Это как дом в котором мало комнат и в каждой чисто прибрано. Потеряться невозможно, ты можешь выйти из той в которую тебя поселили и посмотреть что находиться в других не рискуя потерять путь назад. Это одна из лучших структур с которыми мне приходилось сталкиваться.
Структура каталогов близка к идеальной. Но есть две мелких недоработки не позволивших “взять” полные пять. Возможно ряд изменений пока в работе или запланировано разработчиками.
П.с. По поводу ссылок – Google в помощь :)
22 Июнь, 2008 в 6:59 пп
думаю, достаточно не копировать скрытые файлы. Они ведь не просто так скрыты? Хотя, с другой стороны, я бы не отказался, если бы все личные конфигурационные файлы лежали в одном специальном каталоге. идеальный вариант, имхо, – ~/.config.
храниться/хранится