Computer Software


Computers are not very intelligent devices, but they handle instructions flawlessly and fast. They must follow explicit directions from both the user and computer programmer. Computers are really nothing more than a very powerful calculator with some great accessories. Applications like word processing and games are just a very complex math problem.

COMPUTER SOFTWARE
Computer software falls into two broad classes: system software and application software.
The principal system software is known as the operating system: It manages the hardware, files, and other system resources and provides a systematic and consistent means for controlling the computer, most commonly via a graphical user interface (GUI).

If you use a player piano as an analogy, the piano can be thought of as the hardware and the roll of music as the software. The software a series of very simple computer instructions carefully organized to complete complex tasks. These instructions are written in programming languages (like BASIC, PASCAL, C...) to help simplify the development of applications. The hardware is what sits on your desk and executes the software instructions. The player piano is useless unless the roll of music has been written correctly.


OPERATING SYSTEM SOFTWARE
Operating system software provides a "user interface" for users to manage files, start programs, customize computer settings, and other tasks. The operating system also provides the fundamental core computer functionality for programmers. Intel based PCs use Microsoft Windows version 3.1 (older) or Windows 95 as the operating system. Macintoshes use the Macintosh operating system. There are many different Operating Systems avaiable.

What is system software?
The simple answer is that system software is the stuff that makes your computer work. It's roughly analogous to the stem of the human brain—you've got to have it to keep breathing; but with just the stem you aren't likely to win any chess tournaments or earn an MBA degree. System software includes the computer's basic operating system, whether that's Windows 2000 or Mac OS on your home computer or something like MVS on a gargantuan mainframe in the data center. The term also usually encompasses any software used to manage the computer and network, which includes diagnostic software and anything used to tune up the computer's performance. Novell Netware and other network management packages thus fall under system software. In the mainframe world, system software would include all kinds of utility packages with scary names like "Disk Defragmenter."



APPLICATION SOFTWARE
Application software uses the operating system software and provides the real functionality of a computer. Applications include:

- Word Processing (MS Word, WordPerfect, Ami...)
- Spreadsheets (Lotus 123, MS Excel...)
- Database (DBase, Fox Pro, Oracle...)
- Presentation (MS PowerPoint, Persuasion...)
- Internet Browsers (Netscape Navigator, MS Internet Explorer)
- Games

What is application software?
Application software trains the PC's brain for higher cognitive functions rather than just keeping the PC alive and connected to other computers. Think of it this way: Applications apply the computer's thinking power to business tasks such as tracking the general ledger or billing your customers.

Software that clearly falls on the application side of the line includes manufacturing, financial and human resources software and the enterprise resource planning (ERP) (see What is ERP? below) packages (such as SAP R/3 and PeopleSoft), which incorporate all those functions and more. Other examples of application software include CAD and various engineering packages, groupware like Lotus Notes, supply chain management software and a raft of industry-specific programs for everything from routing railcars to tracking clinical trials for pharmaceuticals.

System software runs your computer while application software runs your business. The line between the two kinds of software is somewhat blurry, depending on who's doing the talking. In the gray zone between them, you might include database management software like Oracle8, Sybase or DB2, which handle a very general sort of task—storing and manipulating data and records—and often must be further programmed in order to perform a specific application. Some operating systems incorporate basic database management functionality, so some people call DBMS system software, while others simply call it application software.


TERMINOLOGY

BIT
- Short for binary digit, the smallest unit of information on a machine. A single bit can hold only one of two values: 0 or 1 (Computers are sometimes classified by the number of bits they can process at one time or by the number of bits they use to represent addresses)

BYTE
- Abbreviation for binary term, a unit of storage capable of holding a single character. On almost all modern computers, a byte is equal to 8 bits.

KILOBYTES - In the binary system, each digit position represents a value of 2. For example, the binary number 1011 equals: 1 one 8 (2 to the 3rd power), plus 0 zero 4s (2 to the 2nd power), plus 1 one 2 (2 to the first power), plus 1 one 1 (2 to the zeroth power), So a binary 1011 equals a decimal 11. Because computers use the binary number system, powers of 2 play an important role. This is why everything in computers seems to come in 8s (2 to the 3rd power), 64s (2 to the 6th power), 128s (2 to the 7th power), and 256s (2 to the 8th power)

MEGABYTES - When used to describe data storage, 1,048,576 (2 to the 20th power) bytes. Megabyte is frequently abbreviated as M or MB. When used to describe data transfer rates, as in MBps, it refers to one million bytes. The speed with which data can be transmitted from one device to another. Data rates are often measured in megabits (million bits) or megabytes (million bytes) per second. These are usually abbreviated as Mbps and MBps, respectively

GIGABYTES - Data rates are often measured in gigabits (billion bits) or gigabytes (billion bytes) per second. These are usually abbreviated as Gbps and GBps, respectively


BIOS

BIOS means Basic Input Output System. BIOS is actually firmware, the software that is programmed into a ROM (Read-Only Memory) chip built onto the motherboard of a computer. BIOS is what makes the system run an initial Power-On Self-Test of the computer, initialize circuits, load the boot program from the boot disk, and then handle low-level I/O to peripheral controllers such as keyboard and display. Pronounced "bye-ose," BIOS is an acronym for basic input/output system. The BIOS is built-in software that determines what a computer can do without accessing programs from a disk. On PCs, the BIOS contains all the code required to control the keyboard, display screen, disk drives, serial communications, and a number of miscellaneous functions.

The BIOS is typically placed on a ROM chip that comes with the computer (it is often called a ROM BIOS). This ensures that the BIOS will always be available and will not be damaged by disk failures. It also makes it possible for a computer to boot itself. Because RAM is faster than ROM, many computer manufacturers design systems so that the BIOS is copied from ROM to RAM each time the computer is booted. This is known as shadowing, and should be disabled in the BIOS setup before flashing. Most modern PCs have a flash BIOS, which means that the BIOS has been recorded on a rewriteable memory chip, which can be updated if necessary.

The PC BIOS is standardized, so all PCs are alike at this level (although there are different BIOS versions). Additional DOS functions are usually added through software modules. This means you can upgrade to a newer version of DOS without changing the BIOS. PC BIOSes that can handle Plug-and-Play (PnP) devices are known as PnP BIOSes, or PnP-aware BIOSes. These BIOSes are always implemented with flash memory rather than ROM.


FILE ALLOCATION TABLE

A File Allocation Table is a table that is used by the operating
system to manage the allocation units on a disk. You could think of
the table as a piece of paper, with lines... one line for each
allocation unit on the disk.

At its simplest, the sector is the disk allocation unit. The operating
system hands out disk space a sector at a time. If you create a file,
and the file has 512 bytes or fewer, then you will get one sector of
disk space. Note that if your file is only 12 bytes long, you will
still get a whole sector. The extra 500 bytes is cluster waste.

A FAT 16 table has a maximum of 216 entries in the table (or, 216
lines on the piece of paper). If each entry in the table represents
one sector, and you can have a maximum of 216 entries in the table,
then that table can represent a maximum disk size of 216 sectors. The
maximum disk size is, then, 216 * 512 bytes. This is 64K * .5KB,
which is 32MB. At one point, this "32 megabyte barrier" was the
maximum size drive that FAT 16 could support. Why? Because there were
a maximum of 216 entries in the FAT 16 table, and each entry
represented one sector on the disk.

 


Take the Online Quiz on Software