Monday, June 4, 2012

WHAT IS SOFTWARE?

WHAT IS SOFTWARE?
As you know computer cannot do anything on its own and has to be
guided by the user. In order to do any specific job you have to give a
sequence of instructions to the computer. This set of instructions is
called a computer program. Software refers to the set of computer
programs, procedures that describe the programs and how they are
to be used. We can say that it is the collection of programs, which
increases the capabilities of the hardware. Software guides the computer
at every step where to start and stop during a particular job.
The process of software development is called programming.
You should keep in mind that software and hardware are complementary
to each other. Both have to work together to produce meaningful
result. Another important point you should know that developing
software is difficult, time consuming and expensive. 

SOFTWARE TYPES
Computer software is normally classified into two broad categories.
l Application Software
l System Software

1 Application Software: Application software is a set of programs,
which are written to perform specific tasks of the users of computers
such as Accounts, Stores, Payroll, etc. These software are developed
in high level language to help the user to get the computer perform
the tasks. For example, you can develop a package to print mark
sheet of every student of your class or generate accounts of a company,
etc. Application software can be classified into two types:
(a) Customized Packages (b) Generalized Packages.
Customized Packages: These are developed especially for the user
by a program using high-level computer languages. For example,
when you develop a package to prepare a status report of your school
i.e., name of the students, their addresses, Parent’s name, Fee paid,
marks obtained, etc., you are developing a customized package
because the package developed for your school may not be of any
use for other school.
Generalized Package: These packages are written for the people
who have to perform common task on a computer system. DBase,
Lotus 1-2-3, FoxPro, MS Office, etc. are the names of the Generalized
Packages. Any person can use these packages because they
can be used for different application and purposes. These are meant
for mass consumption.
Another example of application software is programming language.
Among the programming languages COBOL (Common Business
Oriented Language) is more suitable for business application whereas
FORTRAN (Formula Translation) is useful for scientific application.
We will discuss about these languages in next section.
2 System Software: You know that an instruction is a set of
programs that has to be fed to the computer for operation of computer
system as a whole. When you switch on the computer the programs
stored or written in ROM is executed which activates different units
of your computer and makes it ready for you to work on it. This set
of program can be called System Software. Therefore system software
may be defined as a set of one or more programs designed to control
the operations of computer system. System Software are general purpose programs designed for performing
tasks such as controlling all operations required to move
data into and out of the computer. It communicates with keyboard,
printer, card reader, disk, tapes etc. It also monitors the use of various
hardware like memory, CPU etc. System software acts as an interface
between hardware and application software. System software allows
application packages to be run on the computer with less time and
effort. Remember that it is not possible to run application software
without system software. Development of system software is a complex task and it requires
extensive knowledge of computer technology. Due to its complexity,
the users cannot develop it. Computer manufactures build and supply
this system software with the computer. DOS, UNIX, WINDOWS,
Language Compilers and Interpreters are some of the widely used
system software. Out of these UNIX is a multi-user operating system
whereas DOS and WINDOWS are PC-based. We will discuss in detail
about DOS and WINDOWS in the next module.
So without system software it is impossible to operate your computer.
The fig.3.1 shows relation between hardware, software and
you as a user of computer system.

software types

Types of Application Software:
Word Processing Software: Allows users to create, edit a document. Example: MS Word, Word Pad etc.
Spreadsheet Software: Allows users to create document and perform calculation. Example: Excel, Lotus1-2-3 etc.
Database Software: Allows users to store and retrieve vast amount of data. Example: MS Access, MySQL, Oracle etc.
Presentation Graphic Software: Allows users to create visual presentation. Example: MS Power Point
Multimedia Software: Allows users to create image, audio, video etc. Example: Real Player, Media Player etc.
Ownership Rights and Delivery Methods:
Commercial Software: Installation in number of computers is specified by the software vendor/producer. User only buys the license to use it. User does not buy the software. He/she may not be allowed to install a software more than one machine.
A demo version of software may exist for free but demo version does not include all the key components of the software.
Shareware: May be free of charge or the software company may charge a nominal fee. Users can download these kinds of software from the Internet. Example: Real Player full version, MP3 player full version, different games downloaded from he Internet.
Freeware: Software that are given away for free by the vendor/producer. Example: Real Player trial version, MP3 Player trial version etc.
Installed software Vs. Web-Based Software:
Installed Software: Software you buy from market or download from the Internet to your computer. The software is physically installed in your computer and runs from your Hard Drive. Usually these kinds of software are wrapped inside a CD case when you buy it from market. Example: MS Office, Games etc.
Web Based Software: Software that are run from the Internet. Example: Online games, Virus protection software that you download from Internet etc.
Software Suites: Related software programs are sometimes sold bundled together as a software suite. Example: MS Office. When you purchase MS Office license you basically purchase the right to install and use MS Word, MS Excel, Power Point, and FrontPage.
Object Linking and Embedding (OLE):
Embedding: Allows you to copy and paste part of document from one format (MS Word) to another (Excel).
Linking: Allows you to create a link between a source format  (Excel) and a destination format (Power Point).
In linking if the source file data change the destination data will change. In Embedding if the source data change destination data does not change.

