Область изобретения
Настоящее изобретение относится к системе и способу управления иерархической памятью во включенной в сеть компьютерной системе. Конкретнее, настоящее изобретение относится к способу автоматического и прозрачного перемещения данных из служебного файлового процессора во вспомогательное запоминающее устройство.
Существующий уровень техники
Системы управления данными на основе сервера становятся стандартным учрежденческим оборудованием, и быстро возрастает потребность в управлении данными. Сегодня многие служащие в больших корпорациях имеют персональный компьютер (ПК) или рабочую станцию, которая соединена с другими компьютерами по локальной вычислительной сети (ЛВС).
ЛВС в общем случае включает в себя множество компьютерных систем, таких как компьютерные рабочие станции, которые соединены вместе для совместного использования данных и ресурсов, таких как общая память и/или принтер. ЛВС часто включает в себя служебные файловые процессоры, обеспечивающие сетевое обслуживание. Служебный файловый процессор представляет собой в общем случае узел, например компьютер, в компьютерной сети, который обеспечивает компьютерным терминалам в сети обслуживание с помощью управления совместно используемым ресурсом. К примеру, служебный файловый процессор может управлять набором запоминающих дисков и обеспечивать обслуживание по хранению и архивированию компьютерным терминалам в сети, не имеющим собственных дисков, или имеющим данные, которые требуется хранить во внешней памяти.
Потребности ЛВС в памяти растут с ошеломляющей скоростью. Многие сегодняшние серверы оперируют с гигабайтами данных. Кроме того, способность хранить и защищать данные стала критическим вопросом для многих сетевых пользователей. Наиболее общий путь защиты данных состоит в том, чтобы держать их более чем в одном месте. Системы управления данными на основе сервера, такие как система ARCserve® управления данными, обеспечивает резервирование и защиту данных в служебном файловом процессоре ЛВС и/или компьютерных системах, подключенных к ЛВС.
Однако просто обеспечить резервирование и хранение данных из компьютерной сети недостаточно. В частности, внешнему хранению данных надлежит быть автоматическим, оптимальным и прозрачным для сетевого пользователя. Одним методом для обеспечения эффективного внешнего запоминания данных из компьютерной сети является управление иерархической памятью (УИП).
УИП включает в себя запоминание данных компьютерной сети, внешних для служебного файлового процессора в иерархии вторичных и, возможно, третичных запоминающих устройств. Внешние запоминающие устройства являются в общем случае запоминающими устройствами большой емкости, такими как оптическое с однократной записью, перезаписываемое оптическое и магнитная лента. К примеру, оптическое запоминающее устройство и привод магнитной ленты могут быть соединены со служебным файловым процессором как вторичное и третичное запоминающие устройства соответственно. На основе установленного приложением УИП критерия данные, запомненные в служебном файловом процессоре, могут перемещаться в оптическое запоминающее устройство и - на основе выбираемого критерия - перемещаться далее на привод ленты.
К примеру, в качестве критерия для перемещения данных из служебного файлового процессора во вторичное и третичное запоминающие устройства может применяться частота использования данных. За счет перемещения данных, которые используются или выбираются нечасто, можно освободить пространство в служебном файловом процессоре, хотя пользователи продолжают поиск файлов, как если бы они все еще оставались в служебном файловом процессоре. Перемещение относится к передвижению данных из служебного файлового процессора в иерархию памяти (например, внешние запоминающие устройства). Обратное перемещение относится к извлечению данных из иерархии памяти в служебный файловый процессор.
Для получения оптимальной выгоды от приложения УИП вторичное или третичное запоминающие устройства упорядочены в иерархической компоновке для хранения данных. Таким образом, файл данных, который остается в сетевом служебном файловом процессоре в течение заранее заданного периода времени, может переместиться сначала во вторичное запоминающее устройство, которое предназначено для времени относительно частых откликов, когда к файлу обращается сетевой служебный файловый процессор. Если файл данных остается в оптическом запоминающем устройстве в течение заранее заданного периода времени без обращения к нему служебного файлового процессора, то этот файл данных может переместиться далее, в соответствии с иерархией памяти, в запоминающее устройство на магнитной ленте, которое имеет относительно медленное время отклика по сравнению с оптическим запоминающим устройством. Таким образом, система управления иерархической памятью предназначена для более эффективного способа хранения файлов данных сетевой компьютерной системы на основе стоимости, скорости и емкости иерархии запоминающих устройств.
Когда файл перемещается из служебного файлового процессора, исходный файл представляется в служебном файловом процессоре как фиктивный файл, называемый также фантомным файлом или надгробием. Фиктивный файл представляет исходный файл, используя минимальное физическое пространственное размещение, тем самым освобождая как можно больше места в файловом средстве. Фиктивный файл, однако, должен также как можно точнее представлять свойства исходного файла, например размер файла, дату создания, дату последнего обращения, или некоторые признаки, такие как защищенный от записи файл. Но в зависимости от конкретного выполнения УИП, которое осуществляет перемещение, размер файла не представляется точно. Наоборот, фиктивный файл, остающийся в служебном файловом процессоре, имеет размер 0,422 или 1000 байтов независимо от действительной длины исходного файла. К примеру, 100-мегабайтовый файл может быть перемещен из сетевого служебного файлового процессора во внешнее запоминающее устройство, а оставленный в служебном файловом процессоре фиктивный файл в общем случае будет иметь размер 0,422 или 1000 байтов.
Таким образом, известные выполнения перемещений могут снизить физическое пространственное размещение служебного файлового процессора путем использования фиктивных файлов для представления перемещенного файла, но известные способы перемещения неточно представляют действительные свойства исходного файла. Точность представления, особенно размер исходного файла представляет собой важную информацию для любого приложения, где используется размер файла. К примеру, некоторые программные приложения ЛВС пытаются обеспечить статистический анализ количества данных, которыми обладает служебный файловый процессор, либо выполнить некоторые заказные функции на основании размеров конкретных файлов, достигающих заранее заданной величины. Если перемещенные файлы имеют неточное представление, этот анализ или заказные функции не могут быть выполнены должным образом. Кроме того, команда DIR операционной системы например, выдаст пользователю неверный размер файла и приведет пользователя к путанице относительно действительного размера файла. Аналогично, команда COPY операционной системы может показать 1000-байтовый размер для перемещенного файла, который в действительности составляет 2 мегабайта, тем самым заставляя пользователя пытаться скопировать этот файл на дискету, которая слишком мала для этого.
Выполнение УИП в общем случае специализировано для конкретных операционных систем ЛВС. К примеру, операционная система NetWare® компании NOVELL® используется во многих системах ЛВС. Существует несколько версий операционной системы NetWare®, включая версии 3.х и 4.х.
К примеру, в версии 4.х операционной системы NetWare® включено средство Перемещение Данных в Реальном Времени (ПДРВ). При использовании этого средства содержимое файла в служебном файловом процессоре NetWare® (например, в служебном файловом процессоре, работающем в операционной системе NetWare®) может быть перемещено во вторичное запоминающее устройство с компонентом файлового каталога, представляющим перемещенный файл оставленным в служебном файловом процессоре. Этот компонент файлового каталога пуст и, таким образом, не занимает физического пространства в служебном файловом процессоре NetWare®. Кроме того, этот компонент файлового каталога будет указывать правильные свойства перемещенного файла, включая действительный размер этого перемещенного файла. Когда перемещенный файл запрашивается служебным файловым процессором, файл будет автоматически извлекаться в служебный файловый процессор.
Таким образом, ПДРВ версии 4.х операционной системы NetWare® обеспечивает инструмент для автоматического и прозрачного перемещения файлов из объема NetWare® во вторичное хранилище, сохраняя при этом точные компоненты каталога в исходном объеме NetWare® для перемещенных файлов. С другой стороны, версии 3. х операционной системы NetWare®, к примеру, не обеспечивают функциональных возможностей перемещения. Соответственно, продавцы программного обеспечения должны создавать функцию перемещения данных для служебных файловых процессоров версий 3.х операционной системы NetWare®. Однако известные приложения перемещения не обеспечивают компоненты каталога в служебном файловом процессоре, которая является точным представлением перемещенного файла; в зависимости от приложения остающаяся компонента каталога будет фиктивным файлом, имеющим размер 0,422 или 1000 байтов, вместо действительного размера перемещенного файла.
Цель настоящего изобретения состоит в том, чтобы обеспечить перемещение данных из, к примеру, служебного файлового процессора версий 3.х операционной системы NetWare®, которое исключает использование фиктивного файла, не дающего точного представления размера перемещенного файла. Другая цель настоящего изобретения состоит в обеспечении перемещения и обратного перемещения файла, которые абсолютно прозрачны для пользователя.
Раскрытие изобретения
Система и способ согласно настоящему изобретению используют известное средство операционных систем - разреженный файл - для представления перемещенного файла. Разреженный файл представляет собой файл, который имеет физический размер (например, физическое размещение) меньше, чем его логический, или кажущийся, размер. Разреженный файл, таким образом, минимизирует физическое пространство, занимаемое файлом, сохраняя при этом действительные свойства файла, такие как размер и дата создания. Разреженный файл может также удалить все блоки данных исходного файла и определяться как имеющий файловый размер, равный исходному файлу, точно представляя, таким образом, исходный файл и не занимая при этом практически никакого пространства.
В соответствии с системой и способом настоящего изобретения, когда файл перемещается из служебного файлового процессора в запоминающую среду, этот подлежащий перемещению файл заменяется в служебном файловом процессоре разреженным файлом, определенным как имеющий те же самые логический размер и признаки, что и исходный файл. Разреженный файл, однако, занимает лишь минимальное пространство, требуемое для хранения файла, например один блок данных. Ключевая информация перемещения запоминается в разреженном файле так, чтобы служебный файловый процессор мог извлечь перемещенный файл, когда он запрашивается пользователем. Когда пользователь запрашивает перемещенный файл, этот файл представляется остающимся в служебном файловом процессоре с действительными свойствами файла и автоматически и прозрачно переносится обратно в служебный файловый процессор из вторичной или третичной запоминающей среды. Таким образом, настоящее изобретение исключает использование фиктивного файла, имеющего заранее заданный и неточный размер для представления перемещенного файла.
Краткое описание чертежей
Фиг.1 показывает систему локальной вычислительной сети, использующую систему управления иерархической памятью согласно настоящему изобретению.
Фиг.2 представляет собой иллюстративную блок-схему алгоритма способа перемещения данных в реальном времени, использующего разреженные файлы согласно настоящему изобретению.
Фиг. 3 представляет собой иллюстративную блок-схему алгоритма способа согласно настоящему изобретению для перемещения данных в реальном времени с использованием разреженных файлов согласно настоящему изобретению.
Фиг.4А показывает файл данных, имеющий логический размер.
Фиг. 4В показывает обычное представление разреженного файла для файла, показанного на фиг.4А.
Фиг. 4С показывает представление разреженного файла для файла, показанного на фиг.4А, согласно настоящему изобретению.
Подробное описание изобретения
Фиг.1 представляет систему 1 ЛВС, включающую в себя систему 2 УИП согласно настоящему изобретению. Система 2 УИП обеспечивает возможности УИП, например, для среды версий 3.х операционной системы NetWare® и включает в себя служебный файловый процессор 10, именуемый также первичным запоминающим устройством, связанный со вторичным запоминающим устройством 20. Вторичное запоминающее устройство 20 связано далее с третичным запоминающим устройством 30. За счет оптимального использования служебного файлoвого процессора 10, вторичного запоминающего устройства 20 и третичного запоминающего устройства 30 система 2 УИП может автоматически и прозрачно запоминать иерархически, например, гигабайты данных.
Система 1 ЛВС имеет, к примеру, архитектуру клиент - сервер. Клиент представляет собой, например, множество рабочих станций 40, связанных со служебным файловым процессором 10. Рабочая станция 40 включает в себя, к примеру, основанную на микропроцессоре компьютерную систему. По меньшей мере одна из рабочих станций 40 обеспечивает интерфейс для пользователя, чтобы устанавливать критерии перемещения для перемещения данных из служебного файлового процессора 10. Серверная сторона включает в себя служебный файловый процессор 10, имеющий машину 11 перемещения, которая обеспечивает услугу прозрачного перемещения данных из служебного файлового процессора 10 и услугу обратного перемещения в служебный файловый процессор 10.
Машина 11 перемещения, к примеру, периодически просматривает и опознает неактивные файлы согласно заранее заданным критериям. Если файлы опознаны для перемещения, эти файлы перемещаются во вторичную иерархию системы 2 УИП, что дает в результате дополнительное запоминающее пространство для активных файлов в служебном файловом процессоре 10. Система 2 УИП затем управляет перемещенными файлами в иерархии памяти до тех пор, пока не достигается наинизший уровень иерархии памяти.
Согласно фиг. 1 серверная сторона включает в себя, к примеру, три различных модуля. Первый модуль представляет собой служебный файловый процессор 10, из которого желательно передвинуть заранее выбранные файлы, такие как нечасто запрашиваемые файлы, в менее дорогие запоминающие устройства. Второй модуль представляет собой вторичное запоминающее устройство 20, такое как Оптическая Ступень, которое поддерживает оптическое запоминающее устройство. Оптическая Ступень может быть в том же самом или отличающемся сервере операционной системы NetWare®, что и служебный файловый процессор 10. Третий модуль представляет собой третичное запоминающее устройство 30, такое как Ступень Магнитной Ленты, которая поддерживает блок обмена на магнитной ленте. Ступень Магнитной Ленты может быть в том же самом или отличающемся сервере операционной системы NetWare®, что и служебный файловый процессор 10 или Оптическая Ступень 20. Второй и третий модули вместе образуют иерархию памяти. В общем случае каждая ступень в иерархии памяти является однородным собранием запоминающих сред, например все среды в ступени имеют одинаковые физические свойства. Связь между ступенями осуществляется через собственный протокол связи операционной системы NetWare®, такой как IPX, SPX, TLI или TCP/IP. Кроме того, по желанию ко вторичному запоминающему устройству 20 и третичному запоминающему устройству 30, показанным на фиг.1, могут быть добавлены дополнительные ступени запоминания в систему УИП.
Оптическое запоминающее устройство 20, такое как Перезаписываемое Оптическое устройство, в общем случае имеет время обращения в диапазоне 5-10 секунд, поскольку запоминающая среда является удаляемой и обычно требует установки в дисковод и раскрутки перед тем, как к ней можно обратиться. Для автоматической работы оптической памяти может использоваться оптический автомат; в противном случае оператор должен вручную обслуживать запросы на загрузку сред. Запоминающее устройство 30 на магнитной ленте, такое как Привод 8-миллиметровой Ленты компании Hewlett-Packard, может иметь время обращения в несколько минут, поскольку запоминающая среда является удаляемой и обычно требует установки в привод перед тем, как к ней можно обратиться. Для автоматической работы может использоваться автоматическое устройство смены лент; в противном случае оператор должен вручную обслуживать запросы на загрузку сред.
Каждая ступень в примерной иерархии памяти, показанной на фиг.1, управляется средствами 21, 31 перемещения ступени соответственно. Средства 21, 31 перемещения ступени включают в себя, к примеру, вспомогательную программу, постоянно находящуюся в служебном файловом процессоре 10 или в отдельном служебном файловом процессоре. Средства 21, 31 перемещения ступени размещены в служебном файловом процессоре, который связан с их соответствующими вторичным запоминающим устройством 20 и третичным запоминающим устройством 30. Как показано на фиг.1, средство 21 перемещения ступени размещено в служебном файловом процессоре 15, а средство 31 перемещения ступени размещено в служебном файловом процессоре 16. Каждое средство 21, 31 перемещения ступени, к примеру, управляет перемещением файлов, извлекает файлы по запросу и перемещает файлы в следующую ступень в иерархии памяти в соответствии с правилами иерархии памяти. Т. к. каждая ступень иерархии памяти имеет средство перемещения ступени, эта иерархия памяти может быть распределена, благодаря чему снижается рабочая нагрузка на служебный файловый процессор 10 через, например, служебные файловые процессоры 15 и 16.
Пользователь системы 1 ЛВС может установить, к примеру, системное задание перемещения для всего служебного файлового процессора 10, который будет периодически осуществлять просмотр для поддержания дисковой памяти в служебном файловом процессоре 10 в приемлемых пределах. Пользователь имеет также возможность осуществлять задания на перемещение по требованию и для конкретного случая или задания обратного перемещения. Все файлы из любого служебного файлового процессора 10 должны, однако, перемещаться в ту же самую иерархию памяти.
Для системного задания перемещения, т.е. перемещения данных из служебного файлового процессора 10, пользователю необходимо указать файлы/каталоги, которые являются кандидатами для перемещения. Способ выбора может быть указан пользователем согласно различным критериям. Например, параметрические переменные для перемещения данных могут включать в себя переменные данных, заранее заданные фильтры или отметки уровня, которые основаны на доступности запоминания в конкретном устройстве.
Параметрические переменные данных задаются для перемещения файлов из служебного файлового процессора 10 на основании, к примеру, данных о том, когда было последнее обращение к файлу, данных о том, когда было последнее обновление файла, или даты создания этого файла. Заранее заданные фильтровые параметрические переменные задаются для перемещения файлов из служебного файлового процессора 10 на основании, к примеру, сопоставления с образцом для имени файла, признака файла (например, системный файл, доступный лишь для чтения файл) или заранее заданного размера файла. Параметрические переменные отметок уровня задаются для перемещения файлов из служебного файлового процессора 10 на основании величины пространства памяти, доступного на конкретном запоминающем устройстве.
При использовании параметров отметок уровня, к примеру, система 2 УИП может перемещать файлы из служебного файлового процессора 10 во вторичное запоминающее устройство 20, когда пространство памяти, доступное в служебном файловом процессоре 10, достигает отметки критического уровня, на которой немедленно осуществляется аварийное перемещение в соответствии с заранее заданными критериями перемещения, чтобы избежать ситуации "заполнения объема". Файлы будут затем перемещаться до тех пор, пока доступное пространство памяти не достигнет отметки высокого уровня (например, безопасного уровня). Отметка высокого уровня определяется, к примеру, как проценты от используемого пространства в служебном файловом процессоре 10. Когда используемое пространство ниже отметки критического уровня и выше отметки высокого уровня, файлы будут перемещаться на заранее заданное время, к примеру, на основании наименьшего числа обращений в последнее время до тех пор, пока не достигается отметка низкого уровня. Отметка низкого уровня также определяется, к примеру, как проценты от используемого пространства в служебном файловом процессоре 10. Когда используемое пространство ниже отметки низкого уровня, никакого перемещения из служебного файлового процессора 10 не происходит.
Параметры для опознавания файлов, подлежащих перемещению из служебного файлового процессора 10, могут по желанию объединяться пользователем. Когда пользователь устанавливает системное задание перемещения, он также может определить, должно ли выполняться дальнейшее перемещение, например, из вторичного запоминающего устройства 20 в третичное запоминающее устройство 30. Кроме того, пользователь может определить период времени, в течение которого перемещенный файл должен оставаться в запоминающем устройстве перед тем, как осуществить дальнейшее перемещение.
Когда файл, постоянно находящийся в служебном файловом процессоре 10, опознается для перемещения в иерархию памяти системы 2 УИП, выполняется способ согласно настоящему изобретению, представленный блок-схемой алгоритма на фиг.2. Как показано на фиг.2, процесс начинается на шаге S0, когда машина 11 перемещения генерирует команду переместить файл из служебного файлового процессора 10. На шаге S1 подлежащий перемещению файл открывается, а на шаге S2 этот файл считывается. На шаге S3 копия блоков данных подлежащего перемещению файла передается во вторичное запоминающее устройство 20. Средство 21 перемещения ступени возвращает ключ перемещения машине 11 перемещения, указывая местоположение перемещенного файла.
После того как файл передан во вторичное запоминающее устройство 20, исходный файл, который все еще остается в служебном файловом процессоре 10, отбрасывается на шаге S4. Отбрасывание исходного файла на шаге S4 освобождает блоки данных исходного файла, так что эти блоки данных становятся доступны для перераспределения служебным файловым процессором 10. В этой точке исходный файл имеет физическое размещение, к примеру, равное нулю блоков данных из-за перераспределения на шаге S4. Кроме того, действительные свойства исходного файла запоминаются машиной 11 перемещения. На шаге S5 ключ перемещения записывается в исходный файл, который теперь является разреженным файлом, имеющим физическое размещение размером, например, в один блок данных, содержащий ключ перемещения. Таким образом, физическое размещение разреженного файла меньше, чем логический размер исходного файла. На шаге S6 машина 11 перемещения определяет исходный файл как имеющий логический размер, равный действительному файловому размеру исходного файла, тем самым создавая разреженный файл с физическим размещением размером в один блок, но с логическим размером, равным местоположению исходного файла. Процесс перемещения завершается на шаге S7, когда машина 11 перемещения выходит из процесса перемещения.
Обычная работа разреженного файла иллюстрируется на фиг.4А и 4В. Файл, имеющий размер в n блоков данных (блоки 0-n), только некоторые из которых содержат данные, показан на фиг.4А. Например, блоки 0, 4, 7, 10 и n данных показаны на фиг.4А содержащими данные. Файл, показанный на фиг.4В, является разреженным файлом, который представляет файл на фиг.4А. Файл на фиг.4В имеет физический размер, к примеру, в пять блоков данных, представляющих только занятые данными блоки фиг.4А. Таким образом, разреженный файл обеспечивает способ создания файла с физическим размером, который намного меньше, чем его логический размер, тем самым предотвращая избыток пространства памяти в служебном файловом процессоре 10.
Для создания разреженного файла, показанного на фиг.4В, компьютерный программист задает специальные команды, когда создает файл, которые распознаются операционной системой системы 1 ЛВС. Например, версия 3.х операционной системы NetWare® компании Novell® интерпретирует команду SEEK так, чтобы не размещать блоки данных между адресами SEEK. В противоположность этому, другие операционные системы обращаются с командой SEEK так, чтобы размещать блоки данных между адресами SEEK. Шаги, показанные ниже в таблице 1, представляют собой примерные шаги, которые могут выполняться для создания разреженного файла, представленного на фиг.4В:
Таблица 1
а) Открыть файл
б) Искать блок 0 данных
в) Записать данные блока 0 данных
г) Искать блок 4 данных
д) Записать данные блока 4 данных
е) Искать блок 7 данных
ж) Записать данные блока 7 данных
з) Искать блок 10 данных
и) Записать данные блока 10 данных
к) Искать блок n данных
л) Записать данные блока n данных
м) Закрыть файл
Соответственно, шаги, показанные в таблице 1, интерпретируются версией 3. х операционной системы NetWare® компании Novell®, чтобы размещать только блоки данных, в которых имеется запись, - таким образом создается разреженный файл, имеющий лишь пять блоков данных, представляющих занятые блоки 0, 4, 7, 10 и n данных. Разреженный файл указывает свой действительный размер, но, будучи запрошен пользователем, этот файл выдается пользователю в виде, показанном на фиг.4А, т.е. имеющим физическое размещение с размером, равным его логическому размеру.
В соответствии с настоящим изобретением признак разреженного файла, к примеру признак разреженного файла в версии 3. х операционной системы NetWare® компании Novell®, используется для представления файла, который перемещен из служебного файлового процессора 10 без включения какого-либо из занятых блоков данных исходного файла. Таким образом, как показано на фиг. 4С, разреженный файл, имеющий только один блок данных, но определенный как имеющий логический размер, равный действительному размеру файла, показанного на фиг.4А, генерируется посредством способа согласно настоящему изобретению. Пунктирные линии, показанные на фиг.4С, указывают логический размер этого файла, для которого, однако, никакие блоки данных не размещены. Таблица 2 показывает примерные шаги для создания разреженного файла по фиг.4С:
Таблица 2
а) Открыть файл
б) Записать ключ перемещения
в) Искать действительный размер исходного файла
г) Записать "0"
д) Закрыть файл
В соответствии с настоящим изобретением признак разреженного файла операционной системы NetWare® компании Novell® используется для минимизации физического размещения, необходимого для представления перемещенного файла в служебном файловом процессоре 10, сохраняя при этом действительные свойства исходного файла. Соответственно, после того как исходный файл скопирован и послан во вторичное запоминающее устройство 20, а затем отброшен, остающийся в служебном файловом процессоре 10 файл может обрабатываться посредством примерных шагов, описанных в таблице 2. Шаг б), который реализует операцию "Искать действительный размер исходного файла", определяет разреженный файл как имеющий логический размер, равный физическому размеру исходного файла. Отбрасывание исходного файла, однако, снижает физический размер, занимаемый разреженным файлом в служебном файловом процессоре 10.
В дополнение к шагам, показанным в таблице 2, другой набор примерных шагов для создания разреженного файла согласно настоящему изобретению показан в таблице 3:
Таблица 3
а) Открыть файл
б) Записать ключ перемещения
в) Изменить размер на действительный размер файла
г) Закрыть файл
Операция "Изменить размер" может выполняться для определения логического размера разреженного файла, потому что после отбрасывания исходного файла в служебном файловом процессоре 10 отсутствуют блоки данных, на которые могла бы воздействовать операция "Изменить размер". Поэтому способ согласно настоящему изобретению использует известный признак операционной системы - разреженный файл - для представления перемещенного файла в служебном файловом процессоре 10, причем разреженный файл имеет минимальный физический размер, в то время как он определен как имеющий действительные свойства перемещенного файла.
Когда файл перемещен из служебного файлового процессора 10 в систему 2 УИП, файл извлекается при обратном перемещении в служебный файловый процессор 10. Обратное перемещение происходит, к примеру, когда пользователь обращается к перемещенному файлу, и служебный файловый процессор 10 запрашивает файл через машину 11 перемещения. Как показано на фиг.3, процесс обратного перемещения начинается на шаге S10, когда перемещенный файл запрашивается служебным файловым процессором 10.
На шаге S10A машина 11 перемещения считывает информацию ключа перемещения, запомненную в разреженном файле, для определения местоположения перемещенного файла. На шаге S10B машина 11 перемещения посылает ключ перемещения на средство 21 перемещения ступени. Средство 21 перемещения ступени использует ключ перемещения ступени для определения на шаге S10C того, расположен ли запрошенный файл во вторичном запоминающем устройстве 20 или перемещен дальше в третичное запоминающее устройство 30. Когда на шаге S10D файл находится, этот файл посылается служебному файловому процессору 10 через машину 11 перемещения. На шаге S11 машина 11 перемещения считывает данные запрошенного файла.
После того как данные из перемещенного файла считаны, разреженный файл открывается на шаге S12 машиной 11 перемещения. На шаге S13 содержимое исходного файла, извлеченного из системы 2 УИП, загружается в разреженный файл, преобразуя разреженный файл обратно в исходный файл, имеющий исходное физическое размещение. Таким образом, после шага S13 исходный файл снова постоянно находится в служебном файловом процессоре 10 в своем исходном виде (например, перед перемещением). Вдобавок пользователь не был осведомлен, что компонентой каталога служебного файлового процессора 10 был в действительности разреженный файл, не содержащий действительных данных исходного файла, но лишь ограниченную описательную информацию. Кроме того, обратное перемещение перемещенного файла является автоматическим и прозрачным для пользователя.
На шаге S14 информация ключа перемещения, хранившаяся до этого в разреженном файле, который более не существует в служебном файловом процессоре 10, а существует в иерархии памяти, потому что из этой иерархии памяти извлечена только копия исходного файла, запоминается, к примеру, в Расширенном Атрибуте (РА) операционной системы NetWare® компании Novell®. Если извлеченный файл не изменен и ранее опознан для перемещения, прежний ключ перемещения будет использоваться для предотвращения ненужной передачи данных в иерархию памяти, поскольку этот файл уже хранился во внешнем запоминающем устройстве. В этом случае в служебном файловом процессоре 10 будет создаваться только разреженный файл. На шаге S15 машина 11 перемещения выходит из процесса обратного перемещения.
Изобретение относится к способу управления иерархической памятью в компьютерной сети. Техническим результатом является обеспечение перемещения файла данных и его обратного перемещения в памяти компьютерной сети без использования фиктивного файла. Способ для перемещения данных в реальном времени в сетевой компьютерной системе использует признак операционной системы - разреженный файл - для представления перемещенного файла. Расширенный файл занимает минимальную величину физического пространства в служебном файловом процессоре, но определяется как имеющий те же размер и атрибуты, что и исходный файл. Когда пользователь обращается к перемещенному файлу, этот файл кажется постоянно присутствующим в служебном файловом процессоре и прозрачно возвращается в служебный файловый процессор из оптимизированного положения хранения в системе управления иерархической памятью. 7 з.п. ф-лы, 6 ил., 3 табл.
US 5276867 А, 04.01.1994 | |||
РЕЗЕРВИРОВАННАЯ СИСТЕМА | 1991 |
|
RU2010315C1 |
ТРЕХКАНАЛЬНАЯ АСИНХРОННАЯ СИСТЕМА | 1991 |
|
RU2029365C1 |
US 5317728 A, 31.05.1994 | |||
US 5333315 A, 26.07.1994. |
Авторы
Даты
2002-09-27—Публикация
1996-03-29—Подача