11.07.2015 Views

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

94 COMcommon object request broker architectureSee corba.A color lookup table (CLUT) or palette can be used to store the colorsactually being used by an image. Here up to 256 colors can beselected out <strong>of</strong> millions <strong>of</strong> possibilities.The user <strong>of</strong> a paint program can select a palette fromthe full range <strong>of</strong> colors available from the operating system.Many color graphics image formats such as GIF (graphicinterchange format) store a palette <strong>of</strong> the colors used bythe image. When converting an image that has more colorsthat the palette can hold, various algorithms can be used tochoose a palette that preserves as much <strong>of</strong> the color rangeas possible.Further Reading“Color” Webopedia. Available online. URL: http://www.webopedia.com/Graphics/Color/. Accessed June 10, 2007.Drew, John, <strong>and</strong> Sarah Meyer. Color Management: A ComprehensiveGuide for Graphic Designers. East Sussex, U.K.: RotoVision,2005.“Introduction to Color <strong>and</strong> Color Management Systems.” Apple<strong>Computer</strong> Developer Connection. Available online. URL:http://developer.apple.com/documentation/mac/ACI/ACI46.html. Accessed June 10, 2007.Koren, Norman. “Color Management <strong>and</strong> Color <strong>Science</strong>: Introduction.”Available online. URL: http://www.normankoren.com/color_management.html. Accessed June 10, 2007.COM (common object model) See Micros<strong>of</strong>t.net.common gateway interface See cgi.compatibility <strong>and</strong> portabilityThe computers <strong>of</strong> the 1940s were each h<strong>and</strong> built <strong>and</strong>unique. When the first commercial models were developed,such as the UNIVAC <strong>and</strong> the first IBM mainframes, thequestion <strong>of</strong> compatibility was born. Broadly speaking, compatibilityis the degree to which a program or hardwaredevice designed for one system can work with or run onanother.The designers <strong>of</strong> high-level languages usually intend thata source program written using the proper language syntaxwill compile <strong>and</strong> run on any system for which a compiler isavailable. However, there are many factors that can destroycompatibility. For example, if one machine stores the bytes<strong>of</strong> a numeric value from least significant to most significantwhile another does it in the opposite order, program codethat depends on directly referencing memory locations willgive the wrong results on one machine or another. Similarly,st<strong>and</strong>ard data sizes such as “integer” might be 16 bitson one system <strong>and</strong> 32 bits on another.Language designers can minimize such problems byseparating hardware-related issues from the language itself,as is the case with C <strong>and</strong> C++. A program is then linkedwith st<strong>and</strong>ard libraries implemented for each hardware oroperating system environment.Manufacturers <strong>of</strong>ten design newer models <strong>of</strong> their computersso they are “upwardly compatible” with existingmodels. This means that a program written for the smallermachine should run correctly on the new, larger one. Thisis <strong>of</strong> obvious benefit to users who do not want to haveto rewrite their s<strong>of</strong>tware every time they upgrade theirmachine. Often, however, such systems are not “downwardlycompatible”—a program written for the new, largermachine may rely on features or architectural characteristicsthat are not available on the older, smaller machines.Sometimes a “compatibility mode” can be specified for acompiler or operating system. This restricts the use <strong>of</strong> featuresto those available on the older system.Compatibility is also important with regard to s<strong>of</strong>tware.Generally speaking, a newer version <strong>of</strong> a program such as aword processor will be able to read files that were originallycreated by a previous version, although this may not be truefor more than a few versions back. However, files saved fromthe newest version may well be incompatible with older versions,because they contain formatting or other informationthat is not underst<strong>and</strong>able by the earlier version. Sometimesan intermediate format (for example, see rtf, or Rich TextFormat) can be used to transfer files between otherwiseincompatible systems.Compatibility between vendors can be an importantcompetitive issue. If a developer wants to enter a marketwhere one or two products are viewed as industry st<strong>and</strong>ards,the new product will have to be compatible with atleast most files created by the dominant products. A technicallysuperior product can thus be a market disaster if it isnot compatible with the industry st<strong>and</strong>ard. In areas (such

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!