Types of operating systems (Part 2)

12.3.1.1 describe a real-time operating system  

12.3.1.2 describe a network operating system 

12.3.1.3 describe a batch processing operating system  

Types of operating systems (Part 2)

An operating system is a system program that organises and controls the general operation of the computer.

Functions of an operating system:

  • Provides an interface for computer interaction
  • Control of inputs and outputs
  • Interrupt handling
  • Management of hardware and peripherals
  • Error handling
  • Management and loading of software
  • Management of user accounts
  • File utilities (copy, save, sort, delete)
  • Processor management for multitasking
  • Memory management
  • Security (access rights, firewalls, etc)

Real-time operating system

A real-time operating system (RTOS) is a specialized type of computer operating system designed to provide predictable and guaranteed response times for critical tasks or processes. 

A real-time system is defined as a data processing system in which the time interval required to process and respond to inputs is so small that it controls the environment. The time taken by the system to respond to an input and display required updated information is termed the response time. So in this method, the response time is much less as compared to online processing.
Real-time systems are used when there are rigid time requirements on the operation of a processor or the flow of data and real-time systems can be used as a control device in a dedicated application. A real-time operating system must have well-defined, fixed time constraints, otherwise, the system will fail.

Real-time operating systems are commonly used in life-saving situations. It is enough to consider the following examples:

  • flight control system
  • the patient life support system in intensive care (heart rate monitoring)
  • radar systems
  • satellite monitoring systems
  • oil refinery
  • manufacture control
  • computer games
  • controlling robots

The advantages of real-time operating systems are as follows

  • Maximum consumption: RTOSs are designed to make the most efficient use of system resources, including the CPU, memory, and peripherals. They prioritize critical tasks and allocate resources accordingly, ensuring optimal utilization and maximum throughput.
  • Time-shifting: Real-time operating systems employ time-shifting techniques to prioritize and schedule tasks based on their timing constraints. Critical tasks are given higher priority and executed promptly, ensuring that they meet their deadlines. This time-shifting capability enables the system to handle time-critical operations effectively.
  • Focus on application: RTOSs allow developers to focus on application development and logic, rather than low-level system intricacies. They provide built-in services and features tailored for real-time applications, such as task scheduling, synchronization mechanisms, and inter-task communication, making it easier to develop and deploy real-time systems.
  • Error-free operation: Real-time operating systems enforce strict timing constraints and provide mechanisms to handle errors and exceptions in a deterministic manner. They offer features like fault detection, error recovery, and exception handling, ensuring reliable and error-free operation in critical applications.
  • Memory allocation: RTOSs often include memory management features, such as dynamic memory allocation and deallocation, to efficiently utilize available memory resources. They provide mechanisms for memory protection, preventing tasks from interfering with each other's memory space and ensuring system stability.

These advantages make real-time operating systems well-suited for applications where precise timing, responsiveness, and reliability are crucial, such as industrial control systems, medical devices, avionics, robotics, and real-time communication systems.

The disadvantages of real-time operating systems are as follows

  • Limited tasks: RTOS are typically designed to run a limited number of tasks concurrently. They prioritize productivity over multitasking capabilities. 
  • Use heavy system resources: RTOS needs to maintain a high level of responsiveness and cannot afford to be slowed down by resource constraints. As a result, the hardware running the RTOS may require more powerful hardware, which can increase costs.
  • The complex algorithms used in an RTOS are necessary to ensure tasks are completed on time, but they also complicate the design and maintenance of the system.
  • Processing device drivers and interrupt signals. The system needs to respond to interruptions and process signals in real time, which can be difficult if many devices or signals are frequent and unpredictable. This can increase the complexity of system design and become a source of errors and system failures.
  • Problems with thread priority. Thread priority management is a critical aspect of an RTOS. The system must ensure that higher-priority tasks are completed before lower-priority tasks.

More details

Useful article (in Russian)


Network operating system

A network operating system (NOS) is a type of computer operating system specifically designed to manage and facilitate the resources and operations of a computer network.

A Network Operating System runs on a server and provides the server the capability to manage data, users, groups, security, applications, and other networking functions. The primary purpose of the network operating system is to allow shared file and printer access among multiple computers in a network, typically a local area network (LAN), a private network, or other networks.


Examples of processes that demonstrate network operating systems:

  • file sharing and network printing;
  • manages user access to the network and its resources;
  • implementing and managing network security protocols is a critical function;
  • manage email services;
  • monitoring network traffic, diagnosing bottlenecks, and optimizing data flow across the network;
  • access and manage the network remotely.

The advantages of network operating systems are as follows:

  • Centralized servers are highly stable. This means mission-critical tasks such as data storage, process execution, and resource management are performed by dedicated servers. This not only improves performance but also improves overall network stability since servers are typically more reliable and less prone to failure than individual client computers.
  • Security. Network operating systems are managed centrally by the server, allowing for strict and consistent control. A centralized approach helps you efficiently update security protocols, manage user access controls, and monitor network activity to prevent unauthorized access or data leakage.
  • Easy integration of updates. Because critical components and software are centralized, updates or integration of new technologies need to be performed only on the servers. This reduces the time and complexity of updating each client computer on the network, resulting in cost savings and minimal disruption.
  • Remote access capabilities. The systems provide remote access to servers from different locations and through different types of systems. Employees within the same organization can access network resources, applications, and data from anywhere as long as they have an Internet connection.

