Tuesday, September 9, 2014

1.2.2 WINDOWS Operating System

Windows is a graphical operating system created by the all mighty Microsoft way back in 1985. While Macintosh systems were incredible expensive, computers that came with Windows were much cheaper and more important in the way that they brought computers into every home. Windows made the general public realize that each and every household could have a computer and it wasn't just a machine that was used by big corporates. So Windows brought computers to the common man.
Advantages of using Windows:
  1. Ease of use. Users familiar with earlier versions of Windows will probably also find the more modern ones easy to work with. This is ascribable to everything from the standardized look and feel of almost all programs written for Windows to the way the file system has been presented ever since the days of MS-DOS. This is one of the main reasons why Windows users are often reluctant to switch operating systems. 
  2. Available software. There is a huge selection of software available for Windows. This is both due to and the reason for Microsoft's dominance of the world market for PC computer operating systems and office software. If you're looking for an application to suit your business needs, chances are that if it exists there will be a Windows version of it available somewhere.
  3. Backwards compatibility. If you're currently using an older version of Windows and need something more up to date, but you don't want to loose the use of some older programs that are only available for Windows and are critical to your business needs, the chances are good (although not a certainty) that those programs will also work with a newer version of Windows.
  4. Support for new hardware. Virtually all hardware manufacturers will offer support for a recent version of Windows when they go to market with a new product. Again, Microsoft's dominance of the software market makes Windows impossible for hardware manufacturers to ignore. So, if you run off to a store today any buy some random new piece of computer hardware, you'll find that it will probably work with the latest version of Windows. 
  5. Plug & Play. As an operating system for the average home user, Windows still has an edge over the competition in the area of Plug & Play support for PC hardware. As long as the right drivers are installed, Windows will usually do a good job at recognizing new hardware. Other operating systems also offer Plug & Play functionality, but to a lesser degree and more frequently require manual intervention. 
  6. Games. If you crave the latest in PC gaming technology, then you need Windows. A plethora of gaming titles are available for Windows, as well as lots of special gaming hardware that's supported. Some of the most popular games are also available for Linux, and even more for the Mac, but there's really no comparison. It must be said, though, that not all of the old games that were written for Windows 95 and 98 will also work with XP. 
  7. Compatibility with MS driven websites. After Windows had become the world's most popular desktop operating system, Internet Explorer (IE) became the world's most popular web browser soon after Microsoft began bundling it with Windows 95.
Disadvantages of using Windows:
  1. High resource requirements
  2. Closed source
  3. Poor security
  4. Virus susceptibility
  5. Outrageous license agreements
  6. Poor technical support
  7. Hostile treatment of legitimate users
  8. Extortionist prices
  9. Additional expenses
  10. Poor stability
  11. Vendor lock-in
  12. Backwards incompatible file formats
  13. Poor support for older hardware
  14. Poor remote access
  15. High total cost of ownership

1.2.1 DOS Operating System

MS-DOS (Microsoft Disk Operating System) was originally developed by Microsoft for IBM, MS-DOS was the standard operating system for IBM-compatible personal computers.
Though UNIX was a powerful operating system available, but it was not suitable for 8-bit 8086 microprocessor based Personal Computers. So there was a need for a small operating system that could work in 640K memory(RAM).
DOS was an variant of CP/M (Control Program/Monitor) which ran for the first time on IBM-PC in 1981. It is called so because it resides on Floppy or Hard disk and provides command level interface between user and the computer hardware.
The different versions of MS-DOS have evolved over a period of time with Microsoft introducing new features in each new releases. Starting with MS-DOS1.1, the latest version was MS-DOS6.22 released in 1994. There are various versions of DOS like MS-DOS(Microsoft), PC-DOS(IBM), Apple DOS, Dr-DOS etc.
 
