Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Coda - это распределенная файловая система, разработанная в качестве исследовательского проекта в Университете Карнеги-Меллона с 1987 года под руководством Махадева Сатьянараянана . Он произошел непосредственно от более старой версии файловой системы Andrew File System (AFS-2) и предлагает множество аналогичных функций. InterMezzo файловая система была вдохновлена 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 для Microsoft Windows , от Windows 95 / Windows , 98 эре, Windows NT [5] для Windows XP , [6] с помощью проектов с открытым исходным кодом , как DJGCC DOS C Compiler и Cygwin . [5]

Ссылки [ править ]

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

Внешние ссылки [ править ]

  • Сайт Coda в Университете Карнеги-Меллона
  • Coda: высокодоступная файловая система для распределенной сети рабочих станций, Махадев Сатьянараянан Джеймс Дж. Кистлер, Пунит Кумар, IEEE Transactions on Computers, Vol. 39, No. 4, апрель 1990 г.
  • Распределенная файловая система Coda для Linux , Билл фон Хаген, 7 октября 2002 г.
  • Распределенная файловая система Coda с графическим представлением , Питер Дж. Браам, Школа компьютерных наук,