Home Random Page


CATEGORIES:

BiologyChemistryConstructionCultureEcologyEconomyElectronicsFinanceGeographyHistoryInformaticsLawMathematicsMechanicsMedicineOtherPedagogyPhilosophyPhysicsPolicyPsychologySociologySportTourism






Need for an Operating System

Operating system provides a software platform, on top of which, other programs, called application programs are run. The application programs must be written to run on the environment of a particular operating system. Our choice of operating system, therefore, depends to a great extent on the CPU and the other attached devices and the applications we want to run. For PCs, some of the most popular operating systems are Microsoft Windows, Linux, Mac OS, Solaris, BOSS, etc.

Figure 3.3 Components controlled by an Operating System

 

Major Functions of an Operating System

The functions of an operating system can be broadly outlined as follows:

v Communicate with hardware and the attached devices [Device Manager]

v Manage different types of memories [Memory Manager]

v Provide a user interface [Interface Manager]

v Provide a structure for accessing an application [Program Manager]

v Enable users to manipulate programs and data [Task Manager]

v Manage the files, folders and directory systems on a computer [File Manager]

v Provide basic networking structure for LAN and Internet [Network Manager]

v A smart OS also provides a minimal security to the computer system through

authorization (user name) and authentications (password) [Security manager]

 

Types of Operating system

Following types of operating system are generally available and used depending upon the primary purpose and application and the type of hardware attached to the computer:

v Single User: Allows one user to operate the computer and run different programs on the computer. MS DOS is a common example of single user operating system.

v Multi-user: Allows two or more users to run programs at the same time on a single computer system. Unix, Linux, Windows are common examples of multi user operating system.

v Real time: Responds to input instantly. Real-time operating systems are commonly found and used in robotics, complex multimedia and animation, communications and has various military and government uses. LYNX and Windows CE are examples of real time operating systems.

Operating System (OS) is an interface between hardware and user which is responsible for the management and coordination of activities and the sharing of the resources of the computer that acts as a host for computing applications run on the machine.

Command line interface vs. Graphical user interface
    Users may interact with the operating system with some kind of software user interface (SUI) like typing commands by using command line interface (CLI) or using a graphical user interface (GUI, commonly pronounced “gooey”).  
     
 
     

Graphical User Interface (GUI) is more preferred !!!

Know more Apart from the above general categories, an Operating System can also be categorized as: v Multiprocessing: Supports allocating programs on more than one CPU (processor). v Multitasking: Allows more than one program (task) to run concurrently. v Multithreading: Allows different parts of a single program to run simultaneously.

Device Driver



  A device driver is a system software that acts like an interface between the Device and the user or the Operating System. All computer accessories like Printer, Scanner, Web Camera, etc come with their own driver software. These driver software help the operating system and other application software to communicate with those devices for optimal use. Figure 3.4Driver Disk  
Language Processor As discussed above, a computer system understands only machine language or binary language, also known as Low Level Language (LLL). This language is extremely difficult to learn for a general programmer and thus there is a need for some special language that is easy to learn and understand for the programmer in order to interact with the computer system. These special languages or set of commands are collectively known as programming languages or High Level languages (HLL). Some examples of High Level Figure 3.5Few Language Processor
Programming Languages are Basic, C, C++, JAVA, etc. These high level programming languages can easily be translated into machine language and vice versa using language translators like assembler or Interpreter or Compiler. These translators are also known as language processors.
     

Assembler - Some advance programmers prefer to learn a language which is very close to the low level language, called the Assembly language. This language consists of mnemonic codes, is difficult to learn and is machine dependent. Assembler is a language processor, which translates a program written in assembly language into machine language.

Compiler - A compiler is a language processor which converts (or translates) the entire program written in high level language into machine language in one go. If it fails to convert the program because of error(s) present in the program, all errors are reported together along with the line numbers for debugging. After all the errors are removed, the program can be recompiled to obtain the object program. After the compilation process is completed, the object program can directly be executed, without the intervention of the compiler thus saving memory.

Figure 3.6 Conversion of a Source Code to Object Code

 

InterpreterThis language processor converts a high level language program into machine language line by line as well as executes it. If there is any error in the program, translation and execution stops and the error is reported for debugging. The conversion and execution resumes only after that error is rectified. This is a slow process and consumes high memory as the interpreter is also required to execute the correct code along with reporting the errors, but is very useful for debugging and thus suitable for novice programmer. Debugging is the process of removing all errors from a computer program.

Know more Apex Language Processor, developed by Centre for Development of Advanced Computing (CDAC), is a multilingual word processor running under DOS and UNIX that allows typing of all Indian scripts through the common INSCRIPT keyboard overlay.

 


Date: 2015-12-17; view: 741


<== previous page | next page ==>
COMPUTER OPERATING SYSTEM SOFTWARE | Application Software
doclecture.net - lectures - 2014-2024 year. Copyright infringement or personal data (0.006 sec.)