DOS Files
  The main portions of MS-DOS are the IO.SYS, MSDOS.SYS, and COMMAND.COM files.
  IO.SYS and MSDOS.SYS are special, hidden system files.
  The IO.SYS file moves the system’s basic I/O functions into memory and then implements the MS-DOS default control programs, referred to as device drivers, for various hardware components.
  The COMMAND.COM command interpreter accepts commands issued through the keyboard, or other input device, and carries them out according to the commands definition.
  When DOS runs an application, COMMAND.COM finds the program, loads it into memory, and then gives it control of the system. When the program is shut down, it passes control back to the command interpreter.
Types of DOS commands
Any instruction given to the computer to perform a specific task is called command.
The DOS has several commands, each for a particular task and these are stored in DOS directory on the disk. The commands are of two types:
(a)Internal Commands: These are in built commands of MS-DOS i.e. these are stored in Command interpreter file (COMMAND.COM). These commands reside in the memory as long as the machine is at the system prompt(C:\>) level. To use these commands no extra /external file is required. E.g. DATE, TIME, DIR, VER etc.
(b) External Commands: These are separate program (.com) files that reside in DOS directory and when executed behave like commands. An external command has predefined syntax. for e.g. HELP, DOSKEY, BACKUP, RESTORE, FORMAT etc.
 Internal DOS Commands
  dir (Directory) - used for listing files and directories present in the current disk.
  cd (Change Directory) - We can enter or exit from any directory using this command.
  md (Make Directory) - This command allows to create a new directory.
  rd (Remove Directory) – This command is used to remove a directory from the disk.
  ren (Rename) - This command is used to change the name of any file or directory.
  del (Delete) - This command is used for erasing any file from the disk.
  type - This command is used to display the contents or text of any file to the display device.
  date -  Display the current Date
  time - Display the current Time
  cls (Clear the Screen) - This command is used to clear the screen or wipe out everything written on the screen.


External DOS Commands
  attrib  - This command is used for protecting the files from accidental changes or modification. used for listing files and directories present in the current disk.
  chkdsk - This command checks the status of the disk; it shows a graphical display, information about the user file. 
  tree – This command graphically displays the path of each directory and sub directory in given drive.
  edit  – This command loads the MSDOS editor, where we can edit files, create new files, open existing files.
  sort - This command is used for sorting data and displaying the result on the screen.
  format - This command prepares a disk by arranging random magnetic impulses in to a series of track and sectors so that it is addressable by a DOS version.
  sys - This command transfers MSDOS System files to specified areas to make the disk bootable.
  echo -  This command can be used to display a message on the screen.
  pause - When this command is obeyed, the system waits for the user to press a key by displaying a line "strike a key when ready”.
  doskey - Once we install doskey, our dos will star to memorize all commands we use. We can recall those commands using up or down arrow keys. It also gives the facility to create macros, which creates a short key for long keyword or command. 



1.2.5 COMPARATIVE STUDY


WINDOWS vs LINUX

#1: Full access vs. no access
Having access to the source code is probably the single most significant difference between Linux and Windows. The fact that Linux belongs to the GNU Public License ensures that users (of all sorts) can access (and alter) the code to the very kernel that serves as the foundation of the Linux operating system.

#2: Licensing freedom vs. licensing restrictions
Along with access comes the difference between the licenses. With a Linux GPL-licensed operating system, you are free to modify that software and use and even republish or sell it. With the Microsoft license, you can do none of the above.

#3: Online peer support vs. paid help-desk support
With Linux, you have the support of a huge community via forums, online search, and plenty of dedicated Web sites.  There are just as many help sites/lists/forums for Windows as there are for Linux. And you can purchase support from Microsoft itself.

#4: Full vs. partial hardware support
One issue that is slowly becoming nonexistent is hardware support. Years ago, if you wanted to install Linux on a machine you had to make sure you hand-picked each piece of hardware or your installation would not work 100 percent.
With Windows, you know that most every piece of hardware will work with the operating system.

