Skip to main content

Heterogeneous model; DOS realization

Short answer

An online banking system with browser, mobile app, web server (Linux/Java), app server (Unix/C++), and mainframe database (Oracle) is heterogeneous. A true distributed OS is not used; instead middleware over network OS delivers naming, RPC, file system, and transactions, giving the illusion of a single system.

Give an example of heterogeneous model of distributed application. How is distributed operating system realized in practical distributed systems? Explain.

Example of a heterogeneous model of a distributed application

A heterogeneous distributed application runs on components with different hardware, operating systems, languages and networks, joined by middleware. Example: an online banking system.

 Browser (Windows)    Mobile app (Android)
         \              /
       Web server (Linux, Java)
                |   (CORBA / RMI / web services)
       Application server (Unix, C++)
                |
       Database (mainframe, Oracle)
  • Clients on different devices, written in JavaScript or Kotlin.
  • A Java web server on Linux, and a C++ application server on UNIX.
  • An Oracle database on a mainframe. They communicate through middleware (CORBA with IDL, SOAP/REST web services), which converts data to a common format, so that the heterogeneity is hidden.

Realisation of a distributed OS in practice

A true distributed OS (one OS controlling all machines) is rarely used, because nodes are autonomous, heterogeneous and widely spread. Instead it is realised as middleware over network operating systems.

  1. Every node runs its own local OS (kernel for local processes, memory, devices).
  2. A middleware layer on top gives the global services of a distributed OS: naming, RPC/RMI communication, distributed file system, security, transactions, replication, load balancing.
  3. Applications use the middleware API and see one system (transparency).
  4. Microkernel-based designs put only basic IPC and scheduling in the kernel, and implement other services as servers that may be on any node.

So the "distributed OS" is the combination of local OSs, the network and the middleware.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Distributed System chapter 3 questions →