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.

Ad

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.

@bteck - I agree. Marshalling can get to be a difficult concept to master for newcomers, but basically it’s all about converting data from one form to another in order to share between resources—at least that’s one take. I worked with a company that developed both Borland and Microsoft products, and we often had to use marshalling to convert data in memory so that both development environments could transfer the information back and forth. Microsoft has some built-in classes, especially in their .NET platform, which make marshalling fairly straightforward. You can find a lot of examples online.

Post your comments

Please enter the code:

Login

Register

Make changes/additions/deletions to the article below, and one of our editors will publish your suggestions if warranted.

Optional: Explanation of your recommended changes

Thank You!

One of our editors will review your suggestion and make changes if warranted.
Note that depending on the number of suggestions we receive,
this can take anywhere from a few hours to a few days.
Thank you for helping to improve wiseGEEK!