Сохранение на основе UVC

редактировать

Сохранение на основе UVC - это стратегия архивирования для обработки сохранения из цифровых объектов. В нем используется универсальный виртуальный компьютер (UVC) - виртуальная машина (VM), специально разработанная для архивных целей, что позволяет как эмулировать, так и миграция в язык -нейтральный формат, например XML.

Содержание
  • 1 Предпосылки разработки подхода UVC
    • 1.1 Проблема цифрового сохранения
    • 1.2 Эмуляция теория
    • 1.3 Разработка концепции UVC
      • 1.3.1 Роль IBM
      • 1.3.2 Роль Национальной библиотеки Нидерландов
  • 2 Сохранение на основе UVC
    • 2.1 Описание приложения
      • 2.1. 1 Архивирование данных
        • 2.1.1.1 Просмотр логических данных
        • 2.1.1.2 Схема (декодер формата)
        • 2.1.1.3 Схема для чтения схем (Схема логических данных (LDS))
      • 2.1.2 Программа архивирование
    • 2.2 Спецификация
      • 2.2.1 Концептуальная модель
      • 2.2.2 Что нужно сделать
        • 2.2.2.1 Во время архивирования
        • 2.2.2.2 Во время извлечения
    • 2.3 Соглашение UVC
    • 2.4 Система консервации
      • 2.4.1 Компоненты
      • 2.4.2 Описание метода
      • 2.4.3 Perf ormance
  • 3 Реализация
    • 3.1 UVC для изображений
  • 4 Эмуляция на основе UVC
    • 4.1 Сложные объекты / динамическое содержимое
    • 4.2 Альтернативные подходы к эмуляции
  • 5 Затраты
  • 6 Проблемы с авторскими правами
  • 7 Историческая шкала времени
  • 8 См. Также
  • 9 Ссылки
  • 10 Дополнительная литература
  • 11 Внешние ссылки
Предпосылки разработки подхода UVC

Проблема сохранения цифровых данных

Сохранение цифровых ресурсов имеет первостепенное значение для депозитарных библиотек, исследовательских библиотек, архивов, государственных учреждений и, фактически, большинства организаций. Преобладающий подход к сохранению цифровых данных - миграция. Миграция влечет за собой периодическое преобразование заархивированной информации в новые логические форматы в качестве их собственных форматов, либо программное или аппаратное обеспечение, от которого они зависят, устаревают. Заметная опасность миграции - это потеря данных и возможная потеря исходной функциональности или «внешнего вида» исходного формата. Кроме того, цифровая миграция требует много времени и затрат, поскольку процесс требует преобразования формата каждого документа в дополнение к копированию преобразованных потоков битов на новые носители, если это необходимо.

Теория эмуляции

Джефф Ротенберг вызвал некоторый переполох в организациях, заинтересованных и ответственных за цифровое хранение, своим докладом в 1999 году: «Избегая технологического зыбучих песков: поиск жизнеспособной технической основы для цифрового хранения». Он заявляет, что не существует жизнеспособных решений, гарантирующих, что цифровая информация будет доступна для чтения в будущем. Предлагаемые решения, основанные на стандартах и ​​миграции, считаются отнимающими много времени и в конечном итоге неспособными сохранить цифровые документы в их первоначальной форме. Он предлагает:

«идеальный подход должен обеспечивать единое, расширяемое, долгосрочное решение, которое можно раз и навсегда разработать и применять единообразно, автоматически и синхронно (например, при каждом следующем цикле обновления) для всех типов документов и всех носителей с минимальным вмешательством человека ».

Он предполагает, что лучший способ удовлетворить вышеуказанным критериям - это эмуляция с помощью; разработка эмулятора, который будет работать на неизвестных компьютерах будущего; разработка методов сбора метаданных, необходимых для поиска, доступа и воссоздания документа; разработка методов инкапсуляции документов, связанных с ними метаданных, программного обеспечения и спецификаций эмулятора.

