Go Back   TechArena Community > Software > Software Development
Become a Member!
Forgot your username/password?
Tags Active Topics RSS Search Mark Forums Read

Reply
 
Thread Tools Search this Thread
  #1  
Old 11-04-2009
Member
 
Join Date: Feb 2009
Posts: 40
About Marshalling

hie everyone,

I want the information about the term called marshalling in the computer world. Also, just want to conform is marshalling and serialization is one and the same thing ? Please post your ideas about the same..... thank you
Reply With Quote
  #2  
Old 11-04-2009
Member
 
Join Date: Feb 2008
Posts: 1,848
Re: About Marshalling

Marshalling -
In computer science, marshalling (similar to serialization) is the process of transforming the memory representation of an object to a data format suitable for storage or transmission. It is typically used when data must be moved between different parts of a computer program or from one program to another.

The opposite, or reverse, of marshalling is called unmarshalling (also known as deserialization).
Reply With Quote
  #3  
Old 11-04-2009
Member
 
Join Date: Jan 2008
Posts: 1,515
Re: About Marshalling

Definition - In computer programming, marshalling is the process of gathering data from one or more applications or non-contiguous sources in computer storage, putting the data pieces into a message buffer , and organizing or converting the data into a format that is prescribed for a particular receiver or programming interface.

Marshalling is usually required when passing the output parameters of a program written in one language as input to a program written in another language
Reply With Quote
  #4  
Old 11-04-2009
Member
 
Join Date: Oct 2005
Posts: 2,389
Re: About Marshalling

The term "marshal" is considered to be synonymous with "serialize" in the Python standard library, but the terms are not synonymous in the Java-related RFC:

To "marshal" an object means to record its state and codebase(s) in such a way that when the marshalled object is "unmarshalled", a copy of the original object is obtained, possibly by automatically loading the class definitions of the object. You can marshal any object that is serializable or remote. Marshalling is like serialization, except marshalling also records codebases. Marshalling is different from serialization in that marshalling treats remote objects specially.

To "serialize" an object means to convert its state into a byte stream in such a way that the byte stream can be converted back into a copy of the object.
Reply With Quote
  #5  
Old 11-04-2009
Member
 
Join Date: May 2008
Posts: 2,293
Re: About Marshalling

Usage information -
Marshalling is used within implementations of different RPC mechanisms, where it is necessary for transporting data between processes and/or between threads. In the .NET Framework, the conversion between an unmanaged type and a CLR type, as in the P/Invoke process, is also an example of an action that requires marshalling to take place.

Additionally, marshalling is used extensively within scripts and applications that utilize the XPCOM technologies provided within the Mozilla Application Framework. The Mozilla Firefox browser is a popular application built with this framework that additionally allows scripting languages to utilize XPCOM through Cross-Platform Connect (XPConnect).
Reply With Quote
  #6  
Old 11-04-2009
Member
 
Join Date: May 2008
Posts: 2,383
Re: About Marshalling

Marshalling is the term that is used in many fields -
Originally, to marshall was to tend horses or to arrange things in preparation for a feast.
In heraldry, marshalling is the arrangement of several coats of arms to form a single composition.
In the military, marshalling is the gathering and ordering of military forces in preparation for battle.

In computer world, marshalling is used in field of programming as data marshalling.

Data Marshalling -
The process of gathering data and transforming it into a standard format before it is transmitted over a network so that the data can transcend network boundaries. In order for an object to be moved around a network, it must be converted into a data stream that corresponds with the packet structure of the network transfer protocol. This conversion is known as data marshalling. Data pieces are collected in a message buffer before they are marshaled. When the data is transmitted, the receiving computer converts the marshaled data back into an object.

Data marshalling is required when passing the output parameters of a program written in one language as input to a program written in another language.
Reply With Quote
  #7  
Old 11-04-2009
Member
 
Join Date: Apr 2008
Posts: 1,948
Re: About Marshalling

Marshalling in Computer Programming

Marshalling in the context of computer programming is the transformation of components stored in the memory of the device into usable data that may be utilized by one or more of the programs residing on the hard drive. The action of gathering data into storage areas for easy retrieval is greatly enhanced by the process of marshalling, as it allows programs to recover the data for use without the need to translate the components each time the action is called for. From this perspective, marshalling aids in the speedy function of many of the software programs used in homes and businesses every day.

Along with converting objects into data and preparing the data for storage or transmission when needed, marshalling also acts as a buffer between the stored data and the various files or programs that make use of the data. This buffer helps to maintain the integrity of the stored data and allow it to be used for simultaneous actions involving more than one file or one program. The overall effect is to keep the system functioning at optimal levels without delays.

For example, marshalling helps to make it possible to work with a spreadsheet, a word processing document, and an open Internet connection all at the same time, without delays. Marshalled data may be in use by all of these applications simultaneously without creating a drain on the resources of the hard drive.

Marshalling vs Serialization
Many persons who are knowledgeable about computer science in general consider marshalling to be somewhat similar to a process that is known as serialization.
Serializing an object involves converting the object from the original state into a byte stream, but in a manner where the byte stream can be converted back into the original state if necessary. Marshalling differs from serialization in that serialization does not record codebases. Marshalling handles both the functions of conversion and the recording of codebases.
In addition, marshalling can be utilized with remote objects, whereas serialization cannot. This means that for some configurations, the marshall approach to object conversion, storage, and transmission may be preferable.
Reply With Quote
Reply

  TechArena Community > Software > Software Development
Tags:



Thread Tools Search this Thread
Search this Thread:

Advanced Search


Similar Threads for: "About Marshalling"
Thread Thread Starter Forum Replies Last Post
Prince of persia 4 marshalling ground Tommy H. Video Games 4 16-06-2009 10:36 PM


All times are GMT +5.5. The time now is 04:00 PM.