Single Copy Of The Operating System example essay topic

2,098 words
Multiprocessing Bob Moses Operating Systems Concepts Saturday Section Pittsburgh Campus Multiprocessing refers to a computer system's ability to support more than one process or program at the same time. Multiprocessing operating systems enable several programs to run concurrently. UNIX is one of the most widely used multiprocessing systems, but there are many others, including OS/2 for high-end personal computers and Windows NT for work groups. Multiprocessing systems are much more complicated than single-process systems because the operating system must allocate resources to competing processes in the most efficient manner. (IBM Dictionary of Computing, Tenth Edition, McGraw-Hill, (1994) ).

Types of Multiprocessing Symmetric multiprocessing refers to the processing of programs by multiple processors that share a common operating system, memory and data path. A single copy of the operating system controls all processors. Symmetric multiprocessing units of this type are also referred to as "shared everything" systems. These systems usually do not exceed 16 processors. (Image courtesy of Sequent Manufacturing) The most common uses of these types of systems are commercial servers of web applications such used in on line commerce.

The advantages of this particular configuration are that they can be easily upgraded by the addition of more processors. These processors are available to execute any of the given processes as soon as the operating system recognizes and configures the new hardware. However, the limitations of such a configuration are that with shared memory, there is a strong emphasis on data manipulation. As each processor competes for a limited amount of shared memory, this limits the speed and up-grad ability of such a system. Manufacturers must rely on the development of faster, higher capacity memory to overcome this disadvantage. Currently symmetric multiprocessing computers can address up to 14 gigabytes of physical memory and approximately 2 terabytes of storage.

(Sequent Manufacturing Inc., white papers 1998) Parallel Processing Parallel processing is a form of information processing that emphasizes the concurrent manipulation of data elements belonging to one or more process solving a single problem. It is also referred to as a "shared nothing" system. These systems are composed of many loosely connected nodes or P / M (Processor / Memory) units that consist of a single processor, memory unit, a copy of the operating system and RDBMS (Relational Database Management System). Nodes are connected by high-speed data paths that pass messages between cooperating nodes. (Parallel Computing Theory and Practice, Quinn Michael J., Oregon State University, McGraw-Hill) (image courtesy Sequent manufacturing Inc.) Advantages of parallel multiprocessing systems are that they are easily repaired by replacement of malfunctioning nodes and not the entire system. They manipulate data concurrently meaning processes are broken down to be processed at the same time.

They are scale able meaning they are able to execute larger computations without the purchase of bigger hardware. They are fast because each task is assigned a node for processing. Disadvantages are that because these nodes must communicate with each other to perform parallel work large operations becomes inefficient. Increased communication also increases the time it takes to access data needed to complete a process. This is known as latency.

Greater latencies result in slower system speed. Operating Systems that Support Multiprocessing The purpose of multiprocessing operating systems is to add additional computing power to the system by dividing the required processing jobs among several processors. Each processor is considered to be a device. Each device operates at a given speed. The speed is measured is called throughput. It is the number of results it produces per unit of time.

The operating system must manage throughput of each device. In order to speed up the process, these jobs must also be divided into a number of steps called segments, or stages. This process is called a pipeline d operation. In other words the output of one segment is the input for another.

A copy machine is a good example of a pipeline d process. A copy processor must input paper, take a scanned image of what is to be copied, project the image to the page and eject the printed copy. By dividing the copy process into three stages: Import / export page, scan image and print image the output (throughput) of the copier increases 3 fold without increasing processing speed. (Parallel Computing Theory and Practice 6) The next issue for the operation system is resource management.

The resources of the computer must be equally divided among the processors as needed for the given task. These resources include memory, disk access and processor state (ready, busy or waiting). This is called process scheduling. It consists of: 1. Coordinating the switching of the processor's resources from one process to another. 2.

Maintaining the state of each processor during periods in which the process is ready or suspended. 3. Performing the arbitration of which process gets to run and when. (Principles of Parallel and Multiprocessing, Desrochers, George 93) These operating systems also must maintain concurrency. Concurrency is the property that distinguishes an active object for one that is not active.

This is done by the use of threads. Threads are separate tasks running within a program. Effectively used, they can prevent the entire process from being tied up while the one processor is performing a lengthy operation. Multithreading which provides better reliability and throughput, better microprocessor utilization, and the ability to take advantage of multiprocessor machines. Principle Multiprocessing Operating Systems UNIX- Developed at Bell Labs in the early 1970's. Created by just a handful of programmers, UNIX was designed to be a small, flexible system used exclusively by programmers.

Although it has matured considerably over the years, UNIX still betrays its origins by its cryptic command names and its general lack of user-friendliness. BSD is one of the two original flavors of UNIX. It began as a project of the University of California, Berkeley. The Internet network protocols were first developed in BSD UNIX. BSD is still favored for many Internet applications and has a healthy following amongst Internet Service Providers. There are many variations of BSD UNIX including several free implementations.