В 2000 году он предлагает реализовать подход к сохранению на основе эмуляции, при котором спецификации эмулятора выражаются в виде программ и интерпретируются программой интерпретатора спецификации эмулятора, написанной для виртуальной машины эмуляции.

Подход Ротенберга был встречен скептически и сочтен слишком технически сложным, слишком дорогим и слишком трудоемким и, следовательно, экономическим риском (без поддержки эмпирических данных). (См. Раздел для дополнительного чтения)

Разработка концепции UVC

Роль IBM

Рэймонд А. Лори во время его работы в IBM Research Center Almaden, инициировал разработку решения на основе UVC для долгосрочного цифрового хранения. Он описывает этот подход как «универсальный», потому что его определение настолько базовое, что он будет существовать вечно, «виртуальный», потому что его никогда не нужно будет строить физически, и это «компьютер» по своим функциям.

IBM (Нидерланды), владелец активов UVC, продолжает развивать концепцию UVC в рамках проекта PLANETS. Раймонд ван Диссен отвечает за расширение применения концепции UVC для сохранения более сложных объектов.

Роль Национальной библиотеки Нидерландов

Национальная библиотека Нидерландов (Koninklijke Bibliotheek, KB) сыграла важную роль в демонстрации этой эмуляции на основе UVC. Concept - это жизнеспособный вариант для долгосрочного цифрового хранения.

В 2000 году защитник эмуляции Джефф Ротенберг участвовал в исследовании с KB, чтобы проверить и оценить возможность использования эмуляции в качестве долгосрочной стратегии сохранения. Его метод заключался в использовании программной эмуляции для воспроизведения поведения устаревших вычислительных платформ на новых платформах, предлагая способ запуска исходного программного обеспечения цифрового документа в далеком будущем, тем самым воссоздавая контент, поведение и «внешний вид» исходного документа.. Ротенберга критиковали за попытку сохранить неправильную вещь, предлагая имитировать поведение старых аппаратных платформ и операционных систем для доступа к исходным данным через исходное программное обеспечение, связанное с ними. Раймонд А. Лори осознал трудности в попытке создать программу, имитирующую «настоящую» машину на будущей платформе, и понял, что такой подход был излишним с точки зрения сохранения цифровых объектов. Вместо этого он представил новый подход к архивированию данных / программ с использованием «универсального виртуального компьютера». Концепция стратегии сохранения на основе UVC была реализована KB и протестирована на файлах PDF в рамках исследования KB / IBM «Долгосрочное сохранение» (LTP). Создать UVC для документов PDF сложнее. Вместо этого KB решило разработать UVC для изображений, потому что этот подход также будет охватывать документы PDF (файл PDF можно легко преобразовать в серию изображений). Подход, основанный на UVC, привел к тому, что UVC стал одним из инструментов постоянного доступа к изображениям JPEG / GIF87 в подсистеме сохранения электронного депо КБ. После успешного внедрения UVC KB продолжило разработку своей стратегии эмуляции для долгосрочного цифрового хранения, сосредоточив внимание на «полной» или аппаратной эмуляции. Этот подход позволил создать надежный компьютерный эмулятор на основе компонентов x86: первый модульный эмулятор для цифрового сохранения.

Сохранение на основе UVC

Универсальный виртуальный компьютер является частью более широкой концепции, называемой Метод сохранения на основе UVC. Этот метод позволяет цифровым объектам (например, текстовым документам, электронным таблицам, изображениям, звуковым волнам и т. Д.) Восстанавливать свой первоначальный вид в любое время в будущем. Методы представляют собой программы, написанные на машинном языке универсального виртуального компьютера (UVC). UVC полностью не зависит от архитектуры компьютера, на котором он работает.

