Middleware is a type of computer software program that provides services to software applications beyond those available from the operating system . It can be described as "software glue".
6-500: Nvidia GameWorks is a middleware software suite developed by Nvidia . The Visual FX, PhysX, and Optix SDKs provide a wide range of enhancements pre-optimized for Nvidia GPUs . GameWorks is partially open-source . The competing solution being in development by AMD is GPUOpen , which was announced to be free and open-source software under the MIT License . Nvidia Gameworks consists of several main components: In addition,
12-485: Is somewhat standardized through the Service Availability Forum and is commonly used in complex, embedded systems within the telecom, defence, and aerospace industries. Many categories of middleware have been defined, based on the field in which it is used or the application module it serves. A recent bibliography identified the main categories of middleware as follows: The term middleware
18-557: 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
24-591: The hyphen ("-") 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
30-469: The suite contains sample code for DirectX and OpenGL developers, as well as tools for debugging, profiling, optimization, and Android development. Middleware 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
36-438: The term had been in use since 1968. 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
#860139