What are the relations and differences between firmware and middleware?
firmware is the combination of persistent memory and program code and data stored in it. Typical examples of devices containing firmware are embedded systems (such as traffic lights, consumer appliances, and digital watches), computers, computer peripherals, mobile phones, and digital cameras. The firmware contained in these devices provides the control program for the device.
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 perform communication and input/output, so they can focus on the specific purpose of their application.
I still don't understand the differences in their roles, relative to
hardware, high-level software, operating system, etc.
Is BIOS firmware not middleware?
Is a bootloader for an OS a firmware, middleware or someware?
Is the instruction set of a CPU firmware and not middleware?
Is there some middleware not firmware?
What are the relations and differences between device drivers and
firmware and middleware?