#5: Command line vs. no command line
No matter how far the Linux operating system has come and how amazing the desktop environment becomes, the command line will always be an invaluable tool for administration purposes. You can still use the command line with Windows, but not nearly to the extent as with Linux.

#6: Centralized vs. noncentralized application installation
With Linux you have a centralized location where you can search for, add, or remove software ( package management systems, such as Synaptic). Windows has nothing like this. With Windows, you must know where to find the software you want to install, download the software (or put the CD into your machine), and run setup.exe or install.exe with a simple double-click.

#7: Flexibility vs. rigidity
Linux and Windows can be compared w.r.t. a room where the floor and ceiling are either movable or not. With Linux, you have a room where the floor and ceiling can be raised or lowered, at will, as high or low as you want to make them. With Windows, that floor and ceiling are immovable. You can't go further than Microsoft has deemed it necessary to go.

#8: Multilayered run levels vs. a single-layered run level
With Windows, you're lucky to get to a command line via safe mode -- and then you may or may not have the tools you need to fix the problem. In Linux, even in run level 3, you can still get and install a tool to help you out
 
********

WINDOWS vs ANDROID

Android is an open source, free, Linux-based operating system for smart phones and tablets. The system was designed and developed by Android Inc., which was funded and later purchased by Google in 2005.

            Windows phone is a series of proprietary software developed and marketed by Microsoft Corporation. Windows Phone is a closed-sourced, which means that it is solely developed by the company and protected by copyright. The company offers a bunch of new features compared to the older Windows Mobile OS.

 
 
Android
Windows Phone
Company/ Developer
Google
Microsoft
Programmed in
Java, C, C++
C, C++
OS family
Unix-like
Windows
Initial release
September 23, 2008
October 21, 2010
Supported platforms
ARM, MIPS, x86, I.MX
x86
License
Apache License 2.0
Linux kernel patches under GNU GPL v2
Commercial proprietary software
Default user interface
Graphical (Multi-touch)
Graphical (Metro UI)
Working state
Current
Current
Source model
Open source software
Closed-source
Updates
Updates are provided by different parties in the consortium.
Updates are only done by Microsoft.
Applications
Applications are created by an open community of developers.
Applications are created by tie up companies and Microsoft.
Touch style
Capacitive technology
Capacitive technology
Offers native support for
Google Sync for Gmail, Contacts, and Google Calendar.
Mail, Exchange, Outlook Contacts, Calendar, Windows Market, etc.
Number of applications
Over 700,000 applications
Limited number of applications.
Language support
Multiple language support
Multiple language support

Wednesday, September 3, 2014

1.2 INTRODUCTION TO OPERATING SYSTEM

An operating system is a program that manages the computer hardware. It also provides a basis for application programs and acts as an intermediary between the computer user and the computer hardware. The purpose of an operating system is to provide an environment in which a user can execute programs in a convenient and efficient manner.

Def:
  An operating system acts as an interface between the user and the hardware.

The operating system must ensure the correct operation of the computer system. The operating system provides certain services to programs and to the users of those programs in order to make the programming task easier. The specific services provided will, of course, differ from one operating system to another but there are some common classes of services that we identify and explore.

What operating systems do?
An operating system is an important part of almost every computer system. A computer can be divided into four components:-
·         The Hardware
·         The operating system
·         The application programs, and
·         The users

Fig 14: Abstract view of components of computer system

 
Objectives of Operating System
There are three main objectives of operating system:
1.      Making a computer system convenient to use
2.      Managing the system resources
3.      Controlling the computer processes

Making a computer system convenient to use
·       An operating system is a layer of software on top of the bare hardware of a computer system, which manages all parts of the system, presents to the user with an interface or virtual machine, which is easier to program and use. That is, the operating system hides the details of the hardware resources from the programmer with a convenient interface
·       It acts as an intermediary between the hardware and it’s user, providing a high level interface to low level hardware resources, and making it easier for the programmer and other users to access and use those resources.
·       The operating system layer hides the details of the hardware from the programmer with a convenient interface for using the system.

