Page 31 - DCAP403_Operating System
P. 31

Operating System




                    Notes                                      Figure 2.5: Parallel Systems


























                                   Others run a UNIX based microkernel with reduced functionality to optimize the use of the CPU,
                                   such as Cray Research’s UNICOS. Finally, a number of shared memory MIMD machines run
                                   Microsoft Windows NT (soon to be superseded by the high end variant of Windows 2000).
                                   There are a number of core aspects to the characterization of a parallel computer operating
                                   system: general features such as the degrees of coordination, coupling and transparency; and
                                   more particular aspects such as the type of process management, inter-process communication,
                                   parallelism and synchronization and the programming model.

                                   Multitasking

                                   In computing, multitasking is a method where multiple tasks, also known as processes, share
                                   common processing resources such as a CPU. In the case of a computer with a single CPU, only
                                   one task is said to be running at any point in time, meaning that the CPU is actively executing
                                   instructions for that task. Multitasking solves the problem by scheduling which task may be the
                                   one running at any given time, and when another waiting task gets a turn. The act of reassigning
                                   a CPU from one task to another one is called a context switch. When context switches occur
                                   frequently enough the illusion of parallelism is achieved. Even on computers with more than
                                   one CPU (called multiprocessor machines), multitasking allows many more tasks to be run than
                                   there are CPUs.
                                   In the early ages of the computers, they where considered advanced card machines and therefore

                                   the jobs they performed where like: “find all females in this bunch of cards (or records)”. Therefore,
                                   utilisation was high since one delivered a job to the computing department, which prepared and

                                   executed the job on the computer, delivering the final result to you. The advances in electroniv
                                   engineering increased the processing power serveral times, now leaving input/output devices
                                   (card readers, line printers) far behind. This ment that the CPU had to wait for the data it required
                                   to perform a given task. Soon, engineers thought: “what if we could both prepare, process and
                                   output data at the same time” and multitasking was born. Now one could read data for the
                                   next job while executing the current job and outputting the results of a previously job, thereby
                                   increasing the utilisation of the very expensive computer.
                                   Cheap terminals allowed the users themselves to input data to the computer and to execute jobs
                                   (having the department do it often took days) and see results immediately on the screen, which
                                   introduced what was called interactive tasks. They required a console to be updated when a key





          24                               LOVELY PROFESSIONAL UNIVERSITY
   26   27   28   29   30   31   32   33   34   35   36