Time-sharing systems

In time-sharing processing, the central processor allows 2 or more users, who have different processing requirements, to use one computer at the same time. 

The terminal users are usually connected to the central computer using communication links. 

The CPU time is divided out equally among the users, and each user is allowed a “Time slice” – a brief period when he/she is allowed to access the CPU. 

The amount of time allocated to each user & the switching from one job to another is controlled by a multi-user operating system.  The OS normally assigns priorities to the various jobs entering the system.

Illustration;

The OS may give each terminal user 5 seconds to submit a job.  The user sits at the terminal & issues commands to the OS.

After every 5 seconds, the central computer checks all the terminals to see if there is any user who needs assistance.  If a particular terminal does not need service, the computer goes onto the next terminal.  But if a new command has been issued, the computer will allocate a time-slice to the user.  During this time, the computer devotes its full attention to this user.  When the time-slice is over or the user’s requests have been satisfied, the computer goes on to the next terminal.  The user must now wait until he/she is allocated her next time-slice.

Note.  The switching of control from one user to another during assigning of the time slices happens so fast that an individual user may think that he/she is the only one using the system. 

E.g., for 50 users each allocated 10 milliseconds; it takes only 500 milliseconds (½ a second) to service them all.

QuestionWhat happens to a user’s job if her time-slice is up and the job is not completed?

The job is interrupted and allocated some space on the disk where the job together with all relevant status information is moved into.  When the time comes to resume the job (or during the next allocated time-slice), the job is rolled-in from the disk, and processing continues at the point at which the interruption occurred.

Characteristics of a time-sharing processing mode.

  • Each user has one or more Input/Output devices connected to the central computer by communication lines.
    • Each user is independently of the others who are connected to the system.
    • Each user has its own private set of programs plus access to a set of public programs.
    • The central computer accepts the data & instructions arriving simultaneously from many users, and gives each user a small but frequently repeated segment of computer time.
    • Data files, program files, and Input/Output devices are all directly connected to the computer, so that processing can be performed at random as requests for transactions are made.

Application areas for time-sharing.

  1. In Bureaus that serve individuals or small companies who cannot afford the computer facilities.
  2. In learning institutions where there are many users.

Advantages of time-sharing systems.

  1. Provides better services to users since the output is fast.
  2. The processor’s idle time is utilized.  This is because; the processor doesn’t have to wait for the slower communicating peripherals.
  3. Files are held online, hence enquiries or file interrogation is possible.
  4. The user and the computer can communicate through the terminals connected to the central computer.
  5. It avoids duplication of software.
  6. Terminal users can benefit from the facilities of the central computer.
  7. It is helpful to small companies, which cannot afford to purchase a computer & the related facilities.  The company can be served at a fee through time-sharing processing mode.

Disadvantages of time-sharing systems.

  1. Users have no control over the central computer.
  2. The response is slow especially when there are many tasks.
  3. There is no security of data.

Multi-programming systems

Multi-programming (also referred to as Multi-tasking) refers to a type processing where more than one programs residing in the computer memory are executed concurrently by a single Processor.

A multi-programming system allows the user to run 2 or more programs, all of which are in the computer’s Main memory, at the same time. 

The jobs are scheduled to run automatically by the Processor under the influence of a Multi-programming or Multi-tasking operating system).

The schedule is such that; the Processor bound jobs (i.e., jobs that require much of the C.P.U time as compared to the peripheral time) are assigned low priorities for them not to tie up the C.P.U time.  The Peripheral or Print bound jobs (i.e., jobs that require much of the peripheral time as compared to the C.P.U time) are allocated the C.P.U time whenever it is available.

The OS allocates each program a time-slice, and decides the order in which they will be executed.  In this case, the programs take turns at short intervals of processing time.  The programs to be run are loaded into the memory and the CPU begins execution of the first one.  When the request is satisfied, the second program is brought into memory and its execution starts, and so on. 

Note.  A Multi-programming system is able to work on several programs at the same time.  It works on the programs one after the other, and at any given time it executes instructions from one program only.  However, the computer works so quickly that it appears to be executing the programs at the same time.

Advantages of multi-programming.

  1. Increases productivity of a computer.
  2. Reduces the CPU’s idle time.
  3. Reduces the incidence of peripheral bound operation.

Disadvantages of multi-programming.

  1. Requires more expensive CPU.
  2. A Multi-tasking operating system is complex & difficult to operate.
  3. Requires more expensive Input/Output facilities.

Review questions

  1. (a). Define Multi-programming.

(b). What are the factors which make multiprogramming possible?

(c). State the benefits to be derived from Multi-programming?

(d). Discuss the hardware and software facilities necessary to facilitate Multi-programming.

