230 likes | 268 Views
Computer System types and description. Desktop Computer Systems. T he goals of the operating systems have changed with time Instead of maximizing CPU and peripheral utilization, the systems opt for maximizing user convenience and responsiveness .
E N D
Computer System types and description Desktop Computer Systems • The goals of the operating systems have changed with time • Instead of maximizing CPU and peripheral utilization, the systems opt for maximizing user convenience and responsiveness. • With improvement of chip technology the processors and computing power resources became cheaper. • Then appear real possibilities to create user friendly operating systems.
Computer System types and description Single Processor Systems • On a single processor system, there is one main CPU capable of executing a general-purpose instruction set, including instructions from user processes. • Almost all single processor systems have other special-purpose processorsas well. • All of these special-purpose processors run a limited instruction set and do not run user processes. • It is very effective to add a microprocessor with its own memory to manage a disk system thus significantly reducing the load of the main CPU. • Additional processor can function as: HDD Controller, Keyboard Controller . . . other controllers. • In fact, this use of microprocessors has become so common that it is no longer considered multiprocessing.
Computer System types and description Tightly Coupled or Multiprocessor Systems Multiprocessor systems 3 main advantages: • Increased throughput(Many processors, many tasks more volume of calculations) • Economy of scale (Many tasks on the same data do not need many computers but one multiprocessor computer) • Increased reliability (graceful degradation, fault tolerant- failure does not halt the system) Multiprocessing is implemented connecting the computers to each other on system bus or other local bus levels.
Tightly Coupled or Multiprocessor Systems Tandem Multiprocessor Systems Disadvantage:This solution is expensive, since it involves considerable hardware duplication.
Tightly Coupled or Multiprocessor Systems Symmetric Multiprocessing Systems • Parallel running of copies of the same Operating System, with different tasks • Equal rights to control the system • Communication each with other Problems: • However, we must carefully control I/O to ensure that the data reach the appropriate processor (if the memories are separate). • Also, since the CPUs are separate, one may be sitting idle while another is overloaded, resulting in inefficiencies (data is in wrong memory). • These inefficiencies can be avoided if the processors share memory dynamically. Advantage: • Many processes can run simultaneously-N processes can run if there are N CPUs-without causing a significant deterioration of performance. • No forever idle backup processors
SMP system with shared memory • Processors can access the same data in memory without difficulties. • The processors are quite autonomous because of own internal caches. Problems: • Shared bus problem remains to take care. Caches partially resolve it. • All modern operating systems-including Windows, UNIX, Linux - now provide support for SMP.
Tightly Coupled or Multiprocessor Systems Asymmetric Multiprocessing Systems • Parallel running of the same or other Operating Systems, with different tasks (belonging to user processes) • Not Equal rights to control the system • Communication each with other • A master processor controls the system; • The other processors either look to the master for instruction or have predefined tasks.
MultiCore • In this design, each core has • its own register set • as well as its own local cache. • Other designs might use • a shared cache • or a combination of local and shared caches. A recent trend in CPU design is to include multiple computing cores on a single chip. Such multiprocessor systems are termed multicore. They can be more efficient than multiple chips with single cores because on-chip communication is faster than between-chip communication. In addition, one chip with multiple cores uses significantly less power than multiple single-core chips.
Hyper-threading The architectural state is the part of the CPU which holds the state of a process, this includes: • General purpose registers (such as AX,BX,CX,DX,etc. in x86) • Adder Registers • Address Registers • Counter Registers • Index Registers • Stack Registers • String Registers • Control registers • Instruction Flag Registers (such as EFLAGS in x86) • Interrupt Mask Registers • Memory management unit Registers • Status registers • Thread Context switch time is reduced • Almost parallel running of threads Hyper-threading works by duplicating certain sections of the processor • those that store the architectural state • but not duplicating the main execution resources. • This allows a hyper-threading processor to appear • as the usual "physical" processor • and an extra "logical" processor to the host operating system
Loosely Coupled or Distributed Systems Computer 1 Computer 2 System Bus • Communication Lines • Network Card • Network Card Buses Wires Fiber Optics Wireless Unlike Multiprocessing the Loosely Coupled systems are connected to each other through device controllers, devicesand communication lines. Thus these connections are slower than tightly coupled connections.
Loosely Coupled or Distributed Systems A network is a communication path between two or more systems. A distributed system is a collection of physically separate, possibly heterogeneous, computer systems that are networkedto provide the users with access to the various resources that the system maintains. Node ? • Rest of the processors and their respective resources are remote • Own resources are local
Loosely Coupled or Distributed Systems • Networks are classified based on the distances between their nodes. • A local-area network (LAN), exists within a room, a floor, or a building. • A wide-area network (WAN), usually exists between buildings, cities, or countries. • A metropolitan-area network (MAN), could link buildings within a city.
Loosely Coupled or Distributed Systems To an operating system, a network protocol simply needs an interface device • a network adapter • with a device driver - to manage it • software - to package data in the communications protocol to send it and to unpackageto receive it.
Loosely Coupled or Distributed Systems Client - Server Systems • compute-server system • a client can send a request to perform an action (for example, read data). • In response to which, the server executes the action and sends the results to the client. • A server running a database that responds to client requests for data is an example of such a system. • file-server system • clients can create, update, read, and deletefiles on the server. • An example of such a system is a web server that delivers files to clients running web browsers. The user-interface functionality that used to be handled directly by the centralized systems is increasingly being handled by the PCs. As a result, centralized systems today act as server systems to satisfy requests generated by client systems. Server systems can be broadly categorized as compute servers and file servers. File-Server systems - usual file sharing Compute-Server systems - Remote Terminal, Application Servers.
Peer-to-Peer Systems • Peer to Peer system is a distributed network with autonomous hosts. • Each processor has its own local memory • Hosts are interconnected by a communication network. • Purpose: To provide resource sharing via communication network (with equal rights) • The servers are “bottleneck”? • All nodes within the Peer to Peer systemare considered peers • Clients and servers are not distinguished from one another • Each may act as either a client or a server, depending on whether it is requesting or providing a service.
Loosely Coupled or Distributed Systems Clustered Systems This is multiprocessing through LAN. Formal Definition:clustered computers are autonomous hosts sharing some resources (like storage) and are closely linked via LAN networking. • The same advantages as for multiprocessing: • Increased throughput (Many processors, many tasks more volume of calculations) • Economy of scale (No need to have large memory on each host) • Increased reliability (graceful degradation, fault tolerant- failure does not halt the system)
Asymmetric clustering Loaded Idle • Asymmetric clustering:one machine is in hot standby mode while the other is running the applications. The hot standby host (machine) does nothing but monitor the active server. If that server fails, the hot standby host becomes the active server. • Disadvantage: One of the hosts all the time is idle.
Symmetric clustering Loaded Loaded • Symmetric clustering: Two or more hosts are running applications, and they monitor each other. • Advantage: Both are loaded. • Problem: It does require that more than one application be available to run to keep busy both hosts.
Clustered Systems - SAN • Clustered system use and features should expand greatly as storage-area networks (SAN) become prevalent. • SANs allow easy attachment of multiple hosts to multiple storage units thus increasing the reliability of system.
Cloud Computing Cloud computing is a type of computing that delivers computing, storage, and even applications as a service across a network: • Public cloud—a cloud available via the Internet to anyone willing to pay for the services • Private cloud—a cloud run by a company for that company’s own use • Hybrid cloud—a cloud that includes both public and private cloud components
Cloud Computing Software as a service (SaaS)—one or more applications (such as word processors or spreadsheets) available via the Internet Platformas a service (PaaS)—a software stack ready for application use via the Internet (for example, a database server) Infrastructureas a service (IaaS)—servers or storage available over the Internet (for example, storage available for making backup copies of production data) Ransomware as a service? a public cloud providing IaaS
Real Time Systems Requirements: A real-time system has well-defined, fixed time constraints. Processing mustbe done within the defined constraints, or the system will fail. Flavors: hard and soft Hard: A hard real-time system guarantees that critical tasks be completed on time. Soft: critical real-time task gets priority over other tasks, and retains that priority until it completes • Real-Time Systems usage areas: • scientific experiments • medical imaging systems • industrial control systems (nuclear power plant) • automobile-engine fuel-injection systems • home-appliance controllers • weapon systems • encryption / decryption systems
Handheld Systems Handheld Systems usage areas: • In very small size devices • Palm Pilots • Tablets • Cellular phones Requirements: small size dictates: • small amount of memory • small display • less powerful processor to consume less energy