In a distributed system, middleware is a software component that serves between two or more applications.
Middleware usually resides between the operating system and the end user or end-user application. It provides essential features that the operating system doesn't offer. The term usually refers to large software products, such as database managers, transaction monitors, and web servers.
Middleware can perform numerous functions such as:
Free Resources