Distributed processing.

Distributed data processing refers to dividing of processing tasks among 2 or more computers that are located on physically separate sites, but connected by data transmission media.

For example;

An organization may have various computers that are located at various departments or business sites, but linked together by communication lines.  In such a case, each individual department or business site is being served individually by its own computer resources. 

The computers at different departments are usually of limited processing power (e.g., microcomputers), and only serve as terminals from the various departments.  They are then connected to a central computer of enhanced processing ability such as a Mini or a Mainframe computer.

Salient features of distributed processing mode.

  • Each department or business site is served individually by the computer resources employed.
    • The Information generated in each department is used to influnce the decisions of individual departments appropriately.

Computer configurations that can be used for Distributed processing systems.

Configurations where computers communicate to each other are described as Networks

The following are computer arrangements that can be used for Distributed processing systems:

  1. Local Area Networks (LAN).

This is whereby the network is within the same locality, and does not require the use telecommunication links, e.g., same building.

  • Wide Area Networks (WAN) or Long Haul Networks (LHN).

These are networks that involve computers separated by long distance; hence, they communicate through telecommunication links.

Note.  Networks within the same city may be linked through Telephone lines or special Coaxial cables, while far distant places may be linked through Satellite transmission channels or ground Microwave systems

Application areas of distributed processing.

  1. In Banks:

All the branches have Intelligent terminals (usually microcomputers) linked to a big computer at the Head Office.  The customers’ accounts are operated on the servers in the branches, while data from the branches is sent to the main server where it is processed.

Advantages of distributing processing.

  1. The load on the Host computer is greatly reduced.
  2. The distribution of processing power increases efficiency, and also the speed of processing.
  3. The use of low cost minicomputers minimizes the cost in data processing.
  4. Delays in data processing are reduced.
  5. Provides better service to the customers.
  6. There is less risk of system breakdown.
  7. The design & implementation of the system is less complex due to decentralization.
  8. The level of expertise required is less.

Disadvantages of distributing processing system.

  1. It is expensive due to the extra cost of communication equipments.
  2. Data duplication is very common.
  3. Programming problems occur with Micro and Minicomputers.
  4. More training is needed for the users involved.

Review questions

  1. Most companies are now shifting from the use of centralized mainframe computers to the use of geographically distributed personal computers.  This method of data processing is known as Distributed data processing (DDP).

Required:

  • Name any three computing resources that can be distributed.
    • Name four examples of industries and business organizations that extensively use distributed processing systems.
    • List and explain three ways of networking microcomputers/personal computers to form a distributed data processing system.
    • Name three risks that might be associated with the distributed data processing system.

Interactive processing

Interactive processing occurs if the computer & the terminal user can communicate with each other.  It allows a 2-way communication between the user & the computer. 

As the program executes, it keeps on prompting the user to provide input or respond to prompts displayed on the screen.  In other words, the user makes the requests and the computer gives the responses.

In Interactive processing, the data is processed individually and continuously as transactions take place and output is generated instantly. 

Interactive processing is mostly applied in Ticket reservation systems.

Multi-processing systems

Multiprocessing refers to the processing of more than one task at the same time on different processors of the same computer.

In a multi-processing system, a computer may have 2 or more independent processors, which work together in a coordinated manner, and are sharing the same computer memory. 

This means that, at any given time, the processors could execute instructions from two or more different programs, or different parts of one program simultaneously.  In such systems, each CPU is dedicated to one type of application, e.g., one CPU may handle all terminal users, while another may process only the batch jobs.

The activities of the system are coordinated by the Multi-processing operating system.

Advantage: – if one CPU fails, the other(s) can take over the workload until repairs are made.

Review questions

  1. Explain the difference between Multi-Programming and Multi-Processing.

Remote job entry (RJE) systems.

This refers to batch processing where jobs are entered at a terminal remote from the computer and transmitted into the computer, e.g., by means of telecommunication links.

Conversational mode.

This is interactive computer operation where the response to the user’s message is immediate.

Factors to consider when selecting the Data processing mode.

  1. Type of computer configuration to install.
  • Suitability of accumulating data (transactions) into batches for processing.
  • How the processing time would be optimized.
  • How fast the information should be produced if it is to be used for decision-making.
  • Cost of acquiring the relevant hardware, software, storage media & the cost of maintenance.
  • Ease of development, use, and subsequent maintenance.
  • How the resources (e.g., files, I/O devices) would be controlled.
  • The data communication equipment needed, the cost involved & their convenience.
  • The need for sharing resources among several users.

Review questions

  1. Mention 5 factors to be considered when selecting the data processing mode suitable for use in organization.