Маршалинг

Маршалинг

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

Противоположный процесс называется демаршалингом (также называемый десериализацией).

Содержание

Применение

Маршалинг задействуется при использовании различных механизмов RPC, где есть необходимость в передаче данных между процессами и потоками. Переход от неуправляемого типа в тип CLR, как, например, в процессах P/Invoke, используемых в платформе .NET Framework, является подходящим примером, демонстрирующим применение маршалинга.

Кроме того, маршалинг широко используется в скриптах и приложениях, применяющих технологии XPCOM, поставляемой в составе Mozilla application framework. Браузер Mozilla Firefox — одно из самых известных приложений, созданных с применением этой платформы, что позволило скриптовым языкам использовать технологию XPCOM через Cross-Platform Connect (XPConnect).

Сравнение с сериализацией

В стандартной библиотеке языка Python термин «маршалинг» схож по значению с термином «сериализация»[1], но термины не являются синонимами в документе RFC 2713, на который опирается стандарт Java:

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

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

Сетевые протоколы

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

Примечания

Ссылки

См. также



Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Полезное


Смотреть что такое "Маршалинг" в других словарях:

  • DCOM — (англ. Distributed COM) расширение Component Object Model для поддержки связи между объектами на различных компьютерах по сети. Принцип работы Для создания объекта на удалённой машине, библиотека COM вызывает менеджер управления сервисами… …   Википедия

  • Сериализация — (в программировании) процесс перевода какой либо структуры данных в последовательность битов. Обратной к операции сериализации является операция десериализации (структуризации) восстановление начального состояния структуры данных из битовой… …   Википедия

  • Remote Procedure Call — Удалённый вызов процедур (или Вызов удалённых процедур) (от англ. Remote Procedure Call (RPC))  класс технологий, позволяющих компьютерным программам вызывать функции или процедуры в другом адресном пространстве (как правило, на удалённых… …   Википедия

  • Удалённый вызов процедур — (или Вызов удалённых процедур) (от англ. Remote Procedure Call (RPC))  класс технологий, позволяющих компьютерным программам вызывать функции или процедуры в другом адресном пространстве (как правило, на удалённых компьютерах). Обычно,… …   Википедия

  • Мапирование — (иногда маппинг, маппирование, мэппинг, но не путать с маппингом игровых уровней)  определение соответствия данных между потенциально различными семантиками одного объекта или разных объектов. Термин понимается очень широко от отображения… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»