1 / 20

Hardware/Software Concepts

Hardware/Software Concepts. Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology. Hardware concepts. Multiprocessor dimensions Memory: could be shared or be private to each CPU

leatrix
Download Presentation

Hardware/Software Concepts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Hardware/Software Concepts Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology

  2. Hardware concepts • Multiprocessor dimensions • Memory: could be shared or be private to each CPU • Interconnect: could be shared (bus-based) or switched M M M P P P P P P P P M M M M M M M P P P P P P P P M M M M

  3. Computer hardware models (1) • Bus-based multiprocessor • Homogeneous Multicomputer Systems Grid • MPP (massively parallel processor) • COW (Cluster of workstations) Hypercube

  4. Computer hardware models (2) • Heterogenous Multicomputer Systems • Different systems • processor type • memory size • IO bandwidth • No global system view for application • performance and service not guaranteed the same everywhere Need a software to provide transparency to applications

  5. Software concepts • Distributed systems similar to traditional OS • managing resources such a CPU, memory, peripheral devices, network, data, etc. • allowing multiple users, applications • OS for distributed systems classified into • Tightly-coupled: distributed OS (DOS) • for multiprocessor, homogeneous multicomputer • Loosly-coupled: network OS (NOS) • for heterogeneous multicomputer • Middleware needed to provide better distribution transparency

  6. Uniprocessor OS (1) • Structure of uniprocessor operating systems • Monolithic (e.g., MS-DOS, early UNIX, Windows) • One large kernel that handles everything • Layered design • Functionality is decomposed into N layers • Each layer uses services of layer N-1 and implements new service(s) for layer N+1

  7. Uniprocessor OS (2) Microkernel architecture • Small kernel • User-level servers implement additional functionality

  8. Multiprocessor OS • Protect against concurrent access to single memory by multiple processors • Most of OSs have been redesigned from the start to handle multiple processors

  9. Multicomputer OS Machine A Machine B Machine C • No single memory space • more complex in structure of OS Distributed applications Distributed OS service • Provides • Virtual multiprocessor machine • Message passing service Kernel Kernel Kernel

  10. Distributed shared memory (1) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 2 5 1 3 6 4 7 11 13 15 9 8 10 12 14 CPU1 CPU2 CPU3 CPU4

  11. Distributed shared memory (2) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 2 5 1 3 6 4 7 11 13 15 9 10 8 12 14 CPU1 CPU2 CPU3 CPU4 After a reference of CPU1 to memory 10

  12. Distributed shared memory (3) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Tradeoff between efficiency and programmability 0 2 5 1 3 6 4 7 11 13 15 9 10 8 10 12 14 CPU1 CPU2 CPU3 CPU4 After a read-only reference of CPU1 to memory 10

  13. Network OS Machine A Machine B Machine C • NOS provides facilities to allow users to make use of the services available on specific machine Distributed applications Kernel Kernel Kernel Network OSservice Network OSservice Network OSservice

  14. Why middleware needed ? • DOS, NOS not yet qualify strict definition of a distributed system • need a middleware for NOS in order to achieve • scalability and openness of NOS • transparency and easy-to-use of DOS

  15. Where to place middleware ? Machine A Machine B Machine C Distributed applications Middleware services Kernel Kernel Kernel Network OSservice Network OSservice Network OSservice Network

  16. Middleware models • Everything as a file • keyboard, mouse, disk, network interface, etc. • Distributed file system • Remote Procedure Call (RPC) • Distributed object

  17. Middleware issues • Middleware services • high-level communication service • to provide access transparency • naming service • to allow entities to be shared and looked up (as in directory) • Storage • Security

  18. Openness Machine A Machine C Same programming interface application application Middleware Middleware common protocol Network OSservice Network OSservice Network

  19. Comparison between systems

  20. Homeworks • Read section 1.5 “The client – server model” in reference 1 (Tanenbaum) • To understand • Why need the client-server model ? • Client-server architectures ?

More Related