Sunday, August 12, 2012

Introduction of Unix


UNIX/LINUX
Software:
          Software is a collection of computer programs and related data that provide the instructions for telling a computer what to do and how to do it.
         Software is divided into two types.
1.       System S/W:
 System S/W is a combination of device drivers and operating system.
2.      Application S/W:
       Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Application S/W communicates with hardware components trough System S/W.
Application Software

System Software

Hardware Components
Device drivers:
       It is a hardware program used to communicate with hardware devices.
Every device in system will have its own device driver.
Operating System Overview:
              An operating system (O/S) is a set of programs that manage computer Hardware resources and provide common services for application software
.           The operating system is the most important type of System software in a computer system. A user cannot run an application program on the computer without an operating system, unless the application program is self booting.
·         O/S is a platform where we can run application S/W (c, c++, java, etc..,)
·         O/S is an interface between Application S/W and Hardware Components
·         O/S provides an environment to run applications. That environment is called “child process”. O/S is called parent of all current running applications.
OS is divided into two types of interfaces
1.      CUI (Character User Interface)
      Here Work done by commands. Here you are allowed to work only with keyboard. In CUI one task runs at a time. 
Application: MS Dos

2.      GUI (Graphical User Interface)
                     Here work done in user friendly environment. Here you are allowed to work                       with any pointing device like mouse. In GUI more tasks can run simultaneously.
        Application: Window

·         History of Unix/Linux

          Before UNIX operating system we have DOS operating system which is machine dependent and single user O/S. By using this O/S wastage of much hardware and time consumed to develop any project.
         To overcome the disadvantages of DOS O/S, in 1969 at AT & T Bell labs software team lead by Dennis Ritche, Ken Thomson, Rudd canady and Brian Kernighan developed a project called MULTICS (Multiplexed Information Computing System).
         MULTICS was developed to share the resources. It was developed only for two users. MULTICS was developed in assembly language. In the same year it is modified to hundreds of users and named as UNICS (Uniplexed information Computing System).
         In 1972 “C” – language was developed, which is most powerful language.
In 1973 UNICS was rewrote in C- language and renamed as UNIX.

·         Features of UNIX/Linux   

·         Multiuser O/S:
UNIX server supports the multiple users with the help of process based technology. Process based technology works based on time sharing between users and queue.
·         Multi-Tasking O/S
User can perform more than one job at a time. User can run the task as background process by affixing ‘&’ (ampersand) to the command and can run one more job as foreground job; foreground will be given highest priority and next is its background job. So user can run important job as foreground job.
Advantage of Multi-tasking is to utilize the maximum CPU time
·         Multiprogramming
Support more than one program, in memory, at a time. Amounts to multiple user processes on the system.
·         Programming facility
UNIX provides shell which works like a programming language. It provides the commands, keywords, control statements and operators to develop the shell scripting for system administrators, developers and testers.
·         Open System
UNIX from the beginning is an open source. User can modify the Unix O/S as per his requirements. User can add new system devices and update complete Unix O/S
·         Portable O/S
UNIX is an independent of hardware it works with all processors from 8085 to super computer.
·         Software Development Tools
UNIX offers an excellent variety of tools for software development for all phases, from program editing to maintenance of software.
·         Security
It provides security for local resources like files and hardware devices    
·         Flavors of UNIX   
Many of the proprietary flavors have been designed to run only (or mainly) on proprietary hardware sold by the same company that has developed them. Examples include:
·         AIX - developed by IBM for use on its mainframe computers
·         BSD/OS - a commercial version of BSD developed by Wind River for Intel processors
·         HP-UX - developed by Hewlett-Packard for its HP 9000 series of business servers
·         IRIX - developed by SGI for applications that use 3-D visualization and virtual reality
·         QNX - a real time operating system developed by QNX Software Systems primarily for use in embedded systems
·         Solaris - developed by Sun Microsystems for the SPARC platform and the most widely used proprietary flavor for web servers
·         Tru64 - developed by Compaq for the Alpha processor
Others are developed by groups of volunteers who make them available for free. Among them are:
  • Linux - the most popular and fastest growing of all the Unix-like operating systems
  • FreeBSD - the most popular of the BSD systems (all of which are direct descendants of BSD UNIX, which was developed at the University of California at Berkeley)
  • NetBSD - features the ability to run on more than 50 platforms, ranging from acorn26 to x68k
  • OpenBSD - may have already attained its goal of becoming the most secure of all computer operating systems
  • Darwin - the new version of BSD that serves as the core for the Mac OS X
This diversity has had both positive and negative effects. Most importantly, it has resulted in a healthy competition amongst them, which has been a major factor in the rapid improvement of the Unix-like systems as a whole


·         Comparison of UNIX with Windows
1.      UNIX and Windows both Multi user O/S.
2.      UNIX and Windows both support multi-tasking.
3.      UNIX is process based technology. Windows is thread based technology.
4.      Process based technology performance is less and it is a heavy weight technology. Thread based technology is a light weight technology and performance is more.
5.      UNIX is independent of machines. Windows is an Intel Processor Based.
6.      UNIX O/S performs more than Windows with high speed processors in the market.
7.      UNIX is an open system; Windows is a closed system.
8.      UNIX provides system call access whereas windows cannot.
9.      UNIX is portable O/S, windows are not.
10.  UNIX provides the programming facility where as Windows will not.
11.  Unlimited users can work with UNIX O/S, Windows only limited users.
12.  UNIX provides security for local resources whereas Windows will not provide.
13.  UNIX is not user friendly. Windows is User friendly.


No comments:

Post a Comment

Thank you :
- kareem