RU2170454C2 - Система и способ эффективного использования кэш-памяти в распределенной файловой системе - Google Patents

Система и способ эффективного использования кэш-памяти в распределенной файловой системе Download PDF

Info

Publication number
RU2170454C2
RU2170454C2 RU96120166/09A RU96120166A RU2170454C2 RU 2170454 C2 RU2170454 C2 RU 2170454C2 RU 96120166/09 A RU96120166/09 A RU 96120166/09A RU 96120166 A RU96120166 A RU 96120166A RU 2170454 C2 RU2170454 C2 RU 2170454C2
Authority
RU
Russia
Prior art keywords
file
file system
cache
data
distributed
Prior art date
Application number
RU96120166/09A
Other languages
English (en)
Other versions
RU96120166A (ru
Inventor
Томас Джордж КЭНТРЕЛЛ (US)
Томас Джордж КЭНТРЕЛЛ
Себнем ДЖАДЖИ (US)
Себнем ДЖАДЖИ
Амаль Ахмед ШАХИН (US)
Амаль Ахмед ШАХИН
Ричард Байрон УОРД (US)
Ричард Байрон УОРД
Original Assignee
Интернэшнл Бизнес Машинз Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Интернэшнл Бизнес Машинз Корпорейшн filed Critical Интернэшнл Бизнес Машинз Корпорейшн
Publication of RU96120166A publication Critical patent/RU96120166A/ru
Application granted granted Critical
Publication of RU2170454C2 publication Critical patent/RU2170454C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Abstract

Изобретение относится к системам обработки информации для управления данными. Техническим результатом является обеспечение возможности работы пользователя при отключении системы от спецпроцессора, эффективность обработки данных. Система содержит процессор, память, администратор кэш-памяти, кэш-память. Способ описывает работу данной системы. 2 с. и 4 з.п. ф-лы, 7 ил.

Description

Данное изобретение относится к системам обработки информации для управления данными. Более конкретно: данное изобретение относится к управлению данными у пользователей в распределенной файловой системе. Еще конкретнее: данное изобретение относится к использованию кэш-памяти и ведению регистрации у пользователей распределенной файловой системы, которая может обеспечивать работу пользователя при подключении или отключении.
Известный уровень техники
Компьютерные автоматизированные рабочие места в последнее время повысили свою производительность и емкость. Первоначально автоматизированные рабочие места использовались одним оператором для выполнения одного или нескольких изолированных заданий. Повысившееся развертывание автоматизированных рабочих мест для многих пользователей в одной организации обусловило необходимость связи между автоматизированными рабочими местами и совместного использования пользователями. Это привело к разработке архитектур распределенных файловых систем, одна из которых изображена на фиг. 1.
Некоторое число автоматизированных рабочих мест на фиг. 1 подключено друг к другу через локальную сеть (ЛС). Глобальная сеть (ГС) может использоваться для взаимного подключения некоторого числа ЛС. ЛС и ГС составляют единую логическую сеть. Автоматизированные рабочие места на фиг. 1 обозначаются как спецпроцессоры S1, S2, S3, а пользователи - C1, C2, C3.
Обозначение автоматизированного рабочего места как пользователя или спецпроцессора (служебного файлового процессора) зависит от функции, выполняемой определенным автоматизированным рабочим местом в сети. То или иное автоматизированное рабочее место может быть и пользователем, и спецпроцессором. Выполнение распределенной файловой системы требует присутствия, по меньшей мере, одного спецпроцессора и, по меньшей мере, одного пользователя.
Автоматизированные рабочие места пользователей обычно подключаются к ЛС всегда для получения услуг ЛС и для совместного использования ресурсов, таких как файлы. Отключение от ЛС означало лишение автоматизированного рабочего места ресурсов ЛС. Работу можно было продолжать у отсоединенного пользователя только в том случае, если нужные файлы и программы были скопированы для пользователя до отключения.
Повысившаяся производительность портативных автоматизированных рабочих мест сделала практичной отсоединенную или "мобильную" работу с компьютером. Портативное автоматизированное рабочее место можно купить с такой производительностью процессора, памяти и запоминающего устройства на дисках, которая равнозначна используемым в настольных или офисных аппаратах. Портативные автоматизированные рабочие места или портативные компьютеры, тем не менее, в настоящее время имеют те же ограничения, от которых они страдают при отсоединении: разделяемыми ресурсами нельзя пользоваться, если копия файла или программы не сделана до отключения. Когда автоматизированное рабочее место подключается вновь, пользователю приходится самому "вручную" согласовывать файлы, измененные в портативном устройстве, с файлами сети. Фиг. 1 изображает отключаемое портативное автоматизированное рабочее место в виде пользователя C1 102, соединенного пунктирной линией с сетью.
Совместное использование файлов данных по сети, как показано на фиг. 1, выработалось с течением времени. Самая простая форма совместного использования дает возможность пользователю запрашивать данные у файла в спецпроцессоре. Необходимые данные направляются к процессору пользователя, а какие-либо изменения или модификации данных возвращаются к спецпроцессору. Создаются соответствующие блокировки для того, чтобы второй пользователь не изменил данные в файле, который находится у первого пользователя.
Распределенные файловые системы увеличивают масштаб совместного использования файлов при помощи дополнительных механизмов для более эффективного распределения данных между пользователями и для более эффективного управления совместным использованием файлов. Существует много распределенных файловых систем. Одной из популярных распределенных файловых систем является файловая Система "Эндрю" (АФС), которую распространяет корпорация "Трансарк".
АФС повышает производительность распределенной обработки данных путем создания файловой кэш-памяти у пользователя, который совершает доступ к данным спецпроцессора. Обращения к этой кэш-памяти делаются прикладными программами пользователя и только неудачное обращение в кэш-память может быть причиной того, чтобы данные приходилось бы доставать у спецпроцессора. Кэширование данных уменьшает поток обмена в сети и ускоряет время отклика для пользователя. Согласованность кэш-памяти АФС основана на системе обратного вызова спецпроцессора. Спецпроцессор уведомляет каждого пользователя о том, что у него есть определенные кэшированные данные того или иного состояния, которое делает недействительными кэшированные данные пользователя. Став недействительными, эти данные уничтожаются в кэш-памяти и должны приобретаться вновь у спецпроцессора при необходимости.
Отключение автоматизированного рабочего места, подключенного к АФС, вызовет потерю пользователем доступа к распределенным файлам. Он при отключении автоматически потеряет все обратные вызовы, из-за чего кэш-память станет неработоспособной.
Распределенная Файловая Система (РФС) является продолжением АФС, которая обеспечивает Распределенную Вычислительную Среду (РВС) ОСФ (Open Softaware Foundation). Распределенная файловая система использует основанный на работе спецпроцессора механизм опознавательного знака ("маркера") для обеспечения согласованности кэш-памяти пользователя. Пользователи приобретают маркеры "считывания" для обеспечения действительности данных в своей кэш-памяти. Если пользователю приходится изменить данные в файле, он для данных приобретает маркер "записи". Выдача пользователю, например пользователю C1, маркера "записи" делает недействительными маркеры "считывания" для тех же данных у всех других пользователей.
Отмена маркера делает недействительными кэшированные данные у этих пользователей. При отключении от распределенной файловой системы пользователь лишается всех выданных маркеров. Из-за отсутствия маркеров он не сможет производить операции считывания или записи даже на кэшированных данных.
Университет Карнеги-Меллона сделал разработку для сохранения работоспособности отсоединяемых автоматизированных рабочих мест, подключаемых к сети АФС. Проект CODA направлен на обеспечение распределенной файловой системы постоянным наличием данных. Это делается путем точного копирования данных в спецпроцессорах и путем обеспечения сохранения работоспособности для отключенных операций пользователей. См.: "CODA: Файловая Система с Высокой Степенью Наличия для Работы Автоматизированных Рабочих Мест в Распределенной Среде", Труды Института инженеров по электротехнике и радиоэлектронике (IEEE), том 39, N 4, апрель 1990.
Распределенная работа в Coda выполняется оптимистическим управлением использования копий данных. Оптимистическое управление предоставляет многим пользователям возможность считывать и записывать данные даже когда они отключены. Несогласованности данных оставляются для последующего идентифицирования и разрешения. Пессимистическое управление использованием копий данных избегает все конфликты путем ограничения считывания и записи одним разделом. Отключение лишает пользователя возможности определять, имеет ли доступ к данным другой пользователь. При этом пессимистическом управлении использованием копий данных пользователь не сможет осуществлять запись. См.: "Работа при Отключении в Файловой Системе Coda", Дж.Кистлер, М. Сатьянарайанан, Университет Карнеги-Меллона, Протоколы 13 Симпозиума АВТ по Принципам Операционных Систем, октябрь 1991.
Распределенная работа в системе Coda позволяет пользователю продолжать осуществлять доступ к данным и обновлять данные в кэш-памяти пользователя. Файловые операции не срабатывают только в том случае, когда происходит неудачное обращение в кэш-память, т.к. только в этом случае пользователь не в состоянии совершать доступ к данным из спецпроцессора. АФС и Coda кэшируют файлы полностью. Coda обновляет файл во время отключенных операций и ведет реестр всех изменений данных. При повторном подключении пользователь обязан обновить все спецпроцессорные копии данных при помощи применения зарегистрированных транзакций для файлов спецпроцессора. Несогласованности данных обрабатываются отложенным решением для вмешательства "вручную".
Основным недостатком Coda является то, что сохраняется только подключение к спецпроцессору Coda. Аналогично АФС, Coda является протоколом распределенной файловой системы.
Coda основана на том, что спецпроцессор или спецпроцессоры и все пользователи используют один и тот же протокол распределенной файловой системы. Для этого требуется, чтобы все пользователи и спецпроцессоры в сети перешли к протоколу Coda для поддержания отключенной работы.
Второе техническое решение предложено Хастоном и Ханимэном в "Работа при Отключении для АФС", Л.Б.Хастон и П.Ханимэн, Центр Интеграции Информатики, Мичиганский Университет, опубликовано в Протоколах Симпозиума USENIX Мобильной и Автономной по Местоположению Вычислительной Техники, август 1993. Хастон и Ханимэн предлагают систему пользователей, которая может подключаться к стандартному спецпроцессору АФС, не требуя при этом модификаций для спецпроцессора. Модификации в коде пользователя поддерживают отключенную работу и повторное подключение. Повторное подключение и повторное согласование выполняются регистрацией каждой транзакции при отключении. Каждое считывание, запись или обновление записываются в реестре транзакций, который при повторном подключении воспроизводится для спецпроцессора. Это техническое решение имеет преимущество поддержания работы стандартного спецпроцессора АФС. Но это зависит от наличия протокола распределенной файловой системы АФС, и этот метод не может действовать с другими спецпроцессорами, отличающимися от спецпроцессора АФС. Метод всеобщей регистрация также наносит ущерб производительности системы. Объем регистрирования также создает трудности с емкостью диска пользователя и обусловливает задержки согласования в системах любого размера.
В журнале IEEE "Техника Программного Обеспечения", том 19, N 6, июнь 1993, стр. 613-624, "Доступ к Файлам в "Интернете": Файловая Система "джейд", Х.Рао и др. описывают кэшированную файловую систему для использования в условиях ЛС или "Интернет". Рао и др. выполняют все файловое кэширование файлов в автоматизированном рабочем месте или на месте, выбранном пользователем. Файловая система "Джейд" требует, чтобы разработчик прикладной программы использовал "Единый Интерфейс для Протокола Доступа". Для этого нужно модифицировать прикладные программы или, как предлагается в статье, ввести совместно используемую библиотеку, чтобы заменить стандартные вызовы Едиными интерфейсными вызовами. Система "Джейд" использует "посредников" файловой системы, чтобы делать фактические запросы файловой системы. "Джейд" не предоставляет возможности поддержания отключенной работы и регистрации действий файловой системы для синхронизации после повторного включения. "Джейд" не обеспечивает средство перехвата стандартных вызовов файловой системы и преобразования их в независимый от разделителя синтаксис перед доступом к администратору кэш-памяти.
"Компьютерные Стандарты и Интерфейсы", том 14, N 3, 1992, стр. 191-208, А. Маршалл и др. "Осуществимость Файловых спецпроцессоров на базе ISO-FTAM для Выполнения Однородной Файловой системы". Маршалл и др. описывают техническое решение однородных файловых систем на основе модели ISO-FTAM. Они критикуют сегодняшние технические решения: "Sun NFS", например, в связи с тем, что они основаны на решениях, зависимых от операционных систем. Данное изобретение обеспечивает независимое от операционной системы средство для использования виртуальных узлов сети (VNodes) в качестве стандартного протокола, очень близкого к FTAM. Данное осуществление устраняет зависимость от команд операционной системы. Виртуальные файловые запоминающие устройства (ВФЗУ) Маршалла и др. не поддерживают доступ к имеющимся распределенным файловым системам. Предлагаемая файловая система заменяет имеющиеся структуры, хотя доступ к стандартным физическим типам файла поддерживается. Технической проблемой остается обеспечение однородного механизма доступа, который не требует замены существующих протоколов распределенной файловой системы.
Протоколы 3-го Совещания по Операционным Системам Автоматизированных Рабочих Мест, 23 апреля 1992, стр. 122-125, М. Сатьянарайанан и др. "О Повсеместности Регистрирования в распределенных Файловых Системах". Эта статья описывает регистрационные функции в описанной выше системе Coda. Регистрирование в Coda обеспечивает воспроизведение транзакций во время отключения. Как указывалось выше, для CODA требуется спецпроцессор с протоколом CODA доступа к распределенной файловой системе. Регистрирование поэтому основывается на однородной модели спецпроцессора и поддержание однородной модели осуществляется им не без труда.
Поэтому имеется техническая проблема обеспечения распределенной файловой системы, которая обеспечит непрерывную работу "отключенных" пользователей с эффективным согласованием при повторном подключении. Еще одной технической проблемой является создание пользователя распределенной файловой системы, которого можно будет использовать при помощи многочисленных протоколов распределенной файловой системы. Наконец, есть и техническая проблема создания пользователя распределенной файловой системы, который будет независим от синтаксиса операционной системы для разрешения объекта или полного имени файла.
Сущность изобретения
Данное изобретение направлено на обеспечение распределенной файловой системы, которая обеспечивает как подключенную, так и отключенную работу пользователя. Файловая система пользователя выполнена с возможностью подключения к нескольким архитектурам и обеспечивает эффективную регистрацию транзакций.
Данное изобретение направлено на способ управления кэш-памятью файловой системы в пользовательской компьютерной системе, действующей под управлением первой операционной системы. Способ содержит следующие этапы: перехват запросов операционной системы для объекта файловой системы в распределенной файловой системе; преобразование указанных запросов для удаления синтаксиса, зависимого от операционной системы; проверка кэш-памяти в средстве запоминающего устройства указанного пользователя на присутствие данных об указанном объекте файловой системы; выполнение указанного запроса объекта файловой системы - если данные кэш-памяти существуют.
Поэтому задача данного изобретения заключается в обеспечении пользователя распределенной файловой системы, который может работать при отключении от спецпроцессора.
Другая задача данного изобретения заключается в обеспечении отключаемого пользователя, который эффективно регистрирует транзакции для согласования при повторном подключении.
Еще одна задача данного изобретения заключается в обеспечении пользователя файловой системы эффективным использованием кэш-памяти в целях уменьшения объема памяти и пространства диска, требуемых для кэширования, и для увеличения скорости и эффективности обработки данных в кэш-памяти.
Еще одна задача данного изобретения заключается в обеспечении пользователя распределенной файловой системы, который может работать с несколькими протоколами распределенной файловой системы.
Еще одна задача данного изобретения заключается в обеспечении пользователя распределенной файловой системы, который будет независим от операционной системы.
И еще одна задача данного изобретения заключается в повышении эффективности кэш-памяти путем "агрессивного" кэширования разрешенных названий объекта.
Еще одна задача данного изобретения заключается в обеспечении системы управления кэш-памятью, которая не зависит от названия объекта, чтобы каждый объект файловой системы мог бы иметь нескольких родителей, каждый из которых имеет различные правила синтаксиса названия объекта.
Вышеуказанные и другие задачи, признаки и преимущества данного изобретения будут очевидны из следующего ниже более подробного описания предпочтительного варианта реализации данного изобретения, иллюстрируемого прилагаемыми чертежами, в которых аналогичные цифровые обозначения представляют аналогичные компоненты объектов изобретения.
Краткое описание чертежей
Фиг. 1 - иллюстрация среды распределенной сети, в которой осуществляется данное изобретение.
Фиг. 2 - блок-схема автоматизированного рабочего места, изображающая один из вариантов реализации данного изобретения.
Фиг. 3 - блок-схема известного уровня техники распределенной файловой системы.
Фиг. 4 - блок-схема, изображающая функциональные компоненты варианта реализации данного изобретения.
Фиг. 5 - изображение структур данных в предпочтительном варианте реализации данного изобретения.
Фиг. 6 - блок-схема варианта реализации данного изобретения.
Фиг. 7 - схема последовательности, изображающая этапы процесса одного из вариантов реализации данного изобретения.
Подробное описание
Фиг. 2 изображает типичную конфигурацию пользователя или автоматизированного рабочего места спецпроцессора. Данное изобретение предпочтительно осуществляется с таким автоматизированным рабочим местом, как IBM RISC System/6000 или персональный компьютер IBM PS/2. Автоматизированные рабочие места пользователя и спецпроцессора взаимосвязаны "маркерным" звонком или ЛС "Эсернет" - изображено на фиг. 1. Автоматизированные рабочие места, подключенные к ЛС, могут включать в себя портативные автоматизированные рабочие места, такие как C1, которые могут быть отключены от ЛС и использоваться независимо от ЛС. Будет очевидно, что в рамках данного изобретения можно использовать много других конфигураций аппаратуры автоматизированного рабочего места или типов ЛС.
Обычное автоматизированное рабочее место 200 пользователя или спецпроцессора имеет процессор 210, память системы 214 и энергонезависимое запоминающее устройство 212, такое как НМД, дискета или оптическое запоминающее устройство. Процессор принимает входной сигнал от устройств ввода-вывода, таких как клавиатура 224 и координационно-указательное устройство 226 через контроллер ввода-вывода 218. Система представляет на дисплее 222 оператору графическую информацию, управляемую контроллером 220 графики. Автоматизированное рабочее место подключено к сети (не показана) через адаптер 216 интерфейса сети.
Предпочтительный вариант реализации данного изобретения выполняется компьютерным процессом, действующим в памяти и процессоре автоматизированного рабочего места 200. Компьютерное программное изделие, осуществляющее данное изобретение, могут хранить в энергонезависимом запоминающем устройстве 212, включая хранение на ленте, дискете или устройстве КД-ПЗУ.
Работа распределенных файловых систем известного уровня техники иллюстрируется со ссылкой на фиг. 3. Фиг. 3 изображает автоматизированное рабочее место 302 пользователя и автоматизированное рабочее место 304 спецпроцессора (служебного файлового процессора), взаимно подключенные сетевым интерфейсом 306. Запрос пользовательского процесса 308 о конкретном файле или информации о файле, постоянно находящейся на дисковом запоминающем устройстве 390, обрабатывается следующим образом. Обратите внимание на то обстоятельство, что и пользователь 302, и спецпроцессор 304 разделены на пространство 310, 314 адреса пользователя и пространство 312, 316 адреса ядра. Интерфейсом между прикладной программой и ядром (известен как интерфейс прикладной программы или ИПП) является ИПП-виртуальная файловая система/узел сети VFS/vnode (VFS/vnode), который определяется в: С.Р.Клаймэн, "Vnodes: Архитектура для Типов Множественных Файловых Систем в Sun UNIX", Протоколы Летней Конференции Usenix, 1986". Можно также, разумеется, использовать другие интерфейсы. Интерфейс VFS/vnode дает возможность существовать множественным виртуальным файловым системам. Распределенная файловая система становится виртуальной файловой системой для автоматизированного рабочего места пользователя.
Пользовательский процесс 308 запрашивает файл данных в запоминающем устройстве 390. Запрос 320 перехватывается интерфейсом VFS и поступает к пользователю 322 распределенной файловой системы, постоянно находящемуся в пространстве 312 адреса ядра пользователя. Пользователь распределенной файловой системы управляет связью со спецпроцессором по сети. Запрос подается в сообщении 326 спецпроцессору 324 распределенной файловой системы в ядро 316 спецпроцессора по сети 306. Спецпроцессор 324 распределенной файловой системы совершает доступ к запоминающему устройству 390 с помощью интерфейса 328 VFS для доступа к локальной физической файловой системе спецпроцессора, которая содержит устройство 390. Запрошенные данные приобретаются и направляются 330 от спецпроцессора 324 распределенной файловой системы к пользователю 322 распределенной файловой системы, который в свою очередь направляет 332 данные к запрашивающему пользовательскому процессу 308.
Пользователь 322 распределенной файловой системы может включить кэш-память данных (не показана) в данные кэш-памяти, запрошенные со спецпроцессора. Перед запросом данных от спецпроцессора пользователь распределенной файловой системы проверяет кэш-память относительно действительных данных.
Предпочтительный вариант реализации данного изобретения иллюстрируется на фиг. 4. Автоматизированное рабочее место пользователя имеет пространство 402 адреса пользователя и пространство 404 адреса ядра. Усовершенствованный администратор 406 кэш-памяти в данном изобретении действует предпочтительно в пространстве 402 адреса пользователя, но может быть выполнен в пространстве 404 адреса ядра.
Программы пользователя 408, 410, 412 дают запросы 414, 416, 418 файловой системы. Программа n пользователя изображена использующей логическую файловую систему 414, которая поочередно дает запросы 420 файловой системы. Запросы файловой системы соответствуют интерфейсу VFS/vnodes, хотя в рамках данного изобретения могут использовать и другие интерфейсы. Данное изобретение можно использовать в любой логической файловой системе, которая соответствует ИПП-VFS/vnode или в качестве вариантов осуществления соответствует любому другому ИПП.
Интерфейс VFS направляет запрос файловой системы администратору 406 кэш-памяти. Администратор 406 кэш-памяти хранит локальную информацию о распределенных файловых системах, к которым пользователь совершает доступ. При возможности запросы файловой системы обслуживаются администратором кэш-памяти без доступа к спецпроцессору. Запросы файловой системы могут выполняться администратором кэш-памяти, если запрошенная информация находится в кэш-памяти и все еще действительна. Администратор 406 кэш-памяти будет описан более подробно ниже.
Запросы файловой системы выполняются администратором 406 кэш-памяти либо с данных, постоянно находящихся в памяти администратора кэш-памяти, или доступом к локальной физической файловой системе 420, либо доступом 422 к распределенной файловой системе. Администратор кэш-памяти хранит локальные копии распределенных файлов в локальной физической файловой системе в целях быстрого доступа. Доступ 422 к распределенной файловой системе отдает необходимые команды к спецпроцессору 324 распределенной файловой системы - как описывается выше. Предпочтительное осуществление кэширует все файлы, хотя данное изобретение не ограничивается полным кэшированием файлов.
Администратор 406 кэш-памяти и доступ 422 к распределенной файловой системе не зависят от операционной системы и протокола доступа к распределенной файловой системе. Независимость операционной системы достигается обеспечением указанных интерфейсов. Обеспечиваемые интерфейсы: интерфейс VFS+/Vnodes для операций файловой системы; интерфейс последовательности, такой как предоставляемый структурой последовательности объектов IBM SOB; локальный интерфейс файловой системы (ЛФИ) для кэшированных файлов; различные протоколы распределенной файловой системы; интерфейс синхронизации кэш-памяти; интерфейс воспроизведения регистрации. Администратор кэш-памяти не зависит от какого-либо синтаксиса операционной системы. Названия файлов преобразуют, чтобы они стали независимыми от знаков разделителя компонентов названия файла и считались не имеющими зарезервированных знаков и зарезервированных слов. Определение маршрутного имени файла также независимо от синтаксиса операционной системы. Поэтому к конкретному объекту файловой системы можно обращаться двумя операционными системами с противоречащими правилами синтаксиса. Например, администратор 406 кэш-памяти может быть выполнен для работы с операционной системой IBM OS/2, или IBM AIX, или с любой другой операционной системой лишь с незначительными модификациями.
Администратор кэш-памяти в данном изобретении не зависит от протокола распределенной файловой системы. Доступ 422 к распределенной файловой системе может совершить доступ к удаленным спецпроцессорам либо с помощью спецпроцессора Распределенной Вычислительной Среды, который поставляет "Оупен Софтвзар Фаундейшн" (ОСФ) или с помощью программного изделия IBM LAN Server. Другие протоколы доступа к удаленным файлам можно использовать только с незначительными модификациями. Механизм синхронизации и механизм воспроизведения реестра обрабатывают зависимые от протокола задания.
Администратор 406 кэш-памяти ведет кэш-память 409 пользователя. В связи с кэш-памятью 409 администратор кэш-памяти ведет информацию 410 о томе и реестр 412 модификаций. Информация 410 тома содержит информацию о файловых системах, доступных для автоматизированного рабочего места пользователя через администратора кэш-памяти. В предпочтительном осуществлении удаленные файловые системы подключают к пользователю посредством тома. Каждый том будет иметь вход тома в базе данных информации. Итак, удаленная файловая система будет подключена к автоматизированному рабочему месту пользователя либо как файловая система типа Unix (например, установленная в качестве конкретной файловой системы/rfs), либо как символ накопителя Распределенной Вычислительной Среды (например, как пуск G:\.). Вся информация об удаленной файловой системе и ее состоянии хранится в базе данных 410 информации тома. Множественные удаленные файловые системы можно одновременно подключать к одному пользователю.
Структура кэш-памяти 409 изображена более подробно на фиг. 5. Кэш-память 409 ведет единую кэш-память для полного названия файла, данных объекта файловой системы и информации состояния объекта файловой системы. Кэш-память ведется в последовательной динамически распределяемой области памяти, т.е. она периодически записывается в энергонезависимое запоминающее устройство, из которого она может быть восстановлена в случае случайного отключения электроэнергии или отказе системы. Единая интегрированная кэш-память сокращает общие требования к кэш-памяти, тем самым улучшая показатели работы кэш-памяти. Для единой кэш-памяти требуется только одна рандомизированная таблица вместо трех, которые применяются в системах имеющегося уровня техники. Всю обработку данных кэш-памяти можно выполнять в одном кодовом наборе, который хранит различные типы объектов файловой системы, а не в обычном механизме отдельного кода для каждого типа кэш-памяти. Кэшированный объект файловой системы в общем виде изображен под обозначением 502. Объект 502 файловой системы используется как для подключенной, так и неподключенной работы администратора кэш-памяти.
Объект 502 файловой системы является структурой данных, содержащей информацию, необходимую для доступа к удаленному файлу или локальной кэшированной копии удаленного файла. Элемент объекта файловой системы создается в кэш-памяти для каждого удаленного файла или каталога, к которым обращается автоматизированное рабочее место пользователя. Объект файловой системы содержит идентификатор 504 VFS+/vnode и идентификатор 506 файла.
Идентификатор 506 файла включает в себя данные тома, спецпроцессора и файла. Идентификатор VFS+/vnode содержит информацию, определяемую стандартной спецификацией VFS/vnodes. Включение этой информации позволяет полностью поддерживать все интерфейсы VFS/vnode. В данном изобретении дополнительная информация прилагается к структуре данных для обеспечения увеличенного кэширования и работы при отключении. Элемент 508 тома является указателем элемента 545 тома в базе данных 410 информации тома для тома, к которому относится данный файл. Переменная 510 состояния и структура 512 состояния ведутся для предоставления для данных информации состояния кэш-памяти. В предпочтительном осуществлении, выполненном в ориентированной на объект среде, с помощью таких средств, как язык программирования C++, структура состояния определена как класс объекта. Структура состояния для конкретного файла операционной системы (например, OS/2 или AIX) определяется созданием подкласса класса структуры состояния. Точным содержанием, необходимым для определения состояния файла, подкласс переопределяет класс структуры состояния.
Объект файловой системы ведет информацию 514 когерентности кэш-памяти. Эта информация используется для обеспечения согласованности между кэш-памятью и спецпроцессором и точными копиями спецпроцессора. Список перечней 516 управления доступом определяет разрешения на доступ к файловой системе и на модификации согласно нормативу IEEE POSIX. Другая флаговая информация ведется в 518. Состояние установления тома ведется 520 в качестве указателя 522 на родительский элемент и информации 524 приоритета. Каждый объект файловой системы имеет присвоенный приоритет, который используется при определении объектов на уничтожение, чтобы дать место новым объектам.
Доступ к данным файловой системы производится через указатель 526 файла/каталога/символьного звена. Этот указатель обеспечивает доступ к трем разным типам данных кэш-памяти в зависимости от типа объекта файловой системы. Объект файловой системы для файла данных имеет указатель на кэшированный файл 540, который в свою очередь указывает на копию локального файла кэшированных данных в локальной файловой системе 420. Указатель каталога показывает на кэшированный каталог 542. Кэшированный каталог 542 выполнен на основе схемы агрессивного кэширования. Когда для конкретного каталога запрашивается информация о каталоге, то этот каталог и все его непосредственные дочерние записи возвращаются. Это уменьшает количество неудачных обращений в кэш по причине большой вероятности того, что информация об одной или нескольких дочерних записях будет запрошена вскоре после информации о родительском каталоге. Кэш-память каталога предоставляет информацию, необходимую для определения маршрутного имени файла, т.е. отображения конкретного запроса маршрута файловой системы на определенном файле данных. Наконец, указатель 526 может указывать на кэшированную информацию 544 символьного звена. Эта кэшированная информация обеспечивает разрешение символьных звеньев.
В 528 обеспечиваются элементы для разных счетчиков, блокировок и "отмычек" (ручек) и индикатора чистого состояния 532. Индикатор 532 чистого состояния важен для работы при отключении и используется для указания состояния согласования.
Важно отметить, что название объекта файловой системы не включается в структуру 502 данных. Это позволяет бесконфликтно обращаться к объекту файловой системы от различных наборов названий объекта. У каждого объекта файловой системы может быть несколько родителей. Каждый родитель может соответствовать разным порядкам присваивания имен, например: спецификации присваивания имен Группы Управления Объектами (ГУО), или спецификации AIX, OS/2, либо в соответствии с другой операционной системой. Поэтому доступ к конкретному "списку сотрудников" (employee-list) объекта файла можно осуществлять с OS/2 как с: \ employee-list и с AIX как /usr/ employee-list.
Администратор 406 кэш-памяти обеспечивает как "подключенную", так и "отключенную" работу. Во время подключенной работы администратор 406 кэш-памяти выполняет запросы файловой системы от кэш-памяти или, в случае необходимости, путем доступа к удаленному файлу. При отключенной работе администратор кэш-памяти выполняет запросы от кэш-памяти и ведет реестр 546 модификаций по всем модификациям в файловой системе.
Один из вариантов выполнения администратора кэш-памяти в соответствии с данным изобретением изображен на фиг. 6. Это осуществление разработано для использования с операционной системой IBM 0S/2. Запросы файловой системы отдаются системой как команда 602 "doscall". Все запросы файловой системы обслуживаются файловой системой IFS. IFS обеспечивает логические возможности файловой системы. IFS может устанавливать и обслуживать различные типы файловых систем. Установленные файловые системы могут включать в себя, например, файловую систему 606 FAT, которая является общей для дисковых операционных систем, или файловую систему OS/2 HPFS. В условиях ЛС Инициатор Запроса (Requester) 610 ЛС фигурирует в качестве еще одной файловой системы, в которой доступы к файлам направляются к Спецпроцессору ЛС для исполнения. Администратор кэш-памяти согласно данному изобретению может устанавливаться как еще один тип файловой системы 612. Все доступы к удаленной файловой системе поступают к администратору 612 кэш-памяти. Администратор кэш-памяти проверяет кэш-память 614 (в пространстве адреса пользователя), чтобы определить: кэширована ли запрашиваемая информация. Если да, то информация предоставляется прикладной программе, включая, при необходимости, предоставление или модифицирование кэшированных данных, удерживаемых в локальной файловой системе 606 или 608. Если данные файловой системы не обнаруживаются, то запрос 615 направляется к инициатору запроса 610 ЛС, чтобы он совершил доступ к нужным данным в спецпроцессоре ЛС. Когда удаленные данные поступят, они размещаются в кэш-памяти для будущих обращений.
Схема, иллюстрирующая последовательность процесса для команды записи файла, изображена на фиг.7. Другие команды файловой системы выполняются аналогично. Команда начинается в 702 - отдается команда 704 записи файла. Администратор кэш-памяти проверяет: есть ли в кэш-памяти 706 запрошенный файл. Если есть, то кэшовая копия файла обновляется 708. Затем кэш-память проверяют, чтобы определить: подключен 710 ли в данное время том. Состояние подключения поддерживается в базе данных 410 информации тома. Если том подключен, то изменение подается обратно к спецпроцессору 712 и обработка данных завершается 722. Если том не подключен, то изменение регистрируется 714 в реестре модификаций и обработка данных завершается 722.
Если запрошенного файла в кэш-памяти нет, то администратор кэш-памяти затем проверяет: подключен 716 или не подключен запрошенный том. Если подключен, то файл запрашивается у удаленной файловой системы 718, размещенной в кэш-памяти, и обработка данных возобновляется на этапе 708. Если том не подключен, то сигнал сбоя возвращается в прикладную программу 720.
Регистрирование видоизменений (например, этап 714) в реестре 546 осуществляется объектами регистрирования. Область проблемы представлена классом реестра модификаций пользователя и отдельным классом для каждого отличного от других типа регистрируемой транзакции. Для каждого вида работы определяют разные объекты, например, один будет для файла записи, создания файла, удаления файла. Когда администратор кэш-памяти регистрирует изменение 714 в отключенном режиме работы, создается тип объекта регистрирования, соответствующий запрашиваемой операции (например, запись файла). Для помещения объекта в реестр активизируют метод регистрации.
Объектные методы включают в себя методы уплотнения и оптимизации реестра для воспроизведения. Регистрирование конкретного объекта может обусловить удаление ранее зарегистрированного объекта. Например, когда файл создается, а затем удаляется, то объект удаления файла удалит элемент регистрации создания файла, все элементы регистрации модификаций файла и затем выйдет, не размещая в реестре элемент удаления файла. Эта система обеспечивает быструю и эффективную синхронизацию кэш-памяти с удаленной файловой системой при повторном подключении. Логические функции в объектах регистрирования устраняют необходимость обработки и уплотнения реестра перед воспроизведением.
Из изложенного выше описания будет ясно, что различные модификации и изменения можно производить в предпочтительном варианте реализации данного изобретения, не выходя за его рамки. Данное описание изложено в целях иллюстрации и не должно истолковываться в ограничивающем смысле. Объем патентной защиты данного изобретения определяется только его формулой изобретения.

Claims (6)

1. Способ управления кэш-памятью файловой системы в пользовательской компьютерной системе, работающей под управлением операционной системы, чтобы выполнить запрос операционной системы, включающий в себя одну из множества операций файловой системы в качестве запрашиваемой операции файловой системы и имя файла распределительной файловой системы, отличающийся тем, что перехватывают запрос операционной системы, удаляют из имени файла синтаксис разделителя, зависимый от операционной системы, для создания обращения к объекту файловой системы, проверяют кэш-память файловой системы в средстве памяти пользовательской компьютерной системы на наличие объекта файловой системы для обращения к объекту файловой системы, причем объект файловой системы содержит информацию, позволяющую доступ к файлу распределенной файловой системы и доступ к возможным локальным кэшированным данным файла внутри кэш-памяти файловой системы, и выбирают один из множества возможных протоколов распределенной файловой системы и, если не имеется локальных кэшированных данных файла и есть подключение к распределенной файловой системе, запрашивают данные файла и запоминают их в качестве локальных кэшированных данных, выполняют запрошенную операцию файловой системы, если имеются локальные кэшированные данные файла.
2. Способ по п.1, отличающийся тем, что всякий раз, когда обнаруживают отсутствие подключения к распределенной файловой системе, дополнительно осуществляют следующие этапы: определяют тип запрошенной операции файловой системы, выполняемой на файле, создают запрашиваемый объект файла регистрирования согласно типу запрашиваемой операции файловой системы, активизируют метод обработки реестра модификаций для регистрирования запрашиваемого объекта файла регистрирования и регистрируют запрошенный объект файла регистрирования путем выполнения оптимизации реестра для определенного типа запрашиваемой операции файловой системы.
3. Способ по одному из п.1 или 2, отличающийся тем, что дополнительно запоминают созданное обращение к объекту файловой системы для каждого файла или каталога, к которым обращаются в упомянутой кэш-памяти файловой системы.
4. Пользовательская компьютерная система, подключенная через сеть, по меньшей мере, к одной обслуживающей компьютерной системе, причем пользовательская и обслуживающая компьютерные системы содержат процессор и память и используют распределенную файловую систему, пользовательская компьютерная система выполнена с возможностью работы под управлением операционной системы, чтобы выполнить запрос операционной системы, включающий в себя одну из множества операций файловой системы в качестве запрашиваемой операции файловой системы и имя файла распределенной файловой системы, отличающаяся тем, что включает в себя администратор кэш-памяти, предназначенный для выполнения запроса файловой системы, выполненный с возможностью удаления из имени файла синтаксиса разделителя, зависимого от операционной системы, для создания обращения к объекту файловой системы, и кэш-память файловой системы в памяти пользовательской компьютерной системы для проверки наличия объекта файловой системы для обращения к объекту файловой системы, причем объект файловой системы включает в себя информацию, позволяющую доступ к файлу распределенной файловой системы и доступ к возможным локальным кэшированным данным файла внутри кэш-памяти файловой системы, причем кэш-память файловой системы выполнена с возможностью выбора одного из множества возможных протокольных средств распределенной файловой системы и, если не имеется локальных кэшированных данных файла и есть подключение к распределенной файловой системе, запроса данных файла и запоминания этих данных в качестве локальных кэшированных данных, причем кэш-память файловой системы выполнена с возможностью выполнения запрашиваемой операции файловой системы, если имеются локальные кэшированные данные файла.
5. Пользовательская компьютерная система по п.4, отличающаяся тем, что дополнительно включает в себя реестр модификаций объектов, управляемый администратором кэш-памяти таким образом, что, когда не обнаруживается подключение к распределенной файловой системе, администратор кэш-памяти регистрирует объект регистрирования, соответствующий запрашиваемой операции в реестре модификаций объектов.
6. Пользовательская компьютерная система по одному из п.4 или 5, отличающаяся тем, что дополнительно включает указатель файла (каталога) символьного звена, обеспечивающий доступ к трем разным типам данных кэш-памяти в зависимости от типа объекта файловой системы: к копии локального файла кэшированных данных в локальной файловой системе в памяти, кэшированному каталогу, к символьному звену кэш-памяти.
RU96120166/09A 1994-03-07 1994-12-27 Система и способ эффективного использования кэш-памяти в распределенной файловой системе RU2170454C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/206,706 US6119151A (en) 1994-03-07 1994-03-07 System and method for efficient cache management in a distributed file system
US08/206,706 1994-03-07

Publications (2)

Publication Number Publication Date
RU96120166A RU96120166A (ru) 1998-12-27
RU2170454C2 true RU2170454C2 (ru) 2001-07-10

Family

ID=22767588

Family Applications (1)

Application Number Title Priority Date Filing Date
RU96120166/09A RU2170454C2 (ru) 1994-03-07 1994-12-27 Система и способ эффективного использования кэш-памяти в распределенной файловой системе

Country Status (14)

Country Link
US (1) US6119151A (ru)
EP (1) EP0749602B1 (ru)
JP (1) JP2705006B2 (ru)
KR (1) KR0170561B1 (ru)
CN (1) CN1132109C (ru)
AT (1) ATE177223T1 (ru)
BR (1) BR9500819A (ru)
CA (1) CA2142797C (ru)
CZ (1) CZ260296A3 (ru)
DE (1) DE69416875T2 (ru)
HU (1) HU219996B (ru)
PL (1) PL176975B1 (ru)
RU (1) RU2170454C2 (ru)
WO (1) WO1995024685A1 (ru)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7729919B2 (en) 2003-07-03 2010-06-01 Microsoft Corporation Combining use of a stepwise markup language and an object oriented development tool
RU2449358C1 (ru) * 2008-08-04 2012-04-27 ЗетТиИ Корпорейшн Распределенная файловая система и способ управления согласованностью блоков данных в такой системе
RU2449351C2 (ru) * 2006-05-16 2012-04-27 Нокиа Корпорейшн Кэширование по правилам для пакетного переноса данных
US8473634B2 (en) 2003-10-23 2013-06-25 Microsoft Corporation System and method for name resolution
RU2527736C2 (ru) * 2009-12-16 2014-09-10 Телефонактиеболагет Л М Эрикссон (Пабл) Способ, сервер, компьютерная программа и компьютерный программный продукт для кэширования
US8938062B2 (en) 1995-12-11 2015-01-20 Comcast Ip Holdings I, Llc Method for accessing service resource items that are for use in a telecommunications system
RU2544777C2 (ru) * 2009-04-24 2015-03-20 Майкрософт Корпорейшн Динамическое размещение данных точных копий
US9191505B2 (en) 2009-05-28 2015-11-17 Comcast Cable Communications, Llc Stateful home phone service
US9336231B2 (en) 2004-12-17 2016-05-10 Microsoft Technology Licensing, Llc Extensible file system
US9558223B2 (en) 2006-05-23 2017-01-31 Microsoft Technology Licensing, Llc Extending cluster allocations in an extensible file system
RU2617631C2 (ru) * 2015-09-30 2017-04-25 Акционерное общество "Лаборатория Касперского" Способ обнаружения работы вредоносной программы, запущенной с клиента, на сервере
RU2653278C2 (ru) * 2012-08-03 2018-05-07 ЗэтТиИ Корпорейшн Способ и устройство хранения для распределенной файловой системы
US10303650B2 (en) 2004-12-17 2019-05-28 Microsoft Technology Licensing, Llc Contiguous file allocation in an extensible file system
US10614032B2 (en) 2004-12-17 2020-04-07 Microsoft Technology Licensing, Llc Quick filename lookup using name hash

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5634122A (en) 1994-12-30 1997-05-27 International Business Machines Corporation System and method for multi-level token management for distributed file systems
US5774670A (en) 1995-10-06 1998-06-30 Netscape Communications Corporation Persistent client state in a hypertext transfer protocol based client-server system
GB9604987D0 (en) * 1996-03-08 1996-05-08 Ibm Data management system and method for replicated data
US5832512A (en) * 1996-04-15 1998-11-03 Sun Microsystems, Inc. Apparatus and method for file number re-mapping for disconnected operations in a client-server network
US6125403A (en) * 1996-05-01 2000-09-26 Sun Microsystems, Inc. Method for implementing a non-volatile caching product for networks and CD-ROMS
US5806085A (en) * 1996-05-01 1998-09-08 Sun Microsystems, Inc. Method for non-volatile caching of network and CD-ROM file accesses using a cache directory, pointers, file name conversion, a local hard disk, and separate small database
US5740432A (en) * 1996-05-28 1998-04-14 Sun Microsystems, Inc. Log file optimization in a client/server computing system
US6625641B1 (en) * 1996-06-03 2003-09-23 Sun Microsystems, Inc. Method and apparatus for providing client support without installation of server software
US5826021A (en) * 1996-09-17 1998-10-20 Sun Microsystems, Inc. Disconnected write authorization in a client/server computing system
US5835698A (en) * 1996-09-20 1998-11-10 Novell, Inc. Unilaterally-controlled, time-insensitive, data-link recovery apparatus and method
US5893920A (en) * 1996-09-30 1999-04-13 International Business Machines Corporation System and method for cache management in mobile user file systems
US6678724B2 (en) * 1997-03-12 2004-01-13 Microsoft Corporation Common namespace for internet and local filesystem objects
CZ297034B6 (cs) * 1998-03-17 2006-08-16 Virtuální informacní systém
DE19817617C1 (de) * 1998-04-21 1999-09-09 Deutsche Telekom Mobil Verfahren zur Konvertierung baumstrukturierter Daten
US6757705B1 (en) * 1998-08-14 2004-06-29 Microsoft Corporation Method and system for client-side caching
US8225002B2 (en) * 1999-01-22 2012-07-17 Network Disk, Inc. Data storage and data sharing in a network of heterogeneous computers
CN1108578C (zh) * 1999-01-28 2003-05-14 国际商业机器公司 为离线客户请求提供响应的方法及装置
JP2000293424A (ja) * 1999-04-09 2000-10-20 Hitachi Ltd ネットワークキャッシュ装置およびキャッシュ制御方法
US7596563B1 (en) * 1999-10-28 2009-09-29 Hewlett-Packard Development Company, L.P. Computerized file system and method
US6792436B1 (en) * 2000-02-11 2004-09-14 Persistence Software, Inc. Method for synchronizing multiple software caches in a memory
WO2001063399A2 (de) * 2000-02-24 2001-08-30 Siemens Aktiengesellschaft Verfahren und anordnung zur synchronisation eines auf einem ersten rechner ablaufenden programms mit einem auf einem server ablaufenden programm, computerlesbares speichermedium und computerprogramm-element
ATE338415T1 (de) * 2000-03-30 2006-09-15 Intel Corp Verfahren und vorrichtung zum verteilten cachen
US7185005B1 (en) 2000-05-12 2007-02-27 Oracle International Corporation Nested transactions in a file system
US7389493B1 (en) 2000-05-12 2008-06-17 Oracle International Corporation Categories on a per instance basis
US7421541B2 (en) * 2000-05-12 2008-09-02 Oracle International Corporation Version management of cached permissions metadata
US7203709B2 (en) 2000-05-12 2007-04-10 Oracle International Corporation Transaction-aware caching for access control metadata
US7987217B2 (en) * 2000-05-12 2011-07-26 Oracle International Corporation Transaction-aware caching for document metadata
US6728716B1 (en) * 2000-05-16 2004-04-27 International Business Machines Corporation Client-server filter computing system supporting relational database records and linked external files operable for distributed file system
US7127486B1 (en) 2000-07-24 2006-10-24 Vignette Corporation Method and system for facilitating marketing dialogues
US6842770B1 (en) * 2000-08-18 2005-01-11 Apple Computer, Inc. Method and system for seamlessly accessing remotely stored files
US6768499B2 (en) * 2000-12-06 2004-07-27 Microsoft Corporation Methods and systems for processing media content
US7447754B2 (en) * 2000-12-06 2008-11-04 Microsoft Corporation Methods and systems for processing multi-media editing projects
US7287226B2 (en) * 2000-12-06 2007-10-23 Microsoft Corporation Methods and systems for effecting video transitions represented by bitmaps
US7103677B2 (en) * 2000-12-06 2006-09-05 Microsoft Corporation Methods and systems for efficiently processing compressed and uncompressed media content
US6983466B2 (en) * 2000-12-06 2006-01-03 Microsoft Corporation Multimedia project processing systems and multimedia project processing matrix systems
US7114162B2 (en) * 2000-12-06 2006-09-26 Microsoft Corporation System and methods for generating and managing filter strings in a filter graph
US6774919B2 (en) 2000-12-06 2004-08-10 Microsoft Corporation Interface and related methods for reducing source accesses in a development system
US6959438B2 (en) 2000-12-06 2005-10-25 Microsoft Corporation Interface and related methods for dynamically generating a filter graph in a development system
US6882891B2 (en) 2000-12-06 2005-04-19 Microsoft Corporation Methods and systems for mixing digital audio signals
US7188145B2 (en) 2001-01-12 2007-03-06 Epicrealm Licensing Llc Method and system for dynamic distributed data caching
US7743109B2 (en) * 2001-08-01 2010-06-22 Cisco Technology, Inc. Reducing round trips across a wide area network for resource locking by extended locking and delayed unlocking
AU2002313583A1 (en) * 2001-08-01 2003-02-17 Actona Technologies Ltd. Virtual file-sharing network
US6662198B2 (en) 2001-08-30 2003-12-09 Zoteca Inc. Method and system for asynchronous transmission, backup, distribution of data and file sharing
US7062515B1 (en) 2001-12-28 2006-06-13 Vignette Corporation System and method for the synchronization of a file in a cache
US7409396B2 (en) * 2002-02-08 2008-08-05 Pitts William M Method for creating an extensible content distribution framework
US6922757B2 (en) * 2002-02-15 2005-07-26 Exanet Inc. Flexible and adaptive read and write storage system architecture
US6968345B1 (en) * 2002-02-27 2005-11-22 Network Appliance, Inc. Technique to enable support for symbolic link access by windows clients
GB2412769B (en) * 2002-05-29 2006-09-13 Flyingspark Ltd Methods and systems for using caches
GB2410657B (en) * 2002-05-29 2006-01-11 Flyingspark Ltd Methods and system for using caches
US20040019640A1 (en) * 2002-07-25 2004-01-29 Bartram Linda Ruth System and method for distributing shared storage for collaboration across multiple devices
US7051174B2 (en) * 2002-09-24 2006-05-23 International Business Machines Corporation Method, system, and program for restoring data in cache
US20040068523A1 (en) * 2002-10-07 2004-04-08 Keith Robert Olan Method and system for full asynchronous master-to-master file synchronization
US6970975B2 (en) * 2002-11-15 2005-11-29 Exanet Co. Method for efficient caching and enumerating objects in distributed storage systems
US7797392B2 (en) * 2002-11-26 2010-09-14 International Business Machines Corporation System and method for efficiently supporting multiple native network protocol implementations in a single system
US7103617B2 (en) * 2003-01-17 2006-09-05 Tacit Networks, Inc. Method and system for use of storage caching with a distributed file system
US6981097B2 (en) * 2003-03-14 2005-12-27 Wisconsin Alumni Research Foundation Token based cache-coherence protocol
US7827216B1 (en) * 2003-07-23 2010-11-02 Novell, Inc. Method for coordinating relationships between multiple physical entities
US7512990B2 (en) * 2003-10-16 2009-03-31 International Business Machines Corporation Multiple simultaneous ACL formats on a filesystem
US7978716B2 (en) 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
US7590845B2 (en) * 2003-12-22 2009-09-15 Lenovo Singapore Pte. Ltd. Key cache management through multiple localities
US8135755B2 (en) * 2005-06-29 2012-03-13 Microsoft Corporation Templates in a schema editor
US7716168B2 (en) * 2005-06-29 2010-05-11 Microsoft Corporation Modifying table definitions within a database application
JP4020091B2 (ja) 2004-03-10 2007-12-12 日本電気株式会社 データ送受信システム、データ送受信方法およびデータ送受信プログラム
JP2005267497A (ja) * 2004-03-22 2005-09-29 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置、その制御方法及び磁気ディスク記憶装置
US20050273486A1 (en) * 2004-06-03 2005-12-08 Keith Robert O Jr Virtual distributed file system
US8739274B2 (en) * 2004-06-30 2014-05-27 Citrix Systems, Inc. Method and device for performing integrated caching in a data communication network
US7757074B2 (en) 2004-06-30 2010-07-13 Citrix Application Networking, Llc System and method for establishing a virtual private network
US8495305B2 (en) 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
US8046830B2 (en) 2004-07-23 2011-10-25 Citrix Systems, Inc. Systems and methods for network disruption shielding techniques
AU2005266945A1 (en) 2004-07-23 2006-02-02 Citrix Systems, Inc. A method and systems for securing remote access to private networks
US7702730B2 (en) 2004-09-03 2010-04-20 Open Text Corporation Systems and methods for collaboration
US7584220B2 (en) * 2004-10-01 2009-09-01 Microsoft Corporation System and method for determining target failback and target priority for a distributed file system
US8429192B2 (en) * 2004-12-02 2013-04-23 International Business Machines Corporation System and method for supporting a plurality of access control list types for a file system in an operating system
US8549149B2 (en) 2004-12-30 2013-10-01 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing
US8706877B2 (en) 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US7810089B2 (en) 2004-12-30 2010-10-05 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8700695B2 (en) 2004-12-30 2014-04-15 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
US7664788B2 (en) * 2005-01-10 2010-02-16 Microsoft Corporation Method and system for synchronizing cached files
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
US7568220B2 (en) * 2005-04-19 2009-07-28 Cisco Technology, Inc. Connecting VPN users in a public network
US8984636B2 (en) * 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US20070028291A1 (en) 2005-07-29 2007-02-01 Bit 9, Inc. Parametric content control in a network security system
US8272058B2 (en) * 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
US7895651B2 (en) * 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US20070038884A1 (en) * 2005-08-10 2007-02-15 Spare Backup, Inc. System and method of remote storage of data using client software
US7805602B1 (en) 2005-11-10 2010-09-28 Cisco Technology, Inc. Prioritized call admission control for internet key exchange
US7921184B2 (en) 2005-12-30 2011-04-05 Citrix Systems, Inc. System and method for performing flash crowd caching of dynamically generated objects in a data communication network
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
US7743026B2 (en) * 2006-01-31 2010-06-22 Microsoft Corporation Redirection to local copies of server-based files
US7814501B2 (en) * 2006-03-17 2010-10-12 Microsoft Corporation Application execution in a network based environment
US20080022392A1 (en) * 2006-07-05 2008-01-24 Cisco Technology, Inc. Resolution of attribute overlap on authentication, authorization, and accounting servers
US7571594B2 (en) * 2006-07-28 2009-08-11 Milliken & Company Composite yarn and process for producing the same
GB2442285A (en) * 2006-09-07 2008-04-02 Fujin Technology Plc A distributed file system
US9141627B2 (en) * 2006-09-26 2015-09-22 Sony Corporation Providing a user access to data files distributed in a plurality of different types of user devices
US7734733B1 (en) * 2007-06-15 2010-06-08 Packeteer, Inc. WAFS disconnected-mode read-write access
US8346966B1 (en) * 2007-07-19 2013-01-01 Blue Coat Systems, Inc. Transparent file system access for wide area network file system acceleration
US20090037915A1 (en) * 2007-07-31 2009-02-05 Rothman Michael A Staging block-based transactions
US8862689B2 (en) 2007-10-24 2014-10-14 International Business Machines Corporation Local flash memory and remote server hybrid continuous data protection
US9135284B1 (en) 2008-03-13 2015-09-15 Blue Coat Systems, Inc. Composite execution of rename operations in wide area file systems
US9442850B1 (en) 2008-03-25 2016-09-13 Blue Coat Systems, Inc. Efficient directory refresh operations in wide area file systems
US8706878B1 (en) 2008-08-21 2014-04-22 United Services Automobile Association Preferential loading in data centers
US20100082546A1 (en) * 2008-09-30 2010-04-01 Microsoft Corporation Storage Tiers for Database Server System
US8495044B2 (en) * 2009-09-02 2013-07-23 Microsoft Corporation File system node updates
JP5483561B2 (ja) * 2010-02-25 2014-05-07 楽天株式会社 ストレージ装置、サーバ装置、ストレージシステム、データベース装置、データの提供方法、及び、プログラム
JP5717864B2 (ja) * 2010-11-16 2015-05-13 インテル・コーポレーション データ記憶システムに用いるエンドポイントキャッシュ
US9020992B1 (en) * 2010-12-09 2015-04-28 Symantec Corporation Systems and methods for facilitating file archiving
WO2012137262A1 (en) * 2011-04-08 2012-10-11 Hitachi, Ltd. Information processing system and data processing method
US8756509B2 (en) * 2011-07-27 2014-06-17 International Business Machines Corporation Visually representing and managing access control of resources
KR101175505B1 (ko) * 2011-10-06 2012-08-20 한화에스앤씨주식회사 N?스크린 환경에서 네트워크 기반 파일 시스템을 이용한 사용자 데이터 저장환경 제공 시스템
US9507800B2 (en) 2013-10-23 2016-11-29 Netapp, Inc. Data management in distributed file systems
US9575974B2 (en) * 2013-10-23 2017-02-21 Netapp, Inc. Distributed file system gateway
US9898520B2 (en) 2014-03-25 2018-02-20 Open Text Sa Ulc Systems and methods for seamless access to remotely managed documents using synchronization of locally stored documents
JP6506050B2 (ja) * 2015-03-02 2019-04-24 株式会社メガチップス 端末電子機器
US9591489B2 (en) 2015-07-09 2017-03-07 International Business Machines Corporation Controlling application access to applications and resources via graphical representation and manipulation
US9946719B2 (en) 2015-07-27 2018-04-17 Sas Institute Inc. Distributed data set encryption and decryption
US9703789B2 (en) 2015-07-27 2017-07-11 Sas Institute Inc. Distributed data set storage and retrieval
US10255180B2 (en) 2015-12-11 2019-04-09 Netapp, Inc. Server-based persistence management in user space
US20170255569A1 (en) * 2016-03-01 2017-09-07 Qualcomm Incorporated Write-allocation for a cache based on execute permissions
US10209907B2 (en) * 2016-06-14 2019-02-19 Microsoft Technology Licensing, Llc Secure removal of sensitive data
CN106250547A (zh) * 2016-08-12 2016-12-21 福建中金在线信息科技有限公司 一种控制红包的方法以及系统
US10031853B2 (en) 2016-09-15 2018-07-24 International Business Machines Corporation Unified in-memory cache
US11003632B2 (en) 2016-11-28 2021-05-11 Open Text Sa Ulc System and method for content synchronization
US11301431B2 (en) 2017-06-02 2022-04-12 Open Text Sa Ulc System and method for selective synchronization
US10824562B2 (en) 2018-01-09 2020-11-03 Hossein Asadi Reconfigurable caching
CN109634876A (zh) * 2018-12-11 2019-04-16 广东省新代通信与网络创新研究院 文件访问方法、装置及计算机可读存储介质
CN110489125B (zh) * 2019-07-29 2023-07-25 恩亿科(北京)数据科技有限公司 文件管理方法和计算机存储介质
CN115563075B (zh) * 2022-10-09 2023-05-30 电子科技大学 基于微内核的虚拟文件系统实现方法
CN115834713A (zh) * 2023-02-07 2023-03-21 北京大道云行科技有限公司 一种网络文件系统与分布式文件系统的交互方法及系统

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2196764A (en) * 1986-10-30 1988-05-05 Apple Computer Hierarchical file system
JPS63142643A (ja) * 1986-12-05 1988-06-15 Hitachi Ltd 半導体装置
US4887204A (en) * 1987-02-13 1989-12-12 International Business Machines Corporation System and method for accessing remote files in a distributed networking environment
US5175852A (en) 1987-02-13 1992-12-29 International Business Machines Corporation Distributed file access structure lock
JPS63204437A (ja) * 1987-02-13 1988-08-24 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン ロック・システム
US5202971A (en) 1987-02-13 1993-04-13 International Business Machines Corporation System for file and record locking between nodes in a distributed data processing environment maintaining one copy of each file lock
US5151989A (en) * 1987-02-13 1992-09-29 International Business Machines Corporation Directory cache management in a distributed data processing system
BR8800290A (pt) * 1987-02-13 1988-09-06 Ibm Metodos de obtencao de imagem unica de sistema
US5136692A (en) 1987-02-13 1992-08-04 International Business Machines Corporation Memory disk buffer manager
US4897781A (en) 1987-02-13 1990-01-30 International Business Machines Corporation System and method for using cached data at a local node after re-opening a file at a remote node in a distributed networking environment
WO1989002129A1 (en) * 1987-09-04 1989-03-09 Digital Equipment Corporation Session control in network for digital data processing system which supports multiple transfer protocols
US4888681A (en) 1987-10-19 1989-12-19 International Business Machines Corporation Space management system for data files having shared access
US5077658A (en) 1987-10-19 1991-12-31 International Business Machines Corporation Data access system for a file access processor
US5253342A (en) 1989-01-18 1993-10-12 International Business Machines Corporation Intermachine communication services
JPH02217941A (ja) * 1989-02-20 1990-08-30 Canon Inc ネットワーク管理システム
US5210824A (en) * 1989-03-03 1993-05-11 Xerox Corporation Encoding-format-desensitized methods and means for interchanging electronic document as appearances
US5113519A (en) * 1989-05-15 1992-05-12 International Business Machines Corporation Maintenance of file attributes in a distributed data processing system
US5305440A (en) * 1989-05-15 1994-04-19 International Business Machines Corporation File extension by clients in a distributed data processing system
US5261051A (en) * 1989-08-14 1993-11-09 Microsoft Corporation Method and system for open file caching in a networked computer system
JP2871755B2 (ja) * 1989-11-17 1999-03-17 富士通株式会社 ダイナミック・ハッシュにおけるスプリット制御方法
JP2575543B2 (ja) * 1990-04-04 1997-01-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 同時アクセス管理方法
AU631749B2 (en) * 1990-09-14 1992-12-03 Digital Equipment Corporation System and method for communication between windowing environments
US5222242A (en) 1990-09-28 1993-06-22 International Business Machines Corp. System for locating a node containing a requested resource and for selectively verifying the presence of the resource at the node
EP0501613A3 (en) * 1991-02-28 1993-09-01 Hewlett-Packard Company Heterogeneous software configuration management apparatus
JP2636969B2 (ja) * 1991-03-04 1997-08-06 富士通株式会社 ファイルシステムの処理装置
US5227778A (en) 1991-04-05 1993-07-13 Digital Equipment Corporation Service name to network address translation in communications network
US5305389A (en) * 1991-08-30 1994-04-19 Digital Equipment Corporation Predictive cache system
JPH05189291A (ja) * 1992-01-14 1993-07-30 Matsushita Electric Ind Co Ltd ネットワークファイルシステム管理装置
US5313638A (en) * 1992-03-24 1994-05-17 International Business Machines Corp. Method using semaphores for synchronizing communication between programs or processes resident in a computer system
US5287507A (en) * 1992-03-27 1994-02-15 Sun Microsystems, Inc. Method and apparatus for portable object handles that use local caches
US5434974A (en) 1992-03-30 1995-07-18 International Business Machines Corporation Name resolution for a multisystem network
JPH05334167A (ja) * 1992-05-28 1993-12-17 Matsushita Electric Ind Co Ltd ネットワークファイルシステム管理装置
US5235642A (en) 1992-07-21 1993-08-10 Digital Equipment Corporation Access control subsystem and method for distributed computer system using locally cached authentication credentials
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
M.Satyanarayanan, Y.Kistler et al. Coda: A Highlu Available File System for a Distributed Workstation Enviroument. IEEE Transaction on Computers. Vol. 39, № 4, April 1990, p.447 - 459. *
Y.Kistler and M.Satyanarayanan. Disconnected Operation in the Coda File System. ACM Transactions on Computer Systems. Vol 10, № 1, February 1992, p.3-25. *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8938062B2 (en) 1995-12-11 2015-01-20 Comcast Ip Holdings I, Llc Method for accessing service resource items that are for use in a telecommunications system
US7729919B2 (en) 2003-07-03 2010-06-01 Microsoft Corporation Combining use of a stepwise markup language and an object oriented development tool
US8473634B2 (en) 2003-10-23 2013-06-25 Microsoft Corporation System and method for name resolution
US9639554B2 (en) 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
US10303650B2 (en) 2004-12-17 2019-05-28 Microsoft Technology Licensing, Llc Contiguous file allocation in an extensible file system
US10614032B2 (en) 2004-12-17 2020-04-07 Microsoft Technology Licensing, Llc Quick filename lookup using name hash
US9336231B2 (en) 2004-12-17 2016-05-10 Microsoft Technology Licensing, Llc Extensible file system
US9575988B2 (en) 2004-12-17 2017-02-21 Microsoft Technology Licensing, Llc Extensible file system
US10474641B2 (en) 2004-12-17 2019-11-12 Microsoft Technology Licensing, Llc Extensible file system
RU2449351C2 (ru) * 2006-05-16 2012-04-27 Нокиа Корпорейшн Кэширование по правилам для пакетного переноса данных
US9558223B2 (en) 2006-05-23 2017-01-31 Microsoft Technology Licensing, Llc Extending cluster allocations in an extensible file system
US10585868B2 (en) 2006-05-23 2020-03-10 Microsoft Technology Licensing, Llc Extending cluster allocations in an extensible file system
RU2449358C1 (ru) * 2008-08-04 2012-04-27 ЗетТиИ Корпорейшн Распределенная файловая система и способ управления согласованностью блоков данных в такой системе
RU2544777C2 (ru) * 2009-04-24 2015-03-20 Майкрософт Корпорейшн Динамическое размещение данных точных копий
US9191505B2 (en) 2009-05-28 2015-11-17 Comcast Cable Communications, Llc Stateful home phone service
RU2527736C2 (ru) * 2009-12-16 2014-09-10 Телефонактиеболагет Л М Эрикссон (Пабл) Способ, сервер, компьютерная программа и компьютерный программный продукт для кэширования
RU2653278C2 (ru) * 2012-08-03 2018-05-07 ЗэтТиИ Корпорейшн Способ и устройство хранения для распределенной файловой системы
RU2617631C2 (ru) * 2015-09-30 2017-04-25 Акционерное общество "Лаборатория Касперского" Способ обнаружения работы вредоносной программы, запущенной с клиента, на сервере

Also Published As

Publication number Publication date
PL316565A1 (en) 1997-01-20
KR0170561B1 (ko) 1999-03-30
ATE177223T1 (de) 1999-03-15
JPH07262074A (ja) 1995-10-13
HU9602443D0 (en) 1996-11-28
PL176975B1 (pl) 1999-08-31
EP0749602A1 (en) 1996-12-27
BR9500819A (pt) 1995-11-07
KR950027577A (ko) 1995-10-18
DE69416875T2 (de) 1999-10-07
CA2142797A1 (en) 1995-09-08
DE69416875D1 (de) 1999-04-08
EP0749602B1 (en) 1999-03-03
HU219996B (hu) 2001-10-28
CZ260296A3 (en) 1997-12-17
CN1121216A (zh) 1996-04-24
CN1132109C (zh) 2003-12-24
US6119151A (en) 2000-09-12
HUT75264A (en) 1997-05-28
JP2705006B2 (ja) 1998-01-26
WO1995024685A1 (en) 1995-09-14
CA2142797C (en) 2005-04-12

Similar Documents

Publication Publication Date Title
RU2170454C2 (ru) Система и способ эффективного использования кэш-памяти в распределенной файловой системе
JP3062070B2 (ja) 分散ファイル・システム用マルチレベル・トークン管理のためのシステムおよび方法
US7115919B2 (en) Storage system for content distribution
JP2948496B2 (ja) データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法
US7430570B1 (en) Shadow directory structure in a distributed segmented file system
US6389420B1 (en) File manager providing distributed locking and metadata management for shared data access by clients relinquishing locks after time period expiration
US6678700B1 (en) System of and method for transparent management of data objects in containers across distributed heterogenous resources
US7185032B2 (en) Mechanism for replicating and maintaining files in a space-efficient manner
US20080235300A1 (en) Data migration processing device
JP4919851B2 (ja) ファイルレベルの仮想化を行う中間装置
US20090063556A1 (en) Root node for carrying out file level virtualization and migration
US20120059799A1 (en) Managing objects for a data file
US20100299306A1 (en) Storage system having file change notification interface
US6711559B1 (en) Distributed processing system, apparatus for operating shared file system and computer readable medium
JP2004280283A (ja) 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法
JPH04246742A (ja) 異なるファイル・システムにまたがる記憶管理システム
JPH1031612A (ja) 高度ファイル・サーバ
JP2002082775A (ja) 計算機システム
US7921093B2 (en) Information processing apparatus and information processing method
JP2004318288A (ja) データ処理方法および装置ならびにその処理プログラム
Dechamboux et al. The Arias distributed shared memory: An overview
JP2830826B2 (ja) 分散ファイルの同期システムと方法
US8850132B1 (en) Method and system for providing a shared data resource coordinator within a storage virtualizing data processing system
JPS63205742A (ja) データ処理システム及び方法
Dyade The Arias Distributed Shared Memory: an Overview

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20041228