Major Types of Software

Software, by definition, is the collection of computer programs, procedures and documentation that performs different tasks on a computer system. The term 'software' was first used by John Tukey in 1958. At the very basic level, computer software consists of a machine language that comprises groups of binary values, which specify processor instructions. The processor instructions change the state of computer hardware in a predefined sequence. Briefly, computer software is the language in which a computer speaks. There are different types of computer software. What are their major types? Let us see.

Main Types of Software

Programming Software: This is one of the most commonly known and popularly used types of computer software. These software come in the form of tools that assist a programmer in writing computer programs. Computer programs are sets of logical instructions that make a computer system perform certain tasks. The tools that help programmers in instructing a computer system include text editors, compilers and interpreters. Compilers translate source code written in a programming language into the language which a computer understands (mostly the binary form). Compilers generate objects which are combined and converted into executable programs through linkers. Debuggers are used to check code for bugs and debug it. The source code is partially or completely simulated for the debugging tool to run on it and remove bugs if any. Interpreters execute programs. They execute the source code or a precompiled code or translate source code into an intermediate language before execution.

System Software: It helps in running computer hardware and the computer system. System software refers to the operating systems; device drivers, servers, windowing systems and utilities. System software helps an application programmer in abstracting away from hardware, memory and other internal complexities of a computer. An operating system provides users with a platform to execute high-level programs. Firmware and BIOS provide the means to operate hardware.

Application Software: It enables the end users to accomplish certain specific tasks. Business software, databases and educational software are some forms of application software. Different word processors, which are dedicated to specialized tasks to be performed by the user, are other examples of application software.

Malware: Malware refers to any malicious software and is a broader category of software that are a threat to computer security. Adware, spyware, computer viruses, worms, trojan horses and scareware are malware. Computer viruses are malicious programs which replicate themselves and spread from one computer to another over the network or the Internet. Computer worms do the same, the only difference being that viruses need a host program to attach with and spread, while worms don't need to attach themselves to programs. Trojans replicate themselves and steal information. Spyware can monitor user activity on a computer and steal user information without their knowledge.

Adware: Adware is software with the means of which advertisements are played and downloaded to a computer. Programmers design adware as their tool to generate revenue. They do extract user information like the websites he visits frequently and the pages he likes. Advertisements that appear as pop-ups on your screen are the result of adware programs tracking you. But adware is not harmful to computer security or user privacy. The data it collects is only for the purpose of inviting user clicks on advertisements.

There are some other types of computer software like inventory management software, ERP, utility software, accounting software among others that find applications in specific information and data management systems. Let's take a look at some of them.

Inventory Management Software: This type of software helps an organization in tracking its goods and materials on the basis of quality as well as quantity. Warehouse inventory management functions encompass the internal warehouse movements and storage. Inventory software helps a company in organizing inventory and optimizing the flow of goods in the organization, thus leading to improved customer service.

Utility Software: Also known as service routine, utility software helps in the management of computer hardware and application software. It performs a small range of tasks. Disk defragmenters, systems utilities and virus scanners are some of the typical examples of utility software.

Data Backup and Recovery Software: An ideal data backup and recovery software provides functionalities beyond simple copying of data files. This software often supports user needs of specifying what is to be backed up and when. Backup and recovery software preserve the original organization of files and allow an easy retrieval of the backed up data.

What are the parts of the Computer and give their definitions/explanation?

Do not do mouse, speaker, or any other peripherals.
Please give thorough explanations

power supply
motherboard
RAM
HDD
video card
optical drive (what does 42X mean etc)