Сам UVC - это программа, которая содержит набор инструкций, а не физический компьютер. Он будет работать как программное приложение на будущей платформе. Поскольку в настоящее время мы не знаем, какое оборудование будет доступно в будущем, UVC необходимо создать в то время, когда мы хотим получить доступ к конкретному документу из репозитория. Затем этот UVC формирует платформу, на которой могут запускаться программы, которые были специально написаны для таких UVC в прошлом. Создать программу эмуляции для UVC в будущем намного проще, чем пытаться имитировать «настоящую» машину.

Описание приложения

Метод стратегии сохранения на основе UVC различает архивирование данных, которое не требует полной эмуляции, и программное архивирование, которое требует. Для архивирования данных UVC используется для архивирования методов, которые интерпретируют сохраненный поток данных. Методы представляют собой программы, написанные на машинном языке универсального виртуального компьютера (UVC). Программа UVC полностью независима от архитектуры компьютера, на котором она работает.

Архивирование данных

Архивирование данных воссоздает "внешний вид" исходного файла, но не функциональность исходного формата. Если электронная форма документа используется только для компактного хранения или если способ, которым документ выглядит для человеческого глаза, - все, что есть, тогда достаточно заархивировать документ как изображение. Если требуются дополнительные функции, например поиск текста, сохранения только изображения недостаточно. В этом случае текст также необходимо заархивировать вместе с изображением документа. Восстановив исходный вид файла в виде изображения, будущий пользователь сможет увидеть, как выглядит исходный файл в макете страницы, стиле, шрифте и т. Д. Сам текст должен быть экспортирован, т.е. в формате ASCII, и может быть сохраненными как последовательность однородных элементов (все атрибуты представления, такие как шрифт, размер и т. д., одинаковы для всех символов), потому что изображение страницы показывает точный вид страницы. В этом случае программа данных UVC состоит из двух частей: одна для декодирования текста, а вторая для декодирования изображения.

Что это влечет за собой

Данные, содержащиеся в потоке битов, хранятся с внутренним представлением, извлеченным из потока данных, логических элементов данных, которые подчиняются определенной схеме в определенной модели данных. Алгоритм (метод) декодирования извлекает различные элементы данных из внутреннего представления и возвращает их, помеченные в соответствии со схемой. Дополнительная схема (схема для чтения схем) с информацией о схеме аналогичным образом сохраняется с данными вместе с методом декодирования схемы для чтения схем.

Представление логических данных

Логическая модель данных остается простой, чтобы свести к минимуму объем описания, сопровождающего данные, и уменьшить сложность понимания структуры данные. Модель данных, выбранная для метода сохранения на основе UVC, линеаризует элементы данных в иерархию помеченных элементов, организованных с использованием XML-подобного подхода. Тегированные элементы данных извлекаются из потока данных цифрового файла. Тег определяет роль, которую элемент данных играет в структуре данных. Теги элементов содержат конкретную информацию о содержании данных независимо от технологии. Кроме того, элементы данных, помеченные в соответствии со схемой, возвращаются клиенту в представлении логических данных (LDV)

Пример представления логических данных

сахарная голова горы 1916 1500 2100 
Схема (декодер формата)

Требуется дополнительная информация о различных элементах данных, чтобы человек мог понять, что означает каждый элемент, такая информация, как место тегов в иерархия, тип данных (числовые, символы) вместе с некоторой информацией о семантике данных. Например, изображение имеет два атрибута, ширину и высоту, что указывает на то, что ширина умножается на высоту в пикселях; но хранятся ли эти пиксели строка за строкой или столбец за столбцом? Или для цветных изображений, как интерпретировать значения RGB, чтобы воссоздать правильный цвет? Эта дополнительная информация также называется метаданными. Схема явно зависит от приложения, поскольку она описывает структуру и значение тегов как частей определенного типа информации.

Схема для чтения схем (Схема логических данных (LDS))

Если в будущем пользователь получит элементы данных с тегами, он / она, как правило, не поймет значения данных и отношения между ними и будущим пользователем потребуют дополнительной информации о логической структуре. Другими словами, необходима схема для чтения схемы метаданных. Простое решение, принятое для подхода UVC, - это метод для схемы, аналогичный методу для данных: информация схемы хранится во внутреннем представлении и сопровождается методом ее декодирования.

