Skip to main content

Operating System || Unit I ||Classification of Operating System

 

Operating System
Unit I

Classification of Operating System 

Desktop Systems 

· In Desktop Systems, Instead of maximizing the CPU and peripheral utilization, it is for maximizing user convenience and responsiveness. 

· These systems are called Desktop Systems and include PCs running Microsoft Windows and the Apple Macintosh

· Operating systems for these computers have benefited in several ways from the development of operating systems for mainframes

· Microcomputers were immediately able to adopt some of the technology developed for larger operating systems. 

· On the other hand, the hardware costs for microcomputers are sufficiently low that individuals have sole use of the computer, and CPU utilization is no longer a prime concern. 

· Thus, some of the design decisions made in operating systems for mainframes may not be appropriate for smaller systems. 

Distributed Operating System 

The motivation behind developing distributed operating systems is the availability of powerful and inexpensive microprocessors and advances in communication technology. 

These advancements in technology have made it possible to design and develop distributed systems consisting of many computers that are interconnected by communication networks. The main benefit of distributed systems is its low price/performance ratio.

Advantages Distributed Operating System 

1. As there are multiple systems involved, users at one site can utilize the resources of systems at other sites for resource-intensive tasks. 

2. Fast processing. 

3. Less load on the Host Machine. 

Types of Distributed Operating Systems 

Following are the two types of distributed operating systems used: 1. Client-Server Systems 

2. Peer-to-Peer Systems 

Client-Server Systems 

Centralized systems today act as server systems to satisfy requests generated by client systems. The general structure of a client-server system is depicted in the figure below: 

Server Systems can be broadly categorized as: Compute Servers and File Servers. 

Compute Server systems provide an interface to which clients can send requests to perform an action, in response to which they execute the action and send back results to the client. 

File Server systems provide a file-system interface where clients can create, update, read, and delete files. 

Peer-to-Peer Systems 

The growth of computer networks - especially the Internet and World Wide Web (WWW) – has had a profound influence on the recent development of operating systems. When PCs were introduced in the 1970s, they were designed for personal use and were generally considered standalone

computers. With the beginning of widespread public use of the Internet in the 1990s for electronic mail and FTP, many PCs became connected to computer networks. 

In contrast to the Tightly Coupled systems, the computer networks used in these applications consist of a collection of processors that do not share memory or a clock. Instead, each processor has its own local memory. 

The processors communicate with one another through various communication lines, such as high-speed buses or telephone lines. These systems are usually referred to as loosely coupled systems ( or distributed systems). The general structure of a client-server system is depicted in the figure below: 

Clustered Systems 

Clustered systems gather together multiple CPUs to accomplish computational work. 

The definition of the term clustered is not concrete; the general accepted definition is that clustered computers share storage and are closely linked via LAN networking. 

Clustering is usually performed to provide high availability.A layer of cluster software runs on the cluster nodes. Each node can monitor one or more of the others. If the monitored machine fails, the monitoring machine can take ownership of its storage, and restart the application(s) that were running on the failed machine. The failed machine can remain down, but the users and clients of the application would only see a brief interruption of service. 

Asymmetric Clustering - In this, one machine is in hot standby mode while the other is running the applications. The hot standby host (machine) does nothing but monitor the active server. If that server fails, the hot standby host becomes the active server.

Symmetric Clustering - In this, two or more hosts are running applications, and they are monitoring each other. This mode is obviously more efficient, as it uses all of the available hardware. 

Parallel Clustering - Parallel clusters allow multiple hosts to access the same data on the shared storage. Because most operating systems lack support for this simultaneous data access by multiple hosts, parallel clusters are usually accomplished by special versions of software and special releases of applications. 

Clustered technology is rapidly changing. Clustered system's usage and its features should expand greatly as Storage Area Networks(SANs). SANs allow easy attachment of multiple hosts to multiple storage units. Current clusters are usually limited to two or four hosts due to the complexity of connecting the hosts to shared storage. 

Real Time Operating System 

It is defined as an operating system known to give maximum time for each of the critical operations that it performs, like OS calls and interrupt handling. 

Hard Real-Time Operating Systems: 

The Real-Time Operating system which guarantees the maximum time for critical operations and completes them on time are referred to as Hard Real-Time Operating Systems. 

Soft Real-Time Operating Systems: 

While the real-time operating systems can only guarantee a maximum of the time, i.e. the critical task will get priority over other tasks, but no surety of completing it in a defined time. These systems are referred to as Soft Real-Time Operating Systems.


Handheld Systems 

Handheld systems include Personal Digital Assistants(PDAs), such as Palm-Pilots or Cellular Telephones with connectivity to a network such as the Internet. They are usually of limited size due to which most handheld devices have a small amount of memory, include slow processors, and feature small display screens. 

Many handheld devices have between 512 KB and 8 MB of memory. As a result, the operating system and applications must manage memory efficiently. This includes returning all allocated memory back to the memory manager once the memory is no longer being used. 

Currently, many handheld devices do not use virtual memory techniques, thus forcing program developers to work within the confines of limited physical memory. 

Processors for most handheld devices often run at a fraction of the speed of a processor in a PC. Faster processors require more power. To include a faster processor in a handheld device would require a larger battery that would have to be replaced more frequently. 

The last issue confronting program designers for handheld devices is the small display screens typically available. One approach for displaying the content in web pages is web clipping, where only a small subset of a web page is delivered and displayed on the handheld device. 

Some handheld devices may use wireless technology such as Bluetooth, allowing remote access to e-mail and web browsing. Cellular telephones with connectivity to the Internet fall into this category. Their use continues to expand as network connections become more available and other options such as cameras and MP3 players, expand their utility.


Popular posts from this blog

XML TECHNOLGY FAMILY #3 - Advantages of XML Over HTML, EDI, Databases

Advantages of XML Over HTML , EDI , Databases

Java Program to implement inheritance || Java Programming Lab Exercise 2.1

  IMPLEMENTATION OF INHERITANCE What is Inheritance ? Ø   The process by which one class acquires the properties(data members) and functionalities(methods) of another class is called  inheritance . Ø   The aim of inheritance is to provide the reusability of code so that a class has to write only the unique features and rest of the common properties and functionalities can be extended from the another class. Aim:             To write a java program to implement the concept of inheritance. Procedure: Open text editor(notepad) Create a base class called “StudentBase” Declare & define department, collegeName as private data members of string datatype. Since the private data members cannot be   accessed directly, we are using public getter & setter methods   to access the private members of base class Create a derived class called “StudentDerive” that extends the base class “StudentBase” Declare & define regNo, sName as default data members of string datatype.  

XML TECHNOLOGY FAMILY #2 - BENEFITS OF XML

BENEFITS OF XML