1.1 Operating System Basics
An operating system is a program that acts as an interface between the user and the computer hardware and controls the execution of all kinds of programs.An operating system is the most important software that runs on a computer. It manages the computer's memory, processes, and all of its software and hardware. It also allows you to communicate with the computer with out knowing how to speak the computer's "language." Without an operating system, a computer is useless.
1.2 Need of Operating System
In earlier day's user had to design the application according to the internal structure of the hardware. Operating System was needed to enable the user to design the application without concerning the details of the computer's internal structure. In general the boundary between the hardware & software is transparent to the user.Usage of Operating System:
1. Easy interaction between the human & computer.
2. Starting computer operation automatically when power in turned on.
3. Loading & Scheduling user programs.
4. Controlling Input & Output.
5. Controlling Program execution.
6. Managing the use of main memory.
7. Providing security to users program.
1.3 Operating System Advantages and Disadvantages
The most well-known operating system are Windows, Mac OS and Linux, all of which have different versions. Although Windows is a PC-based operating system, it can be run on a Mac computer with the help of a programme called Parallels. Generally speaking, here is a brief summary of the pros and cons of each major operating system:
Windows
• Can be expensive, especially as compared to Linux, which is in most cases, is free.
• Easy to use, especially for new computer users, and plenty of help resources are available online.
• Although Microsoft Windows has made great improvements in terms of reliability in its recent versions, it still lags behind as compared to its competitors.
• It has a large library of available software, games, and utilities, although most of them are quite expensive.
• All hardware manufacturers make drivers, and provide support services for Windows operating system.
• Affinity towards irus attacks, is a major disadvantage associatiated with the windows operating system.
Windows
• Can be expensive, especially as compared to Linux, which is in most cases, is free.
• Easy to use, especially for new computer users, and plenty of help resources are available online.
• Although Microsoft Windows has made great improvements in terms of reliability in its recent versions, it still lags behind as compared to its competitors.
• It has a large library of available software, games, and utilities, although most of them are quite expensive.
• All hardware manufacturers make drivers, and provide support services for Windows operating system.
• Affinity towards irus attacks, is a major disadvantage associatiated with the windows operating system.
Linux
• It is an open source OS, which in most cases, is free.
• Inexperienced computer users often find it difficult to get to get a grips on Linux.
• It is very reliable and rarely freezes.
• Fewer computer programs, games and utilities are available for Linux.
• Many programs are free or open source, even very complex ones.
• There are still some manufacturers that do not offer hardware support for Linux OS, although there are fewer every year.
• The open source nature of Linux allows more advanced users to customise the code as they wish.
• Fewer people use Linux, therefore it is more difficult to find someone fully familiar with it, although there are vast resources online.
Main memory provides a fast storage that can be accessed directly by the CPU. So, for a program to be executed, it must be in the main memory of a system. Operating System does the following activities for memory management.
In keeps a track of the Primary Memory i.e. what part of it is in use, and by whom, and what partof it is not in use.
In multiprogramming, OS decides which process should get the required memory when, and how much.
It allocates the memory, when a program requests it to do so.
It de-allocates the memory, when a program no longer needs it, or has been terminated.
It keeps track of the processor, and the status of the process. The program responsible for this task, is known as traffic controller.
It allocates the processor(CPU) to a certain process.
It de-allocates the processor, when the processor is no longer required.
Device Management
Operating System manages device communication via their respective drivers. An Operating System, does the following activities for device management.
It keeps a track of all the devices. the program responsible for this task is known as the I/O controller.
It decides which process gets the device, when, and for how much time.
It allocates a device in the most efficient way. It de-allocates the devices.
File Management
A file management system is normally organized in directories, for easy navigation and usage. These directories may contain files and other directions. An Operating System does the following activities for file management.
Keeps track of information, location, uses, status etc. The collective facilities are often known as file system.
Decides who gets the resources.
Allocates the resources.
De-allocates the resources.
Other Important Activities
Following are some of the important activities that, an Operating System does.
Security : By means of password and similar other techniques, an operating system prevents unauthorized access to programs and dat ...
Control over system performance : Records delays between request for a service and a response from the system.
Job accounting : Keeps a track of time, and others resources used by various jobs, and users.
Error detecting aids : Tracking of dumps, traces, error messages and other debugging and error detecting aids.
Coordination between other software and users : Coordination and assignment of compilers, interpreters, assemblers, and other software, to other users of computer systems.
1.5 Types of Operating System
Operating systems are there from the very first computer generation. Operating systems keep evolving over the period of time. Following are few of the most important types of Operating System, which are most commonly used by users, globally.
Batch operating system
The users of batch Operating System do not interact with the computer directly. Each user prepares his job on an off-line device like a punch card, and submits it to the computer operator. To speed up the processing, jobs with similar needs are batched together and run as a group. Thus, the programmers leave left their programs with the operator. The operator then sorts the programs into batches with similar requirements.
The problems with Batch Systems are following.
Lack of interaction between the user and the job that needs to be done.
CPU is often idle, because the speed of the mechanical I/O devices are usually slower than the CPU.
Difficult to provide the desired priority.
Time-sharing Operating Systems
Time sharing is a technique which enables many users, located at various terminals, to use a particular computer system at the same time. Time-sharing or multitasking is a logical extension of multiprogramming. the Processor's time, which is shared among multiple users simultaneously, is termed as time-sharing. The main difference between multiprogrammed Batch Systems and TimeSharing Systems is that in case of multiprogrammed Batch Systems, the objective is to maximize the processor is use, whereas in Time-Sharing Systems, the objective is to minimize the response time.
Multiple jobs are executed by the CPU by switching between them, but the switches occur very frequently. Thus, the users are able to can receive an immediate response. For example, in a transaction process, the processor executes each user program, in a short burst or quantum of computation. That is, if n users are present, each user can get an appropriate time quantum. When a user submits a command, the response time gets minimised.
Operating System uses CPU scheduling and multiprogramming to provide each user with a small portion of time. Computer systems that have been designed primarily to serve as Batch Systems, have been modified to Time-Sharing Systems.
Advantages of Timesharing Operating Systems are following :
Provide the advantage of quick response.
Avoid duplication of software.
Reduce the CPU is idle time.
Disadvantages of Timesharing Operating Systems are following :
Problem of reliability.
Question of security and integrity of user programs and data.
Problem of data communication.
Distributed Operating System
Distributed Operating Systems use multiple central processors to serve multiple real time application and multiple users. Data processing jobs are distributed among the processors accordingly, so that one can perform each job most efficiently.
The processors communicate with one another through various communication lines (such as highspeed buses or telephone lines). These are referred as loosely coupled systems, or distributed systems. Processors in a distributed system, may vary in size and function. These processors are referred as sites, nodes, computers, and so on.
The advantages of Distributed Systems are following:
With resource sharing facility, the users at one site are able to use the resources available at another site.
These systems speeds up the exchange of data with one another, via electronic mail.
If one site fails in a distributed system, the remaining sites can potentially continue to operate.
These systems provide much better service to the customers.
Reduction of load, on the host computer.
Reduction of delays in data processing.
Network operating System
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 files, and printers access among multiple computers Linxed in a network. Typically a local area network, (LAN), a private network, or other networks are examples of network operating systems Other examples are Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare, and BSD.
The advantages of network operating systems are following :
Their centralized servers are highly stable.
Security is server managed.
Can be easily upgraded to newer technologies and hardware which can be easily integrated into the systems.
Remote access to servers is possible from different locations and typesof systems.
The disadvantages of network operating systems are following :
High cost of buying, and running a server.
Dependency on a central location, for most operations.
Regular maintenance, and updates are required.
Real Time Operating System
Real Time System is defines 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 very effectively. Real time processing is always online, space whereas an off-line system needs not be real time. The time taken by the system to respond to an input and display the required information is termed as response time. So in this methods, the response time is very less, as compared to online processing.
Real-Time Operating Systems are used when there are very 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 for a dedicated application. Real-Time Operating System have a well-defined, fixed time constraint or otherwise systems such would fail. For example scientific experiments, medical imaging systems, industrial control systems, weapon systems, robots, home-appliance controllers, and air traffic control systems all use Real-Time Operating Systems etc.
There are two types of Real-Time Operating Systems.
Hard Real-Time Systems
Hard Real-Time Systems guarantee that critical tasks get completed on time. In Hard Teal-Time systems secondary storage is limited or missing with data stored in ROM. In these systems virtual memory is almost rile.
Soft Real-Time Systems
Soft Real-Time Systems are less restrictive. Critical Real-Time tasks get priority over other tasks, and these systems retain the priority until the tasks get completed. Soft Teal-Time systems, have limited utility than hard real-time systems. For example, Multimedia, virtual reality, Advanced Scientific Projects like undersea exploration and planetary rovers etc work on soft Real-Time operating system.
1.6 Operating System Properties
Following are few of the very important tasks, that an Operating System handles :
Batch processing
Batch processing is a technique, in which the Operating System collects a program and its data together in a batch before the processing starts. An operating system does the following activities related to batch processing.
An operating system defines a that has a predefined sequence of commands, programs, and data, as a single unit.
An operating system keeps a defined number a jobs in the memory, and executes them without any manual information.
The jobs are processed, in the order of submission i.e In a first come first served fashion.
When a job completes its execution, its memory is released and the output for the job, gets copied in the form of an output for later printing, or processing.
Advantages
Batch processing takes much of the work of the operator to the computer.
Increases performance, as soon as a new job get started, the previous job gets finished without any manual intervention.
Disadvantages
These are difficult to debug programs.
A job can enter into an infinite loop.
Due to lack of protection, one batch job can affect the pending jobs considerably.
Multitasking
Multitasking refers to a term where multiple jobs can be executed by a CPU, by simultaneously switching between different software and programs. In multitasking, switches occur so frequently that the users are able to interact with each program while they are running. An operating system does the following activities related to multitasking :
When two or more programs are residing in the memory, at the same time, then sharing the processor is referred to as multiprogramming. Multiprogramming assumes a single shared processor. Multiprogramming increases CPU utilization by organizing jobs, so that the CPU always has one to execute.
Following figure shows the memory layout for a multiprogramming system :
Operating System does the following activities related to multiprogramming :
Advantages
Disadvantages
Interactivity refers that a user is able to interact with the computer system. Operating system does the following activities related to interactivity :
Real Time System
A Real time system, usually represents a dedicated, embedded systems. Operating system does the following activities related to real time system activity.
Distributed Environment
Distributed environment refers to multiple independent CPUs or processors, in a computer system. Operating System does the following activities related to distributed environment.
Spooling is an acronym used for simultaneous peripheral operations online. Spooling refers to putting data of various I/O jobs in a buffer. This buffer is a special area in the memory or the hard disk, which is accessible to I/O devices. Operating system does the following activities related to distributed environment:
Advantages
1.7 Popular Operating Systems
The most popular microcomputer Operating Systems are DOS, Windows 3.x, Windows 95, OS/2, Windows NT, and Macintosh Systems. UNIX is a popular Operating System that is available for microcomputers, minicomputers, and mainframe computer systems. All of these above operating systems show the following details:
DOS
DOS stands for Disk Operating System. In the early 1980s, Microsoft got the right to QDOS (Quick and Dirty Operating System) developed by a small company, Seattle Computer, and then sold it under the name MS-DOS.
Advantages and Disadvantages
Advantages: DOS has many advantages. The advantages are the major reasons for learning DOS. DOS is the most popular microcomputer operating system for IBM computers, and is must compatible and sold maximum worldwide. It runs thousands of applications, and is easy to use. DOS runs on low- priced IBM computers and compatibles. DOS does not require an expensive computer system, while some others still do.
Disadvantages: DOS is a single tasking Operating System. It can support only one user and one program, at a time. Another disadvantage is, that DOS has a character-based interface. A graphical user interface is easier for the users, than the character-based interface.
Windows 3.x
This is a graphics-based operating environment from Microsoft. This Operating System runs under DOS. Thus, it is usually called "DOS with windows." Windows Operating System is very similar to the Macintosh desktop environment. Windows 3.x is a major upgrade of Microsoft's earlier versions. It provides a DOS extender, that MICROSOFT.WINDOWS? allows Windows 3.x applications to run in up to 16MB of memory.
Advantages and Disadvantages
Advantages: Windows allows multitasking capability, and more Primary Memory. Windows provides a memory manager to allow users to access more than 640KB of conventional memory. Another benefit of it is, that it has a dynamic data exchange function. A graphical user interface (GUI), against the character- based approach is its another advantage.
Disadvantages: Windows 3.x can handle multitasking, but it actually switch is between tasks. Windows 3.x is not a multithreaded operating system. The other disadvantage is that Windows 3.x was not originally intended for networks.
Windows 95 Microson
Windows 95 has upgraded its earlier versions (Windows 3.x) in many ways. It has a new 3-D interface. It is mostly a 32- bit system, although it has 16-bit components included for compatibility with Windows 3.x ., Windows 95 does not need to have a separate DOS. It integrates all DOS services. A Windows 95 system runs in a protected mode. This means that it speeds up the processors, and provides more safety.
Advantages and Disadvantages
Advantages: This Operating System provides compatibility with existing Windows and DOS programs. It also offers compatibility with existing Windows and DOS device drivers. It works as a standalone computer, and in a networked environment for both desktop and mobile users. It supports Windows for Workgroups, Novell, and UNIX-style networks. It is easier to learn and use, and gives its users better performance, and more capacity.
Disadvantages: Windows 95 still has limits from 16-bit components retained for backward compatibility with a 16-bit application. It does not give much benefit to the 16-bit applications. It costs users significantly.
OS/2
OS/2 stands for Operating System 2. This Operating Systemisanextremely powerful operating system made for powerful microcomputers, and networking. OS/2 was designed to avoid some of the most serious limitations ofDOS. OS/2 runs in 4MB of memory, although it runs well in an 8MB system. It requires about 30MB of hard disk space. OS/2 WARP, the Windows version of OS/2, performs reasonably well in a 4MB system, and requires lesser disk space. OS/2 provides a dual boot feature that allows users to boot up in either DOS or OS/2. OS/2 uses folders much like those in Macintosh, and in UNIX GUIs.
Advantages and Disadvantages
Advantages: It is not affected by requirements of DOS and Windows, that certain device drivers live in the first 640KB of memory. Instead, OS/2 can load network adapter drivers, multimedia interfaces, CD-ROM software or video drivers into memory as required. This Operating System allows multitasking and dynamic data interchange. OS/2 was developed to assist in the sharing of data and programs among several microcomputers. OS/2 solidly supports Novell Netware and TCP/IP. Most network interface cards are supported.
Disadvantages: OS/2 Shell or WARP is similar to Windows, but is not identical. It may take users a while to adjust to some of the differences. The application programs developed specifically for OS/2 are not as many as those for Windows, although more and more application developers are striving to convert and develop programs for OS/2, these days.
UNIX
UNIX was originally developed in 1969 by K. Thompson and Dennis Ritchie, and others in the Bell Laboratories of AT& T in USA. Most computer science departments of universities have been using UNIX. UNIX initially became popular in the industry for many years. After UNIX got widespread, it began to set used by scientists and engineers. It is because of its scientific and technical orientation. It is less well known amongst business people. UNIX has become a major player in the microcomputer world. The difficulty of learning it is also because of the change in its graphical user interface. This is a multiuser, multitasking operating system that runs on many different computer systems from microcomputer to mainframe. UNIX is written in 'C' programming language.
Advantages and Disadvantages
Advantages: UNIX is a portable operating system that can be used with many different computers from mainframe to microcomputer. The other Operating Systems such as DOS, Windows, Mac operating system, and OS/2 cannot be used for other systems. One of the many strong features of UNIX is, multitasking. UNIX allows its users to run multiple programs simultaneously. UNIX also shares it amongst its users.
Networking is another strong feature of a UNIX Operating System. UNIX can be connected through several different kinds of equipments. It can share files among them.
Disadvantages: Although UNIX can do many things, it can be difficult for novice microcomputer users to understand. This is a reason that it has made a limited impact on global users till date.
UNIX was a minicomputer Operating System used by programmers and computer science professionals some time before the rise of the microcomputers.
Limited application program are another disadvantage of UNIX. UNIX off-the-self programs for microcomputers are limited. There is no particular standard for UNIX. This may be the biggest problem for the popularity of UNIX . There is also a particular standard GUI for mening UNIXs.
Linux
Linux is a free open-source operating system based on Unix. Linux was originally created by 'Linus Torvalds,' with the assistance of developers from around the globe. Linux is free to download, edit, and distribute. Linux is a very powerful operating system, and it is gradually becoming popular throughout the world.
Advantages of Linux
Low cost: There is no need to spend time and huge amount of money to obtain licenses. There is no need to worry about any software that you use in Linux all are free to obtain.
Stability: Linux has high stability as compared to other Operating Systems. There is no need to reboot a Linux system to maintain its performance levels. Rarely it freeze up or slows down.
Performance: Linux provides high performance on various networks. It has the ability to handle large numbers of users simultaneously.
Networking: Linux provides a strong support for network functionality; client and server systems can be easily set up on any computer having Linux. It can perform tasks like network backup more faster than other Operating Systems.
Flexibility: Linux is very flexible. Linux can be used for high performance server applications, desktop applications, and embedded systems. You can also restrict the use of specific computers with Linux.
Compatibility: It runs on all common Unix software packages, and can process all common file formats.
Fast and easy installation: Linux distribution comes with user-friendly installation.
Better use of hard disk: Linux uses its resources well enough, even when the hard disk is almost full.
Multitasking: Linux is a multitasking Operating System. It can handle many things at the same time.
Security: Linux is one of the most secure Operating Systems.
Disadvantages of Linux
The Hardware support from certain vendors, is not too good for Linux.
The installation process of the software/ application, is not as easy as in Linux.
1.8 Mobile Operating Systems
The Mobile Operating Systems are base infrastructure software components of a computerized system.
They control all the basic operations of the computer (or other electronic devices such as PDA, Smartphone, etc.). The mobile Operating System allows a user to install and execute third-party applications (commonly called apps for short), usually by adding new functionality to a device.
Amongst the most popular Mobile Computer Operating Systems are Microsoft's Windows and Apple's Mac OS, along with the various distributions of Linux.
The most popular OS's for mobile devices (smartphones and tablets) are the Apple's iOS, and Google's Android, and they are the only ones that are still showing growth. Down the rank there are RIM's, BlackBerry OS, and Microsoft's Windows Phone. Symbian holds a distant fifth place, while merely a year ago, it was still the most widely used mobile OS.
Symbian held its top position for years, but its market share has been slowly fading away ever since touch-operated smartphones became the norm and Symbian failed to deliver an intuitive touch UI. Almost ten years ago, Microsoft's Windows Mobile Operating System was a strong player too, offering the first touch screen Smartphone experience with the Pocket PCs powered through its Operating System.
Today mobile devices with a proper Operating System are called Smartphones, and with these users have a wide choice of applications to go in for such as games, productivity apps, communication or social media apps, digital maps, etc.
While the major players these days are clear, over the years we have seen the emergence of numerous mobile OS projects including, but not limited to Palm's webOS, Samsung's Bada OS, Nokia's MeeGo OS, LiMo OS, Blackberry's Playbook OS, and many more. Recently, the Jolla's Sailfish OS and Mozilla's Firefox OS have also come into play.
1.9 Windows 7 System Tools
Windows 7 is an Operating System launched by Microsoft in 2009 as an upgrade 8XP or Vista. Some of the system tools for windows 7 Operating System are as follows:
Disk Cleanup
You can use 'Disk Cleanup' to reduce the number of unnecessary files on your drives, which can help your PC run faster. It can delete the temporary files and system files, empty the Recycle Bin, and a variety of other items that you might no longer need.
To delete files
The following procedure deletes files associated with your user account. You can also use Disk Cleanup to delete system files on your PC.
Fragmentation makes your hard disk do extra work that can slow down your computer. Disk Defragmenter rearranges fragmented data so that your hard disk can work more efficiently. Disk Defragmenter runs on a schedule, but you can also defragment your hard disk manually anytime.
1. Open the Disk Defragmenter by clicking the Start button, clicking All Programs, click Accessories, click System Tools, and then click Disk Defragmenter. If you are prompted for an administrator password or confirmation, type the password or provide confirmation.
2. Now Click Defragment.
Disk Defragmenter might take from several minutes to a few hours to finish, depending on the size and degree of fragmentation of your hard disk. You can still use your computer during the defragmentation process.
System Restore
System Restore helps you to restore your computer's system files to an earlier point in time. It is a way to undo system changes to your computers without affecting your personal files, such as e-mails, documents, or photos.
System Restore uses a feature called as system protection, to regularly, create, and save the restored points on your computer. These restored points contain information about registry settings, and other system information, that Windows uses. You can also create restore points manually.
Before you start System Restore, save all the open files, and close all the programs. System Restore will restart your PC.
1. Open System Restore by clicking the Start button . In the search box, type System Restore, and then, in the list of results, click System Restore . If you' are prompted for providing an administrator password or confirmation, type the password or provide the confirmation.
2. Follow the steps in the wizard to choose a restore point, and restore your computer.
• Inexperienced computer users often find it difficult to get to get a grips on Linux.
• It is very reliable and rarely freezes.
• Fewer computer programs, games and utilities are available for Linux.
• Many programs are free or open source, even very complex ones.
• There are still some manufacturers that do not offer hardware support for Linux OS, although there are fewer every year.
• The open source nature of Linux allows more advanced users to customise the code as they wish.
• Fewer people use Linux, therefore it is more difficult to find someone fully familiar with it, although there are vast resources online.
Mac OS
- MAC computers are more expensive generally than PCs.
- MAC is a much more secure OS, and is far less open to viruses and malware.
- Stability is a major advantage associated with Linux OS. It very rarely crashes, loses data, or freezes.
- Fewer computer programs and games, are available for MACs.
- As most computer components of MACs are made by Apple, there are not many driver issues, unlike with other PCs, which are made by many different manufacturers, MAC OS is not as customizable, as Windows, or Linux OS.
- Easy to use.
- User friendly.
- Intermediate between all hardwares and software's of the system.
- No need to know any technical languages.
- Provide a platform for all programs.
- If any problem gets affected in these operations systems, you may lose all the content which has been stored already.
- Unwanted users can use your system, on their own.
1.4 Functions of an Operating System
Following are some important functions of an Operating System.- Memory Management
- Processor Management
- Device Management
- File Management
- Security
- Control over systems performance
- Job accounting
- Error detecting aid
Memory Management
Memory management refers to management of the 'Primary Memory' or the 'Main Memory.' Main memory is basically a large array of words or bytes, where each word or byte has its own address.Main memory provides a fast storage that can be accessed directly by the CPU. So, for a program to be executed, it must be in the main memory of a system. Operating System does the following activities for memory management.
In keeps a track of the Primary Memory i.e. what part of it is in use, and by whom, and what partof it is not in use.
In multiprogramming, OS decides which process should get the required memory when, and how much.
It allocates the memory, when a program requests it to do so.
It de-allocates the memory, when a program no longer needs it, or has been terminated.
Processor Management
In a multiprogramming environment, the operating system decides which program gets the processor, when, and in how much time. This function is called as Process Scheduling. The Operating System does the following activities for as processor management.It keeps track of the processor, and the status of the process. The program responsible for this task, is known as traffic controller.
It allocates the processor(CPU) to a certain process.
It de-allocates the processor, when the processor is no longer required.
Device Management
Operating System manages device communication via their respective drivers. An Operating System, does the following activities for device management.
It keeps a track of all the devices. the program responsible for this task is known as the I/O controller.
It decides which process gets the device, when, and for how much time.
It allocates a device in the most efficient way. It de-allocates the devices.
File Management
A file management system is normally organized in directories, for easy navigation and usage. These directories may contain files and other directions. An Operating System does the following activities for file management.
Keeps track of information, location, uses, status etc. The collective facilities are often known as file system.
Decides who gets the resources.
Allocates the resources.
De-allocates the resources.
Other Important Activities
Following are some of the important activities that, an Operating System does.
Security : By means of password and similar other techniques, an operating system prevents unauthorized access to programs and dat ...
Control over system performance : Records delays between request for a service and a response from the system.
Job accounting : Keeps a track of time, and others resources used by various jobs, and users.
Error detecting aids : Tracking of dumps, traces, error messages and other debugging and error detecting aids.
Coordination between other software and users : Coordination and assignment of compilers, interpreters, assemblers, and other software, to other users of computer systems.
1.5 Types of Operating System
Operating systems are there from the very first computer generation. Operating systems keep evolving over the period of time. Following are few of the most important types of Operating System, which are most commonly used by users, globally.
Batch operating system
The users of batch Operating System do not interact with the computer directly. Each user prepares his job on an off-line device like a punch card, and submits it to the computer operator. To speed up the processing, jobs with similar needs are batched together and run as a group. Thus, the programmers leave left their programs with the operator. The operator then sorts the programs into batches with similar requirements.
The problems with Batch Systems are following.
Lack of interaction between the user and the job that needs to be done.
CPU is often idle, because the speed of the mechanical I/O devices are usually slower than the CPU.
Difficult to provide the desired priority.
Time-sharing Operating Systems
Time sharing is a technique which enables many users, located at various terminals, to use a particular computer system at the same time. Time-sharing or multitasking is a logical extension of multiprogramming. the Processor's time, which is shared among multiple users simultaneously, is termed as time-sharing. The main difference between multiprogrammed Batch Systems and TimeSharing Systems is that in case of multiprogrammed Batch Systems, the objective is to maximize the processor is use, whereas in Time-Sharing Systems, the objective is to minimize the response time.
Multiple jobs are executed by the CPU by switching between them, but the switches occur very frequently. Thus, the users are able to can receive an immediate response. For example, in a transaction process, the processor executes each user program, in a short burst or quantum of computation. That is, if n users are present, each user can get an appropriate time quantum. When a user submits a command, the response time gets minimised.
Operating System uses CPU scheduling and multiprogramming to provide each user with a small portion of time. Computer systems that have been designed primarily to serve as Batch Systems, have been modified to Time-Sharing Systems.
Advantages of Timesharing Operating Systems are following :
Provide the advantage of quick response.
Avoid duplication of software.
Reduce the CPU is idle time.
Disadvantages of Timesharing Operating Systems are following :
Problem of reliability.
Question of security and integrity of user programs and data.
Problem of data communication.
Distributed Operating System
Distributed Operating Systems use multiple central processors to serve multiple real time application and multiple users. Data processing jobs are distributed among the processors accordingly, so that one can perform each job most efficiently.
The processors communicate with one another through various communication lines (such as highspeed buses or telephone lines). These are referred as loosely coupled systems, or distributed systems. Processors in a distributed system, may vary in size and function. These processors are referred as sites, nodes, computers, and so on.
The advantages of Distributed Systems are following:
With resource sharing facility, the users at one site are able to use the resources available at another site.
These systems speeds up the exchange of data with one another, via electronic mail.
If one site fails in a distributed system, the remaining sites can potentially continue to operate.
These systems provide much better service to the customers.
Reduction of load, on the host computer.
Reduction of delays in data processing.
Network operating System
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 files, and printers access among multiple computers Linxed in a network. Typically a local area network, (LAN), a private network, or other networks are examples of network operating systems Other examples are Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare, and BSD.
The advantages of network operating systems are following :
Their centralized servers are highly stable.
Security is server managed.
Can be easily upgraded to newer technologies and hardware which can be easily integrated into the systems.
Remote access to servers is possible from different locations and typesof systems.
The disadvantages of network operating systems are following :
High cost of buying, and running a server.
Dependency on a central location, for most operations.
Regular maintenance, and updates are required.
Real Time Operating System
Real Time System is defines 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 very effectively. Real time processing is always online, space whereas an off-line system needs not be real time. The time taken by the system to respond to an input and display the required information is termed as response time. So in this methods, the response time is very less, as compared to online processing.
Real-Time Operating Systems are used when there are very 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 for a dedicated application. Real-Time Operating System have a well-defined, fixed time constraint or otherwise systems such would fail. For example scientific experiments, medical imaging systems, industrial control systems, weapon systems, robots, home-appliance controllers, and air traffic control systems all use Real-Time Operating Systems etc.
There are two types of Real-Time Operating Systems.
Hard Real-Time Systems
Hard Real-Time Systems guarantee that critical tasks get completed on time. In Hard Teal-Time systems secondary storage is limited or missing with data stored in ROM. In these systems virtual memory is almost rile.
Soft Real-Time Systems
Soft Real-Time Systems are less restrictive. Critical Real-Time tasks get priority over other tasks, and these systems retain the priority until the tasks get completed. Soft Teal-Time systems, have limited utility than hard real-time systems. For example, Multimedia, virtual reality, Advanced Scientific Projects like undersea exploration and planetary rovers etc work on soft Real-Time operating system.
1.6 Operating System Properties
Following are few of the very important tasks, that an Operating System handles :
Batch processing
Batch processing is a technique, in which the Operating System collects a program and its data together in a batch before the processing starts. An operating system does the following activities related to batch processing.
An operating system defines a that has a predefined sequence of commands, programs, and data, as a single unit.
An operating system keeps a defined number a jobs in the memory, and executes them without any manual information.
The jobs are processed, in the order of submission i.e In a first come first served fashion.
When a job completes its execution, its memory is released and the output for the job, gets copied in the form of an output for later printing, or processing.
Advantages
Batch processing takes much of the work of the operator to the computer.
Increases performance, as soon as a new job get started, the previous job gets finished without any manual intervention.
Disadvantages
These are difficult to debug programs.
A job can enter into an infinite loop.
Due to lack of protection, one batch job can affect the pending jobs considerably.
Multitasking
Multitasking refers to a term where multiple jobs can be executed by a CPU, by simultaneously switching between different software and programs. In multitasking, switches occur so frequently that the users are able to interact with each program while they are running. An operating system does the following activities related to multitasking :
- The user gives instructions to the operating system or to a program directly, and receives an immediate response.
- Operating System handles multitasking in a way that it can handle multiple operations/executes multiple programs at the same time.
- Multitasking Operating Systems, are also known asBrowser Time-Sharing Systems.
- These Operating Systems are developed to provide interactive use of a computer system, at a reasonable cost.
- A Time-Shared Operating System uses the concept of CPU scheduling, and multiprogramming, to provide each user with a small portion of a time-shared CPU.
- Each user has at least one separate program, in the memory.
- A program that is loaded in the memory and is executing, is commonly referred to as a 'Process'.
- When a process executes, it typically executes for only a very short time, before it either finishes or needs to perform an interactive operation.
- Since an interactive I/O typically runs at a user's speed, it may take a long time to get completed. During this time CPU can be utilized by another process.
- An Operating System allows different users, to share a computer simultaneously. Since each action or command in a time-shared system tends to be short, only a little CPU time is needed for each user.
- As a system switches CPU rapidly from one user/program to the next, each user is given the impression that he/she has his/her own CPU, whereas actually one CPU is being shared among many users.
When two or more programs are residing in the memory, at the same time, then sharing the processor is referred to as multiprogramming. Multiprogramming assumes a single shared processor. Multiprogramming increases CPU utilization by organizing jobs, so that the CPU always has one to execute.
Following figure shows the memory layout for a multiprogramming system :
Operating System does the following activities related to multiprogramming :
- The Operating System keeps several jobs in the memory at the same time.
- This set of jobs is a subset of the jobs kept in the job pool.
- The Operating System picks and begins to execute, one of the jobs in the memory.
- Multiprogramming operating systems, monitor the state of all active programs and system resources using memory management programs to ensures that the CPU is never idle, unless there are no jobs available.
Advantages
- High and efficient CPU utilization.
- User feels that many programs are allotted to the CPU, almost simultaneously.
Disadvantages
- CPU scheduling is required.
- To accommodate many jobs in the memory, memory management is required.
Interactivity refers that a user is able to interact with the computer system. Operating system does the following activities related to interactivity :
- The Operating System provides user an interface to interact with system.
- The Operating System managers input devices to take inputs from the users. For example, a keyboard.
- The Operating System manages output devices to show outputs to the other user. For example, a Monitor.
- The Operating System Response time needs to be short, since the user submits and waits for the result to came.
Real Time System
A Real time system, usually represents a dedicated, embedded systems. Operating system does the following activities related to real time system activity.
- In such systems, Operating Systems typically read from and react to, sensor data.
- The Operating System must guarantee response to events within fixed periods of time, to ensure correct performance.
Distributed Environment
Distributed environment refers to multiple independent CPUs or processors, in a computer system. Operating System does the following activities related to distributed environment.
- An Operating System distributes computation logics among several physical processors.
- The processors do not share a memory, or a clock.
- Each processor has its own local memory.
- An Operating System manages a communication between the processors. They communicate with each other through various communication lines.
Spooling is an acronym used for simultaneous peripheral operations online. Spooling refers to putting data of various I/O jobs in a buffer. This buffer is a special area in the memory or the hard disk, which is accessible to I/O devices. Operating system does the following activities related to distributed environment:
- An Operating System handles I/O device data spooling as devices have different data access rates.
- An Operating System maintains a spooling buffer, which provides a waiting station, where data can rest while the slower devices catch up.
- An Operating System maintains parallel computation because of spooling process, as a computer can perform I/O in a parallel fashion. It becomes possible to have the computer read the data from a tape, write data to disk, and to write it out to a tape printer, while it is doing its computing task.
Advantages
- The spooling operation uses a disk as a very large buffer.
- Spooling is capable of overlapping I/O operation for one job with the processor operations for another job.
1.7 Popular Operating Systems
The most popular microcomputer Operating Systems are DOS, Windows 3.x, Windows 95, OS/2, Windows NT, and Macintosh Systems. UNIX is a popular Operating System that is available for microcomputers, minicomputers, and mainframe computer systems. All of these above operating systems show the following details:
DOS
DOS stands for Disk Operating System. In the early 1980s, Microsoft got the right to QDOS (Quick and Dirty Operating System) developed by a small company, Seattle Computer, and then sold it under the name MS-DOS.
Advantages and Disadvantages
Advantages: DOS has many advantages. The advantages are the major reasons for learning DOS. DOS is the most popular microcomputer operating system for IBM computers, and is must compatible and sold maximum worldwide. It runs thousands of applications, and is easy to use. DOS runs on low- priced IBM computers and compatibles. DOS does not require an expensive computer system, while some others still do.
Disadvantages: DOS is a single tasking Operating System. It can support only one user and one program, at a time. Another disadvantage is, that DOS has a character-based interface. A graphical user interface is easier for the users, than the character-based interface.
Windows 3.x
This is a graphics-based operating environment from Microsoft. This Operating System runs under DOS. Thus, it is usually called "DOS with windows." Windows Operating System is very similar to the Macintosh desktop environment. Windows 3.x is a major upgrade of Microsoft's earlier versions. It provides a DOS extender, that MICROSOFT.WINDOWS? allows Windows 3.x applications to run in up to 16MB of memory.
Advantages and Disadvantages
Advantages: Windows allows multitasking capability, and more Primary Memory. Windows provides a memory manager to allow users to access more than 640KB of conventional memory. Another benefit of it is, that it has a dynamic data exchange function. A graphical user interface (GUI), against the character- based approach is its another advantage.
Disadvantages: Windows 3.x can handle multitasking, but it actually switch is between tasks. Windows 3.x is not a multithreaded operating system. The other disadvantage is that Windows 3.x was not originally intended for networks.
Windows 95 Microson
Windows 95 has upgraded its earlier versions (Windows 3.x) in many ways. It has a new 3-D interface. It is mostly a 32- bit system, although it has 16-bit components included for compatibility with Windows 3.x ., Windows 95 does not need to have a separate DOS. It integrates all DOS services. A Windows 95 system runs in a protected mode. This means that it speeds up the processors, and provides more safety.
Advantages and Disadvantages
Advantages: This Operating System provides compatibility with existing Windows and DOS programs. It also offers compatibility with existing Windows and DOS device drivers. It works as a standalone computer, and in a networked environment for both desktop and mobile users. It supports Windows for Workgroups, Novell, and UNIX-style networks. It is easier to learn and use, and gives its users better performance, and more capacity.
Disadvantages: Windows 95 still has limits from 16-bit components retained for backward compatibility with a 16-bit application. It does not give much benefit to the 16-bit applications. It costs users significantly.
OS/2
OS/2 stands for Operating System 2. This Operating Systemisanextremely powerful operating system made for powerful microcomputers, and networking. OS/2 was designed to avoid some of the most serious limitations ofDOS. OS/2 runs in 4MB of memory, although it runs well in an 8MB system. It requires about 30MB of hard disk space. OS/2 WARP, the Windows version of OS/2, performs reasonably well in a 4MB system, and requires lesser disk space. OS/2 provides a dual boot feature that allows users to boot up in either DOS or OS/2. OS/2 uses folders much like those in Macintosh, and in UNIX GUIs.
Advantages and Disadvantages
Advantages: It is not affected by requirements of DOS and Windows, that certain device drivers live in the first 640KB of memory. Instead, OS/2 can load network adapter drivers, multimedia interfaces, CD-ROM software or video drivers into memory as required. This Operating System allows multitasking and dynamic data interchange. OS/2 was developed to assist in the sharing of data and programs among several microcomputers. OS/2 solidly supports Novell Netware and TCP/IP. Most network interface cards are supported.
Disadvantages: OS/2 Shell or WARP is similar to Windows, but is not identical. It may take users a while to adjust to some of the differences. The application programs developed specifically for OS/2 are not as many as those for Windows, although more and more application developers are striving to convert and develop programs for OS/2, these days.
UNIX
UNIX was originally developed in 1969 by K. Thompson and Dennis Ritchie, and others in the Bell Laboratories of AT& T in USA. Most computer science departments of universities have been using UNIX. UNIX initially became popular in the industry for many years. After UNIX got widespread, it began to set used by scientists and engineers. It is because of its scientific and technical orientation. It is less well known amongst business people. UNIX has become a major player in the microcomputer world. The difficulty of learning it is also because of the change in its graphical user interface. This is a multiuser, multitasking operating system that runs on many different computer systems from microcomputer to mainframe. UNIX is written in 'C' programming language.
Advantages and Disadvantages
Advantages: UNIX is a portable operating system that can be used with many different computers from mainframe to microcomputer. The other Operating Systems such as DOS, Windows, Mac operating system, and OS/2 cannot be used for other systems. One of the many strong features of UNIX is, multitasking. UNIX allows its users to run multiple programs simultaneously. UNIX also shares it amongst its users.
Networking is another strong feature of a UNIX Operating System. UNIX can be connected through several different kinds of equipments. It can share files among them.
Disadvantages: Although UNIX can do many things, it can be difficult for novice microcomputer users to understand. This is a reason that it has made a limited impact on global users till date.
UNIX was a minicomputer Operating System used by programmers and computer science professionals some time before the rise of the microcomputers.
Limited application program are another disadvantage of UNIX. UNIX off-the-self programs for microcomputers are limited. There is no particular standard for UNIX. This may be the biggest problem for the popularity of UNIX . There is also a particular standard GUI for mening UNIXs.
Linux
Linux is a free open-source operating system based on Unix. Linux was originally created by 'Linus Torvalds,' with the assistance of developers from around the globe. Linux is free to download, edit, and distribute. Linux is a very powerful operating system, and it is gradually becoming popular throughout the world.
Advantages of Linux
Low cost: There is no need to spend time and huge amount of money to obtain licenses. There is no need to worry about any software that you use in Linux all are free to obtain.
Stability: Linux has high stability as compared to other Operating Systems. There is no need to reboot a Linux system to maintain its performance levels. Rarely it freeze up or slows down.
Performance: Linux provides high performance on various networks. It has the ability to handle large numbers of users simultaneously.
Networking: Linux provides a strong support for network functionality; client and server systems can be easily set up on any computer having Linux. It can perform tasks like network backup more faster than other Operating Systems.
Flexibility: Linux is very flexible. Linux can be used for high performance server applications, desktop applications, and embedded systems. You can also restrict the use of specific computers with Linux.
Compatibility: It runs on all common Unix software packages, and can process all common file formats.
Fast and easy installation: Linux distribution comes with user-friendly installation.
Better use of hard disk: Linux uses its resources well enough, even when the hard disk is almost full.
Multitasking: Linux is a multitasking Operating System. It can handle many things at the same time.
Security: Linux is one of the most secure Operating Systems.
Disadvantages of Linux
The Hardware support from certain vendors, is not too good for Linux.
The installation process of the software/ application, is not as easy as in Linux.
1.8 Mobile Operating Systems
The Mobile Operating Systems are base infrastructure software components of a computerized system.
They control all the basic operations of the computer (or other electronic devices such as PDA, Smartphone, etc.). The mobile Operating System allows a user to install and execute third-party applications (commonly called apps for short), usually by adding new functionality to a device.
Amongst the most popular Mobile Computer Operating Systems are Microsoft's Windows and Apple's Mac OS, along with the various distributions of Linux.
The most popular OS's for mobile devices (smartphones and tablets) are the Apple's iOS, and Google's Android, and they are the only ones that are still showing growth. Down the rank there are RIM's, BlackBerry OS, and Microsoft's Windows Phone. Symbian holds a distant fifth place, while merely a year ago, it was still the most widely used mobile OS.
Symbian held its top position for years, but its market share has been slowly fading away ever since touch-operated smartphones became the norm and Symbian failed to deliver an intuitive touch UI. Almost ten years ago, Microsoft's Windows Mobile Operating System was a strong player too, offering the first touch screen Smartphone experience with the Pocket PCs powered through its Operating System.
Today mobile devices with a proper Operating System are called Smartphones, and with these users have a wide choice of applications to go in for such as games, productivity apps, communication or social media apps, digital maps, etc.
While the major players these days are clear, over the years we have seen the emergence of numerous mobile OS projects including, but not limited to Palm's webOS, Samsung's Bada OS, Nokia's MeeGo OS, LiMo OS, Blackberry's Playbook OS, and many more. Recently, the Jolla's Sailfish OS and Mozilla's Firefox OS have also come into play.
1.9 Windows 7 System Tools
Windows 7 is an Operating System launched by Microsoft in 2009 as an upgrade 8XP or Vista. Some of the system tools for windows 7 Operating System are as follows:
Disk Cleanup
You can use 'Disk Cleanup' to reduce the number of unnecessary files on your drives, which can help your PC run faster. It can delete the temporary files and system files, empty the Recycle Bin, and a variety of other items that you might no longer need.
To delete files
The following procedure deletes files associated with your user account. You can also use Disk Cleanup to delete system files on your PC.
- Open Disk Cleanup by swiping in from the right edge of the Select the drive you want to clean up. screen, tap search, enter the program Disk Cleanup in the search box, tapp or click Settings, and then tapp or click Free up disk space by deleting unnecessary files.
- In the Drives list, tap or click the drive that you want to clean, and then tap or click OK.
- In the Disk Cleanup dialog box, on the Disk Cleanup tab, select the check boxes for the file types that you want to delete, and then tap or click OK.
- In the message that appears, tap or click Delete files.
Fragmentation makes your hard disk do extra work that can slow down your computer. Disk Defragmenter rearranges fragmented data so that your hard disk can work more efficiently. Disk Defragmenter runs on a schedule, but you can also defragment your hard disk manually anytime.
1. Open the Disk Defragmenter by clicking the Start button, clicking All Programs, click Accessories, click System Tools, and then click Disk Defragmenter. If you are prompted for an administrator password or confirmation, type the password or provide confirmation.
2. Now Click Defragment.
Disk Defragmenter might take from several minutes to a few hours to finish, depending on the size and degree of fragmentation of your hard disk. You can still use your computer during the defragmentation process.
System Restore
System Restore helps you to restore your computer's system files to an earlier point in time. It is a way to undo system changes to your computers without affecting your personal files, such as e-mails, documents, or photos.
System Restore uses a feature called as system protection, to regularly, create, and save the restored points on your computer. These restored points contain information about registry settings, and other system information, that Windows uses. You can also create restore points manually.
Before you start System Restore, save all the open files, and close all the programs. System Restore will restart your PC.
1. Open System Restore by clicking the Start button . In the search box, type System Restore, and then, in the list of results, click System Restore . If you' are prompted for providing an administrator password or confirmation, type the password or provide the confirmation.
2. Follow the steps in the wizard to choose a restore point, and restore your computer.