На этом этапе в архив будут включены: сами данные, метаданные, программа UVC для декодирования данных и программа UVC для декодирования метаданных.

Архивирование программ

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

Если взаимодействие ввода / вывода не требуется, достаточно заархивировать программу операционной системы. В этом случае, используя метод, аналогичный описанному выше, во время архивирования необходимо сохранить следующее:

  • программу
  • программу UVC, которая эмулирует наборы инструкций операционной системы, в которой исходная программа (т. е. программное приложение ).

В будущем UVC интерпретирует код UVC, который даст тот же результат, что и исходная программа, работающая в исходной операционной системе.

Когда задействованы взаимодействия ввода / вывода, все усложняется, так как дополнительная программа UVC, имитирующая работу процессора устройства ввода / вывода, должна быть заархивирована. Эта программа UVC создаст структуру данных ввода / вывода.

В будущем - отображение структуры данных необходимо будет записать на фактическое устройство.

Метод UVC заменяет необходимость во множестве стандартов (по одному для каждого формата) одним стандартом для метода UVC. Этот стандарт должен охватывать: функциональные спецификации UVC, интерфейс для вызова методов, модель схемы и схему для чтения схем

Спецификация

Центральная идея сохранения на основе UVC заключается в том, что цифровые объекты, хранящиеся в архиве, могут быть восстановлены в любое время в будущем без потери смысла этого объекта. На архитектуру UVC влияют характеристики реально существующего компьютера. Он содержит память, регистры и набор низкоуровневых инструкций. Архитектура отличается от «настоящего» компьютера тем, что ее не нужно реализовывать физически. Следовательно, нет реальной физической стоимости. Основным элементом UVC является его сегментная память. Он использует сегменты памяти для хранения отдельных частей данных. Этот сегментный дизайн предотвращает случайную перезапись выделенной памяти другими приложениями, поскольку она не разделяет свое пространство памяти.

Концептуальная модель

Вместе с исходными данными можно реконструировать значение каждого конкретного цифрового объекта. UVC можно рассматривать как сердце системы. Подобно виртуальной машине Java и Common Language Runtime, UVC на самом деле является эмулятором, который позволяет программе работать на виртуальных экземплярах необходимых, обычно устаревших, аппаратное обеспечение, и будет продолжать имитировать необходимое оборудование по мере развития технологий. Поскольку в настоящее время мы не знаем, какое оборудование будет доступно в будущем, UVC необходимо создать в то время, когда мы хотим получить доступ к конкретному документу из репозитория. UVC формирует платформу, на которой могут работать программы, специально написанные для UVC.

Что нужно сделать

Необходимо предпринять разные шаги во время архивирования (в настоящее время) и во время извлечения (в будущем).

Во время архивирования

Шаг 1 - Определите соответствующую логическую схему для данного приложения

Шаг 2 - Выберите внутреннее представление и свяжите программу UVC P с данными. Это часть обычного проектирования приложения

Шаг 3 - Напишите программу UVC для интерпретации данных

Шаг 4 - Заархивируйте информацию схемы, сохранив внутреннее представление информации схемы в битовый поток вместе с UVC-программой Q для его декодирования. Поскольку структура схемы одинакова для всех приложений, схема для чтения схем выбирается раз и навсегда.

Во время извлечения

Шаг 1. Создайте эмулятор на текущей платформе. Из-за простоты концепции UVC для опытных разработчиков программного обеспечения довольно легко создать эмулятор UVC для конкретной платформы того времени

Шаг 2 - Разработайте средство просмотра логических данных (программу восстановления для восстановления данные). Это прикладная программа, которая считывает объектный код UVC и поток битов и вызывает эмулятор для выполнения программы UVC, т.е. программа управляет UVC и всем взаимодействием ввода / вывода между ним