Managing the system resources
·      The second important objective of an operating system is to manage the various resources of the computer system.
·       This involves performing tasks such as – keeping track of who is using which resource, granting resource request, accounting resource usage and mediating conflicting requests from different programs and users.
·       The efficient and fair sharing of resources among users and/or programs is a key goal of most operating systems.
·      An operating system is a resource allocator. A computer system has many resources (hardware and software) that may be required to solve a problem: CPU time, memory space, file storage space, I/O devices and so on.

Controlling the computer processes
·       An operating system is a control system. A control program controls the execution of user programs to prevent errors and improper use of computer.
·         It is especially concerned with the operation and control of I/O devices.


Functions of Operating System
The main functions of an operating system are as follows:-
 
1.       Booting the Computer
The process of starting or restarting the computer is known as booting. A cold boot is when you turn on a computer that has been turned off completely. A warm boot is the process of using the operating system to restart the computer.

2.       Provides a User Interface
A user interacts with software through the user interface. The two main types of user interfaces are: command line and a graphical user interface (GUI). With a command line interface, the user interacts with the operating system by typing commands to perform specific tasks. With a graphical user interface, the user interacts with the operating system by using a mouse to access windows, icons, and menus.

3.       Process management
CPU can perform one task at one time. If there are many tasks, operating system decides which task should get the CPU.
4.  Memory management
It is also an important function of operating system. The memory cannot be managed without operating system. Different programs and data execute in memory at one time. If there is no operating system, the programs may mix with each other. The system will not work properly.

5.   File management
The operating system also handles the organization and tracking of files and directories (folders) saved or retrieved from a computer disk. The file management system allows the user to perform such tasks as creating files and directories, renaming files, coping and moving files, and deleting files.

6.   I/O management
Operating system also controls all devices attached to computer. The hardware devices are controlled with the help of small software called device drivers

7.   Protection and security
Data is an important part of computer system. The operating system protects the data stored on the computer from illegal use, modification or deletion.
 Protection must be available to ensure  that besides the file, memory segments, CPU and other resources can be operated on by only those process that have gained proper authorization  from operating system.

Types of Operating System:
1.      Batch operating system
2.      Single user single tasking operating system
3.      Single user multitasking operating system
4.      Multi –user multi tasking operating system
5.      Real time operating system

Batch operating system
·       This is the earliest operating system, where only one program is allowed to run at one time.
·       We cannot modify any data used by the program while it is being run. If an error is encountered, it means starting the program from scratch all over again.
·       Example: MS-DOS

Single user single tasking operating system
·       An operating system that allows a single user to perform just one task at a time is a single user single tasking operating system.
·       This type of operating systems are useful because, it takes less memory and don’t require expensive computers.
·       Example: MS-DOS, the palmtop OS (used in palmtops).

Single user multi-tasking operating system
·       A single user multi-tasking operating system is one that allows a single user to perform two or more functions at one.
·       Example: MS-Windows, Macintosh Operating system.

Multi –user multi-tasking operating system
·       A multi-user multi-tasking operating system is an operating system that allows multiple users to use programs that are simultaneously running on a single network server called a terminal server.
·       This type of operating system provides each user a complete environment, called a user session, on the server. Each user’s application runs within their user session on the server separate from all other user sessions. The software that makes this possible is called terminal client.
·       Example: UNIX, MVS (Mainframe OS).

 Real Time Operating system
·       A real time operating system is a very fast, relatively small OS, when they are built into the circuitry of the device and are not loaded from a disk drive.
·       A real time operating system is needed to run real time applications; it may support multiple simultaneous task, or it may only support single tasking.
·       A real time application is an application that responds to certain inputs extremely quickly (thousandths or millionths of a second). Real time applications are needed to run medical diagnostics equipment, life support systems, scientific instruments etc.
·       Example: Lynx OS, RT  Linux, Windows CE