The disadvantages of network operating systems are as follows:

  • High cost of purchasing and operating a server. Servers typically require more powerful hardware than individual workstations, which adds to the cost. Additionally, operating costs, including electricity to run servers and keep them cool, can be significant, especially in larger systems.
  • Dependency on central location. A centralized architecture can create a single point of failure where server problems can affect all users connected to the network.
  • The need for regular maintenance. Maintaining a network operating system requires maintenance to ensure security, efficiency, and stability. This requires a qualified system administrator.

Batch processing operating system

A batch processing operating system is a type of computer operating system that executes tasks or jobs in batches without requiring user intervention during their execution.

Batch processing is a technique in which an Operating System collects the programs and data together in a batch before processing starts.

An operating system does the following activities related to batch processing:

  • The OS defines a job that has a predefined sequence of commands, programs, and data as a single unit.
  • The OS keeps many jobs in memory and executes them without manual information.
  • Jobs are processed in the order of submission, i.e., first come first served fashion.
  • When a job completes its execution, its memory is released and its output gets copied into an output spool for later printing or processing.

Examples of using batch operating systems:

  • Payroll processing
  • Data processing for financial institutions
  • Utility bill generation
  • Processing of academic results
  • Image or video processing (images or videos need to be processed or converted into different formats)
  • Complex calculations in research and engineering
  • Astronomy and space research
  • Analysis of large datasets
  • Genomic sequencing and bioinformatics

Advantages of batch processing operating system

  • Efficient use of resources. Batch processing allows you to use system resources efficiently. Since jobs are processed in batches, the processor and other resources can be fully utilized during the processing period.
  • Saving users time. Users do not need to interact with the computer while batch processes are running.
  • Reducing computer downtime. Batch processing can be scheduled for times when the computer would otherwise be idle, such as overnight.
  • Automatic processing. Once configured, jobs can be executed automatically without user intervention.
  • Improved data management. With batch processing, data is often managed more systematically. Data is collected, processed, and then outputted, which can lead to a better organization and data management structure.
  • Reducing the number of processing errors. Operations are automated, reducing the likelihood of human error typically associated with manual data entry or processing.

Disadvantages of batch processing operating system

  • Lack of interaction. If a job requires any user intervention or an error occurs that requires immediate attention, the process cannot be stopped or modified until the current batch is completed.
  • Delayed results. Results are not immediate. Users have to wait for the entire batch to be processed, which can be ineffective for urgent tasks.
  • Difficult to debug and test. Identifying and correcting errors in a batch-processing system can be challenging. If an error occurs in one part of the package, it can affect all subsequent operations. This makes debugging more difficult compared to systems that process tasks individually.
  • Resource-intensive. Batch jobs can be resource intensive, consuming significant CPU and memory resources during execution.
  • Long response time in case of failures. If a batch processing system fails, it can take significant time to restart the process and recover lost data, which can be critical in some business environments.

Additionally on teach-ict.com

Modes of operation


Questions:

  1. Define the term "operating system".
  2. Name five types of OS.
  3. Explain the difference between Real-time OS and Batch-processing OS.
  4. Compare situations when we can use Network OS vs Real-time OS.

Exercises:

Ex. 1 Functions of OS (Designed by Olga Litvinova - CS teacher NIS Pavlodar)

Ex. 2

Ex. 3 Identify types of operating system

 


Exam questions:

Question 1a. Different operating systems have been developed with different operational characteristics. One of the operational characteristics of a real-time operating system is to produce output fast enough to affect the next input.
a) Give two further operational characteristics of a real-time operating system. (Marks: 2)
  • Answer.
    to support operations that are non-sequential in nature (1);
    to deal with a number of events that happen in parallel (1);
    to deal with events at unpredictable moments in time/ concept of monitoring &reacting (1);
Question 1b. 
b) Some real-time operating systems have to respond extremely quickly. Give one example of such a system and one example of a system where an extremely quick response is not essential.
Extremely quick: a system to ...
Not extremely quick: a system to...
(Marks: 2)
  • Answer.
    Extremely quick: a system to
    control a nuclear reactor (1);
    control a fly-by-wire aeroplane (1);
    control a life support machine / car navigation system (GPS) / Engine ECU / autopilot(1)
  • Answer.
    Not extremely quick: a system to
    Not so fast, to: manage climate control in a plant house/greenhouse (1);
    manage Traffic lights (1)

 


 

Категория: Operating system | Добавил: bzfar77 (11.01.2021)
Просмотров: 8537 | Теги: Batch processing OS, Real-time OS, operating system, Network OS | Рейтинг: 5.0/3
Всего комментариев: 0
avatar