Power Supply: This takes the mains electricity and converts it to a samller voltage then supplies it to the motherboard and other parts of your PC such as the harddrive and DVD drive.

Motherboard: This is the part of the PC which connects everything together. The Central Nervous System of the PC as such.

RAM: Random Access Memory. This the memory of the PC and remembers information on things you may have done during your PC is turned on which your PC might need to keep a log of. The majority of what is stored here is cleared when your PC shuts down hence the reason your PC runs slow the longer you have been using it but then runs fast again when you reset it. The more of this you have the faster your PC will run. RAM comes in various different forms such as DRAM abd DDR DDR2.

HDD: Hard Disk Drive, or your Hard Drive. This is just the thing which stores all your personal files such as music and videos. It also stores your OS and any programs you have installed on your PC.

OS: Operating System. The operating system is the interface whoch allows you to do all the tasks off of your PC, suhc as Windows 98/2000/XP/Vista or MAC OS Leopard etc.

Video Card: This is also referred to as the Graphics Card. This controls how you view your computer on your monitor, For example the higher Graphics Card you have th better graphics your computer will be able ot display as well as you will be able to view a wider variety of screen resolutions.

Optical Drive: This is the DVD/CD drive which play/burns DVD's/CD's. The 42X is the speed in which it can read/write the disc. You can have various forms of these drives such as:
CD Rom - just plays CD's
CD/RW - Plays and Copies CD's
DVD Rom - Plays CD's and DVD's
DVD/RW - Plays and copies boths CD's and DVD's

Processor: This is basically the brain of your computer and without this it couldn't operate. This is the part of the computer that takes your actions and processes them into an operation. The 2.0ghz refers to the speed obviously the higher it is the faster. You can also get single core, dual core, trio core and quad core processors, the more cores the more actions it can process wihtout affecting the speed of your computer.

The Five Generations of Computers

Each generation of computer is characterized by a major technological development that fundamentally changed the way computers operate, resulting in increasingly smaller, cheaper, more powerful and more efficient and reliable devices.

The history of computer development is often referred to in reference to the different generations of computing devices. Each generation of computer is characterized by a major technological development that fundamentally changed the way computers operate, resulting in increasingly smaller, cheaper, more powerful and more efficient and reliable devices. Read about each generation and the developments that led to the current devices that we use today.

First Generation (1940-1956) Vacuum Tubes

The first computers used vacuum tubes for circuitry and magnetic drums for memory, and were often enormous, taking up entire rooms. They were very expensive to operate and in addition to using a great deal of electricity, generated a lot of heat, which was often the cause of malfunctions.
First generation computers relied on machine language, the lowest-level programming language understood by computers, to perform operations, and they could only solve one problem at a time. Input was based on punched cards and paper tape, and output was displayed on printouts.
The UNIVAC and ENIAC computers are examples of first-generation computing devices. The UNIVAC was the first commercial computer delivered to a business client, the U.S. Census Bureau in 1951.

Second Generation (1956-1963) Transistors

Transistors replaced vacuum tubes and ushered in the second generation of computers. The transistor was invented in 1947 but did not see widespread use in computers until the late 1950s. The transistor was far superior to the vacuum tube, allowing computers to become smaller, faster, cheaper, more energy-efficient and more reliable than their first-generation predecessors. Though the transistor still generated a great deal of heat that subjected the computer to damage, it was a vast improvement over the vacuum tube. Second-generation computers still relied on punched cards for input and printouts for output.
Second-generation computers moved from cryptic binary machine language to symbolic, or assembly, languages, which allowed programmers to specify instructions in words. High-level programming languages were also being developed at this time, such as early versions of COBOL and FORTRAN. These were also the first computers that stored their instructions in their memory, which moved from a magnetic drum to magnetic core technology.
The first computers of this generation were developed for the atomic energy industry.

Third Generation (1964-1971) Integrated Circuits

The development of the integrated circuit was the hallmark of the third generation of computers. Transistors were miniaturized and placed on silicon chips, called semiconductors, which drastically increased the speed and efficiency of computers.
Instead of punched cards and printouts, users interacted with third generation computers through keyboards and monitors and interfaced with an operating system, which allowed the device to run many different applications at one time with a central program that monitored the memory. Computers for the first time became accessible to a mass audience because they were smaller and cheaper than their predecessors.

