1 / 40

Computer System Overview

Computer System Overview. At a top level, a computer consists of processor, memory, and I/O components, with one or more modules of each type. These components are interconnected in some fashion to achieve the main function of the computer, which is to execute programs. Computer System….

tamera
Download Presentation

Computer System Overview

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. Computer System Overview At a top level, a computer consists of processor, memory, and I/O components, with one or more modules of each type. These components are interconnected in some fashion to achieve the main function of the computer, which is to execute programs.

  2. Computer System… Thus, there are four main structural elements: Processor: Controls the operation of the computer and performs its data processing functions. Main memory: Stores data and programs. This memory is typically volatile; that is, when the computer is shut down, the contents of the memory are lost.

  3. Computer System… I/O modules: Move data between the computer and its external environment. The external environment consists of a variety of devices, including secondary memory devices (e. g., disks), communications equipment, and terminals. System bus: Provides for communication among processors, main memory, and I/O modules.

  4. Computer System… One of the processor’s functions is to exchange data with memory. For this purpose, it typically makes use of two internal (to the processor) registers: memory address register (MAR), which specifies the address in memory for the next read or write; and a memory buffer register (MBR), which contains the data to be written into memory or which receives the data read from memory

  5. Computer System… Similarly, an I/O address register (I/OAR) specifies a particular I/O device. An I/O buffer register (I/OBR) is used for the exchange of data between an I/O module and the processor.

  6. Computer System… A processor includes a set of registers that provide memory that is faster and smaller than main memory. Processor registers serve two functions: User-visible registers: Enable the machine or assembly language programmer to minimize main memory references by optimizing register use. E.g.: Data registers, Address registers(Index register, Segment pointer, Stack pointer)

  7. Computer System… Control and Status Registers Program counter (PC): Contains the address of the next instruction to be fetched Instruction register (IR): Contains the instruction most recently fetched

  8. INSTRUCTION EXECUTION A program to be executed by a processor consists of a set of instructions stored in memory. Instruction processing consists of two steps (Instruction cycle): The processor reads (fetches) instructions from memory one at a time and executes each instruction.

  9. INTERRUPTS Virtually all computers provide a mechanism by which other modules (I/O, memory) may interrupt the normal sequencing of the processor. Interrupts are provided primarily as a way to improve processor utilization. For example, most I/O devices are much slower than the processor.

  10. Handling Interrupts

  11. common Interrupts

  12. Interrupt and Instruction cycle

  13. THE MEMORY HIERARCHY As might be expected, there is a tradeoff among the three key characteristics of memory: namely, capacity, access time, and cost. A variety of technologies are used to implement memory systems, and across this spectrum of technologies, the following relationships hold: • Faster access time, greater cost per bit • Greater capacity, smaller cost per bit • Greater capacity, slower access speed

  14. THE MEMORY HIERARCHY The dilemma facing the designer is clear. The designer would like to use memory technologies that provide for large capacity memory, because the capacity is needed and because the cost per bit is low. However, to meet performance requirements, the designer needs to use expensive, relatively lower capacity memories with fast access times. The way out of this dilemma is to not rely on a single memory component or technology, but to employ a memory hierarchy.

  15. THE MEMORY HIERARCHY

  16. THE MEMORY HIERARCHY As one goes down the hierarchy, the following occur: Decreasing cost per bit Increasing capacity Increasing access time Decreasing frequency of access to the memory by the processor

  17. CACHE MEMORY Cache memory is intended to provide memory access time approaching that of the fastest memories available and at the same time support a large memory size that has the price of less expensive types of semiconductor memories. There is a relatively large and slow main memory together with a smaller, faster cache memory. The cache contains a copy of a portion of main memory. When the processor attempts to read a byte or word of memory, a check is made to determine if the byte or word is in the cache. If so, the byte or word is delivered to the processor.

  18. CACHE MEMORY

  19. OPERATING SYSTEM

  20. What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system goals: Execute user programs and make solving user problems easier. Make the computer system convenient to use. Use the computer hardware in an efficient manner.

  21. Computer System Components • Hardware – provides basic computing resources (CPU, memory, I/O devices). • Operating system – controls and coordinates the use of the hardware among the various application programs for the various users. • Applications programs – define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, video games, business programs). • Users (people, machines, other computers).

  22. Abstract view of system components

  23. OPERATING SYSTEM… An operating system is similar to a government. Like a government, it performs no useful function by itself. It simply provides an environment within which other programs can do useful work. The function of the operating system is to present the user with the equivalent of an extended machine or virtual machine that is easier to program than the underlying hardware.

  24. Memory Layout for a Simple Batch System

  25. Multi-programmed Batch Systems • Several jobs are kept in main memory at the same time, and the CPU is multiplexed among them.

  26. OPERATING SYSTEM… Modern computers consist of processors, memories, timers, disks, mouse, network interfaces, printers, and a wide variety of other devices. In other way, the job of the operating system is to provide for an orderly and controlled allocation of the processors, memories, and I/O devices among the various programs competing for them.

  27. OPERATING SYSTEM… Resource management includes multiplexing (sharing) resources in two ways: in time and in space. When a resource is time multiplexed, different programs or users take turns using it. The other kind of multiplexing is space multiplexing. Instead of the customers taking turns, each one gets part of the resource. For example, main memory is normally divided up among several running programs, so each one can be resident at the same time (for example, in order to take turns using the CPU).

  28. OPERATING SYSTEM… A process is basically a program in execution. The operating system decides to stop running one process and start running another. When a process is suspended temporarily like this, it must later be restarted in exactly the same state it had when it was stopped. All the information about each process, other than the contents of its own address space, is stored in an operating system table called the process table.

  29. OPERATING SYSTEM… • Most computers have two modes of operation: kernel mode and user mode. • The operating system is the most fundamental piece of software and runs in kernel mode (also called supervisor mode). • In this mode it has complete access to all the hardware and can execute any instruction the machine is capable of executing. • The rest of the software runs in user mode, in which only a subset of the machine instructions is available.

  30. OPERATING SYSTEM… A System call provide the means for a user program to ask the operating system to perform tasks reserved for the operating system on the user program’s behalf.

  31. History • Early Systems - bare machine (1945 - 1955) – First Generation • Structure • o Large machines run from console • o Single user system • o Programmer/User as operator • o Job usually in paper tape or punched cards • Execution • CPU is often idle – slow speed of mechanical I/O devices • Inefficient use of expensive resources • o Low CPU utilization • o Significant amount of setup time

  32. Simple Batch Systems - Second Generation (1955-1965) • Use an operator (somebody to work on the machine) • Add a card reader (a device to read programs written on punched cards) • Reduce setup time by batching similar jobs • Automatic job sequencing - automatically transfers control from one job to another. First rudimentary operating system.

  33. Multiprogramming and Time Sharing : Third Generation (1965-1980) Multiprogramming Several jobs are kept in main memory at the same time, and the CPU is shared between them. Each job is called a process • OS Features Needed for Multiprogramming • I/O routine supplied by the system • Memory management - the system must allocate the memory to several jobs • CPU scheduling - the system must choose among several jobs ready to run • Allocation of devices

  34. Multiprogramming and Time Sharing : Third Generation • Multiprogramming and batch systems provided an environment where the system resources were utilized effectively, but it did not provide for user interaction with the computer system • Solution : Time-Sharing Systems- Interactive Computing • Most efficient for many users to share a large computer • The CPU is shared between several processes • Each process belongs to a user and I/O is to/from a separate terminal for each user • On-line file system must be available for users to access data and code

  35. Personal Computer Systems : Fourth Generation (1980- present) • Personal computers - computer system dedicated to a single user • User convenience and responsiveness. • Can adopt technology developed for larger operating systems; often individuals have sole use of computer and do not need advanced CPU utilization or protection features.

  36. Parallel Systems Parallel Systems - multiprocessor systems with more than one CPU in close communication • Tightly coupled system - processors share memory and a clock;communication • usually takes place through the shared memory. • Advantages of parallel systems: • o Increased throughput • o Economical • o Increased reliability • Symmetric multiprocessing • o Each processor runs an identical copy of the operating system • o Many processes can run at once without performance deterioration • Asymmetric multiprocessing • o Each processor is assigned a specific task; master processor schedules and allocates work to slave processors • o More common in extremely large systems

  37. Distributed Systems Distributed Systems - distribute the computation among several physical processors • Loosely coupled system - each processor has its own local memory; processors communicate with one another through various communication lines, such as high-speed networks • Advantages of distributed systems: • o Resource sharing • o Computation speed up - load sharing • o Reliability • Communication

  38. Real Time Systems • Often used as a control device in a dedicated application such as controlling scientific experiments, medical imaging systems, industrial control systems, and some display systems • Well-defined fixed-time constraints • OS must be able to respond very quickly

  39. Operating-System Structures • Most operating systems support the following types of system components: • Process Management • Main-Memory Management • Secondary-Storage Management • I/O System Management • File Management • Protection System • Networking • Command-Interpreter System

More Related