Solaris is the leading commercial UNIX. It offers reliability and scalability not found in the free versions of UNIX such as Linux or BSD. There are more server applications available for Solaris than for any other UNIX OS/2-An operating system for PCs developed originally by Microsoft Corporation and IBM, but sold and managed solely by IBM. OS/2 is compatible with DOS and Windows, which means that it can run all DOS and Windows programs. However, programs written specifically to run under OS/2 will not run under DOS or Windows WINDOWS NT-The most advanced version of the Windows operating system.

Windows NT is a 32-bit operating system that supports preemptive multitasking. There are actually two versions of Windows NT: Windows NT Server, designed to act as a server in networks, and Windows NT Workstation for stand-alone or client workstations. Top of Form 1 Bottom of Form 1 LINUX -A freely-distributed version of UNIX that runs on a number of hardware platforms, including Intel and Motorola microprocessors. It was developed by Linus Torvalds. Because it's free, and because it runs on many platforms, including PCs, Macintosh es and Amigas, LINUX has become extremely popular over the last couple years Future Multiprocessing Environments As the demand for web commerce, robotics and generally more powerful, faster computers grows the demand for multiprocessing systems will also grow. Currently there are many multiprocessing operating systems being developed.

These are just a few of the many new systems: Chimera The Advanced Manipulators Laboratory, at Carnegie Mellon University, has developed the Chimera Real-Time Operating System, a next generation multiprocessor real-time operating system (RTOS) designed especially to support the development of dynamically reconfigurable software for robotics and automation systems. Version 3.0 and later of the software is already being used by several institutions outside of Carnegie Mellon, including university, government, and industrial research labs. Harmony (National Research Council of Canada) Harmony is a multitasking, multiprocessing operating system for real-time control, developed at the National Research Council to serve a need for a flexible system for real-time control of robotics experiments and for other applications of embedded systems where predictable temporal performance is a requirement. Harmony is extensible, configurable and portable, both across different target computers (typically assembled from single-board computers), and across different development hosts Helios Helios is a micro kernel operating system for embedded and multiprocessor systems.

The operating system is modular in design and can scale from an embedded run time executive up to a fully distributed operating system. OS-9 (Microware Systems Corporation) OS-9 is a real-time, multi-user, multitasking operating system developed by Microware Systems Corporation. It is modular, allowing new devices to be added to the system simply by writing new device drivers, or if a similar device already exists, by simply creating a new device descriptor. All I / O devices can be treated as files, which unifies the I / O system. In addition, the kernel and all user programs are ROM able. EPOC is an interesting new Operating System from Symbian used in handheld computers from Psion and in mobile phones from Ericsson, Motorola, Phillips and Nokia.

EPOC is a 32 bit, object oriented, multitasking OS. (Motorola manufacturing) 1. Which of the following statements is false when referring to Multiprocessing? A. Multiprocessing is a computer systems ability to support more than one processor. B. Multiprocessing is a general term that can mean dynamic assignment of a program to one of two or more computers working in tandem. C. Multiprocessing uses a single CPU to execute several instructions at once. D. Multiprocessing computers can have up to 200 or more processors. E. All the above are true. 2. Symmetric multiprocessing is: A. A shared system of memory, data path and processor controlled by one operating system. B. A systematic set of instructions used to solve several program instructions at once. C. A "shared nothing" system of computing that uses multiple processors. D. The most complex system of multiprocessing. E. Uses a master processor to do most of the work and a slave processor to do only the work assigned by the master.

3. Parallel processing is: A. A form of information processing that emphasizes the concurrent manipulation of data elements belonging to one or more process solving a single problem. B. Is controlled by a single executing copy of an operating system (OS) managing a shared global memory. C. All processes are fully symmetric in the sense that any process can execute on any processor at any time. D. Require high levels of data access and manipulation. E. None of the above. 4. Latency is a problem that is most prevalent in: A. Symmetric multiprocessing. B. Parallel processing. C. Scalability D. Multithreading E. All of the above. 5. Throughput of a device refers to: A. The speed it takes to access data from the bus. B. The amount of time it takes to produce a result from a device. C. The number of results a device produces over a unit of time. D. The time it takes a device to retrieve the next instruction. E. None of the above 6.

Which of the following operating systems does not support multiprocessing? A. Microsoft Windows NTB. UNIX. OS/2 D. LINUX. All of the above support multiprocessing. 7. Which of the following applications would benefit most by multiprocessing? A. A large Word document. B. A large Excel spreadsheet. C. A video gameD.

A large Multi-user Database. E. None of the above. 8. LINUX is an off shoot of which multiprocessing operating system? A. UNIX. Windows 98 C. OS/2 D. Windows NTE.

MS DOS 9. Which Pittsburgh University is currently developing new multiprocessing operating systems? A. University of Pittsburgh. B. Carnegie-Mellon University. Robert Morris College. Point Park College. None of the above 10. Linus Torvalds is: A. The inventor of UNIX operating system.

The chairman of the board of Microsoft Corp. C. The inventor of LINUX operating system.