Middleware technologies like RPC, RMI, CORBA, and web services define standards for distributed computing by allowing programs and objects located on different machines to communicate. They provide location transparency so clients can access remote objects as if they were local. Middleware sits above basic communication mechanisms and hides differences in operating systems, networks, and programming languages.