Coda (файловая система) - Coda (file system)

Coda
Разработчики)Университет Карнеги Меллон
Введено1987
Другой
Поддерживается операционные системыЯдро Linux, NetBSD FreeBSD
Coda
изначальный выпуск1987; 33 года назад (1987)
Стабильный выпуск
8.0.2[1] / 29 мая 2020 г.; 6 месяцев назад (2020-05-29)
Репозиторийgithub.com/ смусатьялаб/ coda
Написано вC
ТипРаспределенная файловая система
ЛицензияGPL v2
Интернет сайткод.cs.cmu.edu

Coda это распределенная файловая система разработан как исследовательский проект на Университет Карнеги Меллон с 1987 г. под руководством Махадев Сатьянараянан. Он произошел непосредственно от более старой версии Файловая система Andrew (AFS-2) и предлагает множество аналогичных функций. В Интермеццо файловая система была вдохновлена ​​Coda.

особенности

Coda имеет много функций, которые желательны для сетевых файловых систем, и несколько функций, которых нет в других местах.

  1. Отключенная операция для мобильных компьютеров.
  2. Свободно доступен под лицензией GPL[2]
  3. Высокая производительность за счет постоянного кэширования на стороне клиента
  4. Репликация сервера
  5. Модель безопасности для аутентификации, шифрования и контроля доступа
  6. Продолжение работы при частичных сбоях сети в сети серверов
  7. Адаптация пропускной способности сети
  8. Хорошая масштабируемость
  9. Четко определенная семантика совместного использования даже при сбое сети

Coda использует локальный кеш для обеспечения доступа к данным сервера при потере сетевого соединения. Во время нормальной работы пользователь обычно читает и записывает в файловую систему, в то время как клиент извлекает или «накапливает» все данные, которые пользователь указал как важные в случае отключения сети. Если сетевое соединение потеряно, локальный кеш клиента Coda обслуживает данные из этого кеша и регистрирует все обновления. Это рабочее состояние называется отключенной работой. После повторного подключения к сети клиент переходит в состояние реинтеграции; он отправляет зарегистрированные обновления на серверы. Затем он переходит обратно в нормальный режим работы с подключением.

От AFS также отличается метод репликации данных Coda. AFS использует пессимистичную стратегию репликации своих файлов, позволяя получать обновления только одному серверу чтения / записи, а всем остальным серверам действовать как реплики только для чтения. Coda позволяет всем серверам получать обновления, что обеспечивает большую доступность данных сервера в случае сетевых разделов, с которыми AFS не может справиться.

Эти уникальные особенности вводят возможность семантически расходящихся копий одних и тех же файлов или каталогов, известных как «конфликты». Локальные обновления отключенной операции могут потенциально конфликтовать с обновлениями других подключенных пользователей на тех же объектах, предотвращая повторную интеграцию. Оптимистичная репликация потенциально может вызвать одновременные обновления на разных серверах одного и того же объекта, предотвращая репликацию. Первый случай называется конфликтом «локальный / глобальный», а второй - конфликтом «сервер / сервер». У Coda есть обширные инструменты исправления, как ручные, так и автоматизированные, для обработки и устранения обоих типов конфликтов.

Поддерживаемые платформы

Coda была разработана на Linux и поддержка этого появилась в серии ядра Linux 2.1.[3] Он также был перенесен на FreeBSD. Впоследствии устаревшее там уже предпринимают попытки вернуть обратно.[4] Были предприняты попытки перенести Coda на Майкрософт Виндоус, от Windows 95 /Windows 98 эпоха Windows NT[5] к Windows XP,[6] с помощью проектов с открытым исходным кодом, таких как Компилятор DOS C DJGCC и Cygwin.[5]

использованная литература

  1. ^ «Кода прогресс». 5 июля 2020 г.. Получено 5 августа, 2020.
  2. ^ «Новый выпуск: 5.0.pre1». 1999-01-06. Получено 2015-09-11.
  3. ^ "Список рассылки ядра Linux, [PATCH] Coda". 1998-01-06.
  4. ^ https://github.com/trasz/freebsd/tree/coda
  5. ^ а б Braam, P.J .; и другие. (1999). "Перенос файловой системы coda на windows". Proc. Ежегодная техническая конференция USENIX. Ассоциация USENIX: 30. Получено 2009-04-15.
  6. ^ «Поддержка Coda для Windows XP». Получено 2009-04-15.

внешние ссылки