Fourth Generation (1971-Present) Microprocessors

The microprocessor brought the fourth generation of computers, as thousands of integrated circuits were built onto a single silicon chip. What in the first generation filled an entire room could now fit in the palm of the hand. The Intel 4004 chip, developed in 1971, located all the components of the computer—from the central processing unit and memory to input/output controls—on a single chip.
In 1981 IBM introduced its first computer for the home user, and in 1984 Apple introduced the Macintosh. Microprocessors also moved out of the realm of desktop computers and into many areas of life as more and more everyday products began to use microprocessors.
As these small computers became more powerful, they could be linked together to form networks, which eventually led to the development of the Internet. Fourth generation computers also saw the development of GUIs, the mouse and handheld devices.

Fifth Generation (Present and Beyond) Artificial Intelligence

Fifth generation computing devices, based on artificial intelligence, are still in development, though there are some applications, such as voice recognition, that are being used today. The use of parallel processing and superconductors is helping to make artificial intelligence a reality. Quantum computation and molecular and nanotechnology will radically change the face of computers in years to come. The goal of fifth-generation computing is to develop devices that respond to natural language input and are capable of learning and self-organization.

What is a Computer?

computer

What is a Computer?

A computer is a programmable machine. The two principal characteristics of a computer are:
  • It responds to a specific set of instructions in a well-defined manner.
  • Modern Computers

    Modern computers are electronic and digital. The actual machinery -- wires, transistors, and circuits -- is called hardware; the instructions and data are called software.
    All general-purpose computers require the following hardware components:
  • memory: enables a computer to store, at least temporarily, data and programs.
  • mass storage device: allows a computer to permanently retain large amounts of data. Common mass storage devices include disk drives and tape drives.
  • input device: usually a keyboard and mouse, the input device is the conduit through which data and instructions enter a computer.
  • output device: a display screen, printer, or other device that lets you see what the computer has accomplished.
  • central processing unit (CPU): the heart of the computer, this is the component that actually executes instructions.
  • In addition to these components, many others make it possible for the basic components to work together efficiently. For example, every computer requires a bus that transmits data from one part of the computer to another.

    Computer Classification

    Computers can be generally classified by size and power as follows, though there is considerable overlap:
  • personal computer: a small, single-user computer based on a microprocessor. In addition to the microprocessor, a personal computer has a keyboard for entering data, a monitor for displaying information, and a storage device for saving data.
  • workstation: a powerful, single-user computer. A workstation is like a personal computer, but it has a more powerful microprocessor and a higher-quality monitor.
  • minicomputer: a multi-user computer capable of supporting from 10 to hundreds of users simultaneously.
  • mainframe: a powerful multi-user computer capable of supporting many hundreds or thousands of users simultaneously.
  • supercomputer: an extremely fast computer that can perform hundreds of millions of instructions per second.
  • computer system

    The complete computer made up of the CPU, memory and related electronics (main cabinet), all the peripheral devices connected to it and its operating system. Computer systems fall into two broad divisions: clients and servers. Client machines are the user's laptop and desktop computers. Servers reside in a network and share their data and applications with multiple users. They range from entry-level servers to mainframes.

    A computer system is sized for the total workload based on the number of users sharing the system simultaneously, the type of work performed (business, CAD, engineering, scientific) and the volume of data that must be stored. Following are the components of a computer system.

    Platform
    The hardware platform and operating system determine which programs can run on the computer. Every application is written to run under a specific CPU and operating system environment. The most widely used platform means more software is available for it. See platform.

    Input/Output (I/O)
    A server's input/output capacity determines the number of simultaneous users at terminals or desktop computers that it can support. See channel.

    Number of CPUs and Cores
    The more CPUs, the more processing that can take place at the same time. Modern desktop computers typically have two or more processing cores in their CPUs, and high-end server CPUs are available with as many as 64 and 128 cores. Multiple CPUs may also be used. See SMT and multicore.

    Clock Speed
    The gigahertz (GHz) rate of the CPU determines internal processing speed. See MHz.

    Disk and Memory
    A computer system's disk capacity determines the amount of information immediately available to all users. A computer's memory capacity determines how many applications can be efficiently run at the same time.

    Fault Tolerance
    The use of redundant processors, peripherals and power supplies provide continued operation in the event of component failure. See fault tolerant.

                                                       Multiuser Computer System