Middleware | Wikipedia audio article


Middleware is computer software that provides
services to software applications beyond those available from the operating system. It can be described as “software glue”.Middleware
makes it easier for software developers to implement communication and input/output,
so they can focus on the specific purpose of their application. It gained popularity in the 1980s as a solution
to the problem of how to link newer applications to older legacy systems, although the term
had been in use since 1968.==In distributed applications==The term is most commonly used for software
that enables communication and management of data in distributed applications. An IETF workshop in 2000 defined middleware
as “those services found above the transport (i.e. over TCP/IP) layer set of services but
below the application environment” (i.e. below application-level APIs). In this more specific sense middleware can
be described as the dash (“-“) in client-server, or the -to- in peer-to-peer. Middleware includes web servers, application
servers, content management systems, and similar tools that support application development
and delivery.ObjectWeb defines middleware as: “The software layer that lies between
the operating system and applications on each side of a distributed computing system in
a network.” Services that can be regarded as middleware
include enterprise application integration, data integration, message oriented middleware
(MOM), object request brokers (ORBs), and the enterprise service bus (ESB).Database
access services are often characterised as middleware. Some of them are language specific implementations
and support heterogeneous features and other related communication features. Examples of database-oriented middleware include
ODBC, JDBC and transaction processing monitors.Distributed computing system middleware can loosely be
divided into two categories—those that provide human-time services (such as web request servicing)
and those that perform in machine-time. This latter middleware is somewhat standardized
through the Service Availability Forum and is commonly used in complex, embedded systems
within telecom, defense and aerospace industries.==Other examples==
The term middleware is used in other contexts as well. Middleware is sometimes used in a similar
sense to a software driver, an abstraction layer that hides detail about hardware devices
or other software from an application. The Android operating system uses the Linux
kernel at its core, and also provides an application framework that developers incorporate into
their applications. In addition, Android provides a middleware
layer including libraries that provide services such as data storage, screen display, multimedia,
and web browsing. Because the middleware libraries are compiled
to machine language, services execute quickly. Middleware libraries also implement device-specific
functions, so applications and the application framework need not concern themselves with
variations between various Android devices. Android’s middleware layer also contains the
ART virtual machine and its core Java application libraries. Game engine software such as Gamebryo and
RenderWare are sometimes described as middleware, because they provide many services to simplify
game development. In simulation technology, middleware is generally
used in the context of the high level architecture (HLA) that applies to many distributed simulations. It is a layer of software that lies between
the application code and the run-time infrastructure. Middleware generally consists of a library
of functions, and enables a number of applications—simulations or federates in HLA terminology—to page
these functions from the common library rather than re-create them for each application. Wireless networking developers can use middleware
to meet the challenges associated with a wireless sensor network (WSN). Implementing a middleware application allows
WSN developers to integrate operating systems and hardware with the wide variety of various
applications that are currently available. The QNX operating system offers middleware
for providing multimedia services for use in automobiles, aircraft and other environments. Radio-frequency identification (RFID) software
toolkits provide middleware to filter noisy and redundant raw data.==See also==
Language-agnostic Third-party software component

Add a Comment

Your email address will not be published. Required fields are marked *