Шаг 3 - Запишите восстановление программа для восстановления схемы. Поскольку логическое представление информации схемы фиксировано, одна программа восстановления может фактически поддерживать все приложения. Если будущий клиент уже знает логическое представление для восстанавливаемых документов, то схема не обязательно требует извлечения. Кроме того, схему нужно запрашивать только один раз для коллекции документов одного типа

соглашение UVC

Соглашение UVC включает элементы информации, которые должны быть заархивированы сегодня и сохранены на неопределенный срок. для обеспечения возможности поиска цифровых объектов в будущем. Включены в конвенцию;

  • Документ архитектуры UVC
  • Интерфейс к эмулятору UVC (средство просмотра логических данных)
  • Определение схемы логических данных или LDS (схема для чтения схем)

условность должна быть «высечена в камне». Его можно сохранить в цифровом виде, на бумаге и / или на носителе.

Система консервирования

Компоненты

Сохранение на основе UVC как центральная идея метода сохранения на основе UVC основано на четырех различных компонентах. Это:

  • программа UVC (декодер формата)
  • Схема логических данных (LDS) с описанием типа информации
  • Универсальный виртуальный компьютер
  • Просмотр логических данных (интерфейс UVC)
    • Интерпретатор UVC
    • Программа восстановления

Рис. 2 UVC и его компоненты UVC и его компоненты.jpg

Описание метода

Программа UVC декодирует формат файла цифрового объекта. Эта программа декодирования формата работает на UVC, который является платформо-независимым уровнем, независимым от будущих изменений аппаратного и программного обеспечения. При выполнении декодера формата доставляются теги элементов. Эти элементы создают логическое представление данных (LDV) данных, которое очень похоже на XML. LDV - это реализация LDS, описывающая структуру и значение тегов как частей определенного типа информации.

Все эти компоненты контролируются программой просмотра логических данных, которую просто называют программой просмотра. Для реконструкции средство просмотра запускает UVC и передает его с данными цифрового объекта в декодер формата, работающий поверх UVC. В свою очередь, он извлекает LDV и восстанавливает конкретное представление значения исходного объекта.

Производительность

В основе архитектуры лежат концепции, существовавшие с начала компьютерной эры: память, регистры и базовые инструкции без дополнительных функций, часто вводимых для повышения производительности выполнения. Производительность имеет второстепенное значение, поскольку программы UVC запускаются в основном для восстановления данных, а не для работы с ними.

Скорость также не вызывает особого беспокойства, поскольку будущие машины будут намного быстрее, а эмуляция UVC на будущей машине, следовательно, будет работать намного быстрее. Кроме того, гибкость UVC важнее скорости выполнения. Даже в этом случае производительность всегда можно улучшить.

Реализация

UVC для архивирования данных, т. Е. Архивирования статических файлов, доказал свою работоспособность в операционной среде цифрового архивирования. UVC - один из инструментов постоянного доступа к изображениям в базе знаний.

UVC для изображений

Доказано, что UVC успешно восстанавливает цифровые объекты в их первоначальном виде. Приложение простое, потому что для изображений не требуется никаких функций. Подход к разработке UVC для изображений JPEG оправдан, так как большинство форматов можно преобразовать в этот формат. Например, документ PDF можно отобразить как серию изображений JPEG, тем самым сохраняя «внешний вид» исходного цифрового объекта, но жертвуя функциональностью. Более того, приложение для изображений JPEG можно легко адаптировать для имитации изображений TIFF, внеся небольшую корректировку в схему логических данных.

Подход также может применяться ко всем другим объектам, не содержащим поведенческих аспектов. Например, интерпретаторы написаны (частично) для Excel, Lotus 1-2-3 и PDF. Однако эти приложения обрабатывают только статические функции форматов.

Эмуляция на основе UVC

Эмуляция на основе UVC использует UVC как универсальную платформу, на которой может быть построен независимый от платформы эмулятор. UVC (программа) воссоздает простой универсальный компьютер и может быть легко реализована на любой компьютерной платформе сейчас и в будущем. С помощью этой стратегии будущие пользователи всегда должны иметь доступ к исходному объекту и просматривать его. Официальная спецификация UVC должна быть сохранена во время хранения. Кроме того, декодеры должны быть разработаны для каждого конкретного формата файла, и LSD требуется для каждого типа цифрового объекта, определяя типы объектов по изображению, звуку, электронной таблице, тексту и т. Д. И, конечно же, исходные объекты также должны быть сохранены.

Сложные объекты / динамическое содержимое

Как упоминалось ранее, подход на основе UVC был эффективно реализован только для статических файлов. Технология продолжает разрабатываться Раймондом ван Диссеном (IBM) для включения динамических объектов путем использования средств связи между программой UVC и будущим приложением.

Альтернативные подходы к эмуляции

Другие подходы к эмуляции: многослойная эмуляция, перенесенная эмуляция и эмуляция виртуальной машины (ВМ).

Многослойная эмуляция

Многослойная эмуляция - это эмуляция, зависящая от платформы, которая со временем требует, чтобы несколько эмуляторов работали друг над другом для восстановления исторической платформы. Это обеспечивает лучшую производительность и функциональность, но не обеспечивает совместимости между платформами. Этот подход в основном можно найти в игровой индустрии.

Перенесенная эмуляция

Перенесенная эмуляция включает создание зависимого от платформы эмулятора, который необходимо перенести (адаптировать) на последующие более новые хосты. Когда конкретная операционная система, в которой создается эмулятор, устаревает, эмулятор переводится для работы на новой текущей платформе. Этот подход представляет собой стратегию с высокими рисками

Виртуальная машина эмуляции (EVM)

EVM была представлена ​​Джеффом Ротенбергом в 1999 году и включает введение дополнительного уровня между платформой хоста и эмулятором и, как утверждается, быть независимыми от платформы и времени. Этот подход использует виртуальную машину и интерпретатор спецификации эмулятора. Считается, что он не зависит от платформы и времени. Это довольно сложно, так как спецификация эмуляции должна быть написана для компьютерной платформы, на которой работает исходное программное обеспечение. Затем спецификация интерпретируется интерпретатором спецификации эмуляции, который создает эмулятор для старой платформы. И интерпретатор, и созданный эмулятор работают в EVM.

Финансовые последствия
Проблемы авторского права

Ожидается, что вопросы авторского права для этого подхода не будут отличаться от проблем любого другого подхода.

Если для формата существуют права интеллектуальной собственности, этот вопрос следует обсудить с владельцами формата. Точно так же для приложений с поддержкой UVC требуется исходный код от разработчика и, следовательно, разрешение от владельца. Наконец, для эмуляции оборудования требуются все соответствующие лицензии на программное обеспечение, работающее в системе.

Историческая хронология
  • 1995 Ротенберг выступает за эмуляцию как решение для долгосрочного сохранения.
  • 2000 Ротенберг описывает виртуальную машину-эмулятор (EVM)
  • 2001 Лори представляет новый подход к сохранению цифровых данные, основанные на универсальном виртуальном компьютере
  • 2002 Лори сообщает о продолжающейся работе по уточнению методологии и созданию первоначального прототипа.
  • 2002 Подтверждение концепции для сохранения статических файлов на основе UVC
  • 2004 г. Экспериментальный этап внедрения UVC для изображений в среде оперативного цифрового архива
  • 2005 г. Operational UVC как инструмент постоянного доступа к изображениям
  • 2007 Универсальная платформа и библиотека компонентов, вдохновленная UVC для модульной модели эмуляции
  • настоящее время (2009 г.) продолжаются исследования по расширению подхода к сохранению на основе UVC для сложных процессов
См. Также
Ссылки
Дополнительная литература
Внешние ссылки

.

Последняя правка сделана 2021-06-20 08:54:31
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте