.

SOFTWARE

SOFTWARE


INTRODUCTION TO SOFTWARE

The software is a series of instructions or a special program that performs a particular task and is recorded in some form on a computer disk. Simply, the software is an abstract collection of instructions for computers to perform specific tasks. It is called differently a program or software program. Computer software has two major categories. It is typically classified into system software and application software.


SYSTEM SOFTWARE

System software is a program that manages and supports the computer resources and operations of a computer system while it executes various tasks such as processing data and information, controlling hardware components, and allowing users to use application software. That is, systems software functions as a bridge between computer system hardware and the application software. System software is made up of many control programs, including the operating system, communications software and database manager. There are many kinds of computers these days. Some of them are easier to learn than others. Some of them perform better than others. These differences may come from different systems software.


Three Kinds of Programs

Systems software consists of three kinds of programs. The system management programs, system support programs, and system development programs are they. These are explained briefly.

System Management Programs

These are programs that manage the application software, computer hardware, and data resources of the computer system. These programs include operating systems, operating environment programs, database management programs, and telecommunications monitor programs. Among these, the most important system management programs are operating systems. The operating systems are needed to study more details. There are two reasons. First, users need to know their functions first. For the second, there are many kinds of operating systems available today.

Telecommunications monitor programs are additions of the operating systems of microcomputers. These programs provide the extra logic for the computer system to control a class of communications devices.

System Support Programs

These are the programs that help the operations and management of a computer system. They provide a variety of support services to let the computer hardware and other system programs run efficiently. The major system support programs are system utility programs, system performance monitor programs, and system security monitor programs (virus checking programs).

System Development Programs

These are programs that help users develop information system programs and prepare user programs for computer processing. These programs may analyze and design systems and program itself. The main system development programs are programming language translators, programming environment programs, computer-aided software engineering packages.


Operating Systems

An operating system is a collection of integrated computer programs that provide recurring services to other programs or to the user of a computer. These services consist of disk and file management, memory management, and device management. In other words, it manages CPU operations, input/output activities, storage resources, diverse support services, and controls various devices.
Operating system is the most important program for computer system. Without an operating system, every computer program would have to contain instructions telling the hardware each step the hardware should take to do its job, such as storing a file on a disk. Because the operating system contains these instructions, any program can call on the operating system when a service is needed.

Need to Study Operating System?

There are many different computer systems and several available operating systems. Thus, users must know what each operating system can do and cannot do to meet their necessity. Today, many operating systems are used for general use or sometimes for specific use. Then, which one is best for a specific purpose? The reason that users need to study operating system is here.
The predominant microcomputer operating system for IBM and IBM-compatibles so far was DOS (Disk Operating System). It has different versions including MS-DOS, PC-DOS and others. DOS is very popular and wide spread, but it has some limitations. Users need to learn DOS although it may fade out in a few years and has some weakness, because it will be used for the next several years. The other popular operating system was the Apple Macintosh operating system.
As more powerful microcomputers become commonplace, more advanced operating systems are needed. Microcomputer users are beginning to demand more powerful operating system that can run powerful microcomputers more efficiently. Today's very powerful microcomputers are demanding more complex and refined operating system that can do multifunctions. They also ask an easier user interface than old operating systems did. Now, there are more than six popular operating systems, leading to the lack of a standard. The other reason that operating system should be learned is here.

How the Operating System Uses Memory

Here explains in case of DOS. When a personal computer is turned on, it searches specific locations on the disk drives for operating system files. If the PC finds the files, it loads the first of them into memory. A set of operating system files then takes over, loading the rest of the main files into memory in a specific order. Because the operating system is in a sense, loading itself or lifting itself by its own bootstraps, this operation is called the boot-up.
At the lowest part of memory, the operating system loads a table of interrupt vectors. When the operating system receives special codes called interrupts, it uses the table to detect where in memory it can find matching instructions. DOS also uses a small area just above the interruption table to hold the BIOS data called 'flags' that record the state of various system conditions. The same area also acts as a buffer to store keystrokes that come in faster than the system can process them.
A large expanse of memory just above the BIOS flags and keyboard buffer is used for device drivers, utility programs, and application programs. When DOS reads the CONFIG.SYS and AUTOEXEC.BAT files, it looks for command lines to load drivers or memory-resident programs. Memory- resident programs are those that continue to be active even when application programs are running. When it finds such a command line, DOS normally puts the driver or program at the start of this large memory area. Device drivers usually remain loaded until the PC is turned off. Memory- resident programs can be unloaded if no other programs are loaded after them.

Operating System Functions

An operating system executes many functions to operate computer system efficiently. Among them, four essential functions are the followings.




Virtual Memory
This is a technique for an operating system to manage memory. An operating system simulates significantly larger memory capability than the real memory capacity of its actual primary storage unit. It allows computers to process larger programs than the physical memory circuit would allow.

Multitasking
This refers the capability of operating systems that runs several computing tasks in one computer at the same time. This is controlled by the task management program in an operating system. It's also called multiprogramming and multithreading.




POPULAR OPERATING SYSTEMS

The most popular microcomputer operating systems are DOS, Windows 3.x, Windows 95, OS/2, Windows NT, and Macintosh System. UNIX is a popular operating system that is available for microcomputers, minicomputers, and mainframe computer systems. The following will show the details:


DOS

DOS stands for Disk Operating System. In the early 1980s, Microsoft got the right to QDOS (Quick and Dirty Operating System) developed by a small company, Seattle Computer, and then has been sold it under the name MS-DOS. Microsoft licenses a version called PC-DOS to IBM (International Business Machines) for its IBM personal computers, and its version, MS-DOS, to many other PC manufacturers.

Advantages and Disadvantages

File Access Table(FAT)

DOS creates a FAT for each disk during formatting. Every sector on the disk is represented by an entry in the FAT as part of a cluster. DOS looks for available clusters when a file is enlarged or created. When DOS allocates files on a freshly formatted disk, DOS uses the first cluster and sequences through a connected series of clusters, leaving many never-used clusters at the end of FAT. When a file is erased or shortened, DOS marks the released clusters in the FAT as available again. When a file is allocated more than one cluster, each cluster points to the next cluster that contains more of the files. The pointer is the next cluster number. The result is a chain of clusters that comprise the map of a file's disk storage. Thus, FAT acts as a storage map and tells DOS exactly where to go on the disk to get all parts of a file.

How Application Programs Run in DOS

When the user specifies the application software to work on, the RAM part of memory is filled with that image of that software. For example, if the user wants to use WordPerfect, the command is taken from the command line and the corresponding software is loaded on to the RAM and it works like a word processor.

Files on DOS Disks

The files on DOS disks have specific purposes. A COM file extension identifies a command file. Command files are the names of external DOS commands. Files with CPI extensions operate the display screen. A file with the DAT extension is a data file. Files with BAT extension are batch files. AUTOEXEC.BAT is a special batch file that runs automatically when a computer is started. EXE files are executable program files. SYS files are system files. SYS files are used to add or modify hardware support to the basic PC operation.


Windows 3.x

This is a graphics-based operating environment from Microsoft. This operating system runs under DOS. Thus, it is usually called "DOS with windows." Windows 3.x allows multiple tasking, allowing users to open several applications simultaneously and shift between them. Windows operating system is very similar to the Macintosh desktop environment.
Windows 3.x is a major upgrade of Microsoft's earlier versions. It provides a DOS extender that allows Windows 3.x applications to run in up to 16MB of memory. In the Windows, users can run DOS applications and change data between them.

Modes

Windows 3.x has three different operating modes.

Advantages and Disadvantages


Windows 95

Windows 95 upgrades its earlier versions (Windows 3.x) in many ways. It has a new 3-D interface. It is mostly a 32- bit system although it has 16-bit components included for compatibility with Windows 3.x. Windows 95 does not need to have a separate DOS. It integrates all DOS services. A Windows 95 system runs in protected mode. This means that it speeds up the processors and provides more safety.
Windows 95 serves two purposes: It will move developers to the Win32 API and will ease the transition for users whose hardware is not yet ready to handle the demands of Windows NT.
Windows 95 offers better preemptive multitasking. Although for most things, cooperative multitasking is good. However, if users want to do several things simultaneously, they are going to find that preemptive multitasking provides smoother operation and better speed.
Because Windows 95 is based on Win32 and has borrowed some of NT's features, some people are confused over which Windows to use. Windows 95 is for anyone who has a lower capability computer that does not enable to use Windows NT. Windows 95 is likely to perform better than NT as a desktop system, especially when running older 16-bit Windows applications.

Advantages and Disadvantages

Difference of 95 with Windows NT

Windows 95 has a different user interface with Windows NT. The interface of NT is much better. Windows 95 uses a different model for device drivers than NT. Thus, not all Windows 95 applications run on NT without modification, and vice versa. Windows 95 is a mix of 16- and 32-bit application programming interface, but NT is solely a 32-bit interface.


Windows NT (New Technology)

Window NT is a platform for 32-bit Windows applications. This is a powerful and one of the most advanced operating systems available today.
Windows NT was originally designed with big-system features. Beginning with version 3.5, Microsoft began repositioning Windows NT as a workstation and server operating system. It also has a sophisticated multiuser security system, so Windows NT performs excellently as a disk server. NT has support for network services useful to applications like client/server database engines. Still, all the features of Windows NT are suitable for use in demanding applications of desktop users.

Advantages and Disadvantages


OS/2

OS/2 stands for Operating System 2. This is another operating systems for powerful microcomputers and networking. OS/2 was designed to avoid some of the most serious limitations of DOS. OS/2 runs in 4MB of memory, although it runs well in an 8MB system. It requires about 30MB of hard disk space. OS/2 WARP, the window version of OS/2, performs reasonably well in 4MB system and requires less disk space.
Users do not need to abandon DOS and Windows to try out OS/2. OS/2 provides a dual boot feature that allows users to boot up in either DOS or OS/2. OS/2 uses folders much like those on the Macintosh and on some UNIX GUIs.

Advantages and Disadvantages


UNIX

UNIX was originally developed in 1969 by K. Thompson, R. Canaday and D. Ritchie for minicomputers in the Bell Laboratories in the USA owned and run by AT& T. By the mid-1970s, UNIX had been introduced to University of California at Berkeley by Thompson, then widespread into an academic world. Most computer science departments of universities have been used UNIX. UNIX initially became popular in industry because for many years AT& T licensed the system to universities for a nominal fee. The effect of this was that UNIX was carried by recent computer science and engineering graduates to their new places of employment. Rapid commercialization of UNIX followed on from this. This rapid commercialization caused the lack of standards. Many hardware and software vendors developed their own versions.
After UNIX was widespread, it had been used by scientists and engineers. It is because of its scientific and technical orientation. It is less well known with business people. All that, however, is probably about to change. The reason is that with the arrival of very powerful microcomputers using the newer chips such as pentium and pentium-pro chips, UNIX has become a major player in the microcomputer world. The difficulty of learning is also about to change because of the graphical user interface.

This is a multiuser, multitasking operating system that runs on many different computer systems from microcomputer to mainframe, because UNIX is written in C programming language, which is a language designed for system-level programming. UNIX is consisted of a kernel, the file system, the user interface. The kernel is the heart of the operating system. The file system has a hierarchical directory method for organizing files on the disk and the shell.

Advantages and Disadvantages


Macintosh Operating Systems

It uses a graphics screen that places familiar office objects on a display screen. Files, folders, programs, and disks are represented by icons. It has a hierarchical file system that lets users drag document icons into and out of folder icons. Folders can also contain other folders and so on.
In IBM computers and IBM compatible computers, software developers usually decide how they make a user interface. In contrast, Macintosh application developers usually conform to the Macintosh user interface. This consistent user interface makes users easy to learn new programs from the start. This also makes Macintosh operating system and its application programs indistinguishable.
The Macintosh user interface style has been adapted to many other operating systems. For example, OS/2 Presentation Manager and WARP, New Wave, most UNIX systems, and Windows look very similar to the Macintosh graphics user interface.
The Macintosh operating system has two major files. They are the System file and the Finder. The system file manages the user interface. Both files work together to achieve the operating system procedures such as formatting disks, copying files, erasing files, and running application programs.

Advantages and Disadvantages





Window
A window was originally a general name of viewing area on a display screen provided by software. Many operating systems can provide multiple windows on a display screen. Under this environment, users usually can work several tasks with several application programs on a screen at the same time. Microsoft makes Windows the brand name of its operating system. They are Windows/286, Windows/386, Windows 3.x, Windows 95 and Windows NT. Users need to be careful not to think of only Microsoft's Windows has windows. Many operating systems such as OS/2 Presentation Manager, OS/2 WARP, many UNIX systems, and Macintosh operating system have windows.

XMS
It is an abbreviation of eXtended Memory Specification. This is an interface that allows DOS applications to use extended memory. This allows DOS applications to only allocate extended memory, but does not allow them to run in extended memory.

EMS
Expanded Memory Specification is a technique for expanding memory beyond one megabyte under DOS. EMS and XMS are different techniques to enlarge memory running under DOS. XMS is a normal memory beyond one megabyte on 286 and higher computers, but EMS is separate memory that can be installed in any computer system.

Win32 API
It is a 32-bit Windows Application Programming Interface. This enables applications to be more responsive, has larger document capacities, and handles CPU- intensive tasks more quickly than Win16 API. When a program marked with Windows 95 ready on the software package, it is designed using Win32 API.

Preemptive/Cooperative Multitasking
Preemptive multitasking means that one Windows application can get control of CPU without the knowledge of another Windows application. In contrast, Cooperative multitasking means that an application can assume it has full control until it yields to other applications. Many operating systems such as Windows NT, Windows 95, or OS/2 have preemptive multitasking function.

Resource Limit
Windows 3.x has three 64KB resource heaps that must be shared by all applications in the system. When those three heaps are exhausted by many applications, errors like "out of system resource" occur. Windows NT does not have that kind of limit.

HPFS
This refers a High Performance File System introduced with OS/2. The system handles larger disks, long file names, and can launch the program by referencing the data. It coexist with the existing FAT system.

FAT
FAT is an abbreviation of File Allocation Table that is the part of DOS and OS/2 file system. It keeps tracks of where the data is stored on a disk. It is a table with an entry for each cluster. The directory contains file ID that points to the FAT entries where the files start.

Linux
Linux is a great variant of UNIX. It has most of the features and, in some cases, better features of UNIX. Furthermore, it runs on lower end machines - 386- class system or higher with 8MB of memory. It requires only as small as 20MB of hard disk space to install it. It requires a CD-ROM drive. Users can get all these features at only $30 to $50 (Information: http://www.cdrom.com or http://www.morse.net). Users who are not decided to buy can even download Linux free from several ftp sites (e.g., sunsite.unc.edu, tsx-11.mit.edu, ftp.uu.net, and wuarchive.wustl.edu).





APPLICATION SOFTWARE

Application software consists of Programs that direct computers to perform specific information processing activities for end users. These programs are called application packages because they direct the processing required for a particular use, or application, which users want to accomplish. Thousands of application packages are available because there are thousands of different jobs end users want computers to do.


Kinds of Application Software

Application software includes a variety of programs that can be subdivided into general-purpose and application-specific categories.

General-Purpose Application Programs

General-purpose applications packages are programs that perform common information processing hobs for end users. For example, word processing programs, electronic spreadsheet programs, database management programs, graphics programs, communications programs, and integrated packages are popular with microcomputer users for home, education, business, scientific, and many other general purposes.
They are also known as productivity packages, because they significantly increase the productivity of end users. This packaged software is also called off-the-shelf software packages, because these products are packaged and available for sale. Many features are common to most packaged programs.

Application-Specific Software

Many application programs are available to support specific applications of end users. Business Application Programs: Programs that accomplish the information processing tasks of important business functions or industry requirements.
Scientific Application Programs: Programs that perform information processing tasks for the natural, physical, social, and behavioral sciences, engineering and all other areas involved in scientific research, experimentation, and development. There are so many other application areas such as education, music, art, medicine, etc.


Application Software Trends

The trend in computer application software is toward multipurpose, expert-assisted packages with natural language and graphical user interfaces. There are two major trends:

Off-The-Shelf Software Packages

There is a trend away from custom-designed one-of- a-kind programs developed by the professional programmers or end users of an organization.
Instead, the trend is toward the use of the "off-the-self" software package acquired by end users from software vendors. This trend accelerated with the development of inexpensive and easy-to-use productivity software packages for microcomputers, and it continues to grow.

Nonprocedural, Natural Languages

There is a major trend away from technical, machine-specific programming languages using binary-based or symbolic codes and from procedural languages, which use English-like statements and mathematical expressions to specify the sequence of instructions a computer must perform.
Instead, the trend is toward nonprocedural, natural languages that are closer to human conversation. This trend has accelerated with the creation of easy-to-use, nonprocedural fourth- generation languages (4GL). It continues to grow as developments in graphics and artificial intelligence produce natural language and graphical interfaces that make software packages easier to use.





POPULAR APPLICATIONS SOFTWARE

Word Processing Packages

Word processing software is used to create, manipulate, and print documents. Documents can be any kind of text material. Some examples of documents are letters, memos, term papers, reports, and contracts.
The beauty of the computer word processor is that users can make any changes or corrections before printing out the document. Even after usersr document is printed out, users can easily go back and make changes. Users can then print it out again. Popular word processing packages include WordPerfect, MS-Word, and MacWrite. These word processing packages allow users to do the following interesting features:


Electronic Spreadsheet Packages

A spreadsheet is an electronic worksheet used to organize and manipulate numbers and display options for what-if analysis. The electronic spreadsheet has rows and columns stored in the computer's memory and displayed on its video screen.
Electronic spreadsheets allow users to try out various what-if kinds of possibilities. That is a powerful feature. Users can manipulate numbers by using stored formulas and calculate different outcomes.
A spreadsheet has several parts. The worksheet area of the spreadsheet has column headings across the top and row headings down the left-hand side. The intersection of a column and row is called a cell. The cell holds a unit of information. The position of a cell is called the cell address. A cell pointer (sprepdsheet cursor) indicates where data is to be entered or changed in the spreadsheet.
Popular electronic spreadsheet packages include Lotus 1-2-3, Quattro Pro, and Excel. Some common features of spreadsheet programs are as follows:


Database Management Packages

A database is a large collection of data entered a computer system and stored for future use. The computerized information in the database is organized so that the parts that have something in common can be retrieved easily. Most DBMS packages can perform four primary tasks:

A database management package or database management system (DBMS) is a software package used to set up, or structure, a database. It is also used to retrieve information from a database. The top part of the figure is a menu. The entire list of member names and addresses is called a file. Each line of information about one member is called a record. Each column of information within a record is called a field.
Popular database management programs include dBASE, Paradox, and FoxPro. Database management packages have different features, depending on their sophistication. A principal feature of database management software for microcomputers are as follows:


Graphics Packages

A graphics program can display numeric data in a visual format for analytical or presentation purposes. Any other types of presentation graphics displays are possible. Draw and Input graphics packages support freehand drawing, while desktop publishing programs provide predrawn clip art graphics for insertion into documents. Popular business graphics packages are Harvard Graphics, Freelance, Corel Draw, and etc.
There are two types of graphics programs. Analytical graphics programs are used to analyze data. Presentation graphics programs are used to create attractive finished graphs for presentations or reports.


Communications Packages

Communications software packages for microcomputers are also viewed as general-purpose application packages. These packages can connect a microcomputer equipped with a modem to a public and private network. Communications software enables a microcomputer to send and receive data over a telephone or other communications line.
Communications programs are used by all kinds of people inside and outside business. Examples are students doing research papers, travelers making plane reservations, consumers buying products, investors getting stock quotations, and economists getting government statistical data.
Communications programs give microcomputers a powerful feature, which is connectivity. Connections with microcomputers open a world of services. Popular communications software includes ProComm, Smartcom, and Crosstalk. Some common features of microcomputer communications programs are as follows:


Integrated Packages

Integrated packages combine the abilities of several general-purpose applications in one program. Integrated software is an all-in-one application package that includes word processing, spreadsheet, database manager, graphics, and communications. An integrated package works together and shares information from one program with another.
Integrated packages were developed to solve the problems caused by the inability of individual programs to communicate and work with common files of data.

Some integrated packages require significant amounts of memory and may compromise on the speed, power, and flexibility of some of their functions to achieve integration. Powerful microcomputers available these days, however, allow users to accomplish all their works without sacrificing computers' speed and flexibility.
What happens if users want to take the data in one program and use it in another? Suppose users want to take information stored in the database manager and use it in a spreadsheet. This is not always possible with separate application packages, but it is with integrated software.
With an integrated package, users can use the database manager to pull together relevant facts. An example of such facts might be the annual membership fees for a sports club for different years. Users can then use the spreadsheet to compare these membership fees. Users can use the word processing program to write a memo about these membership fees for different categories of members. Users can use this program to merge into the memo totals from the spreadsheet. Finally, users can use the communications program to send the memo to another computer.
Some popular integrated packages are Works, First Choice, Symphony, Enable, Framework, SmartWare 11, Microsoft Office, and Perfect Office. End users who are just beginning to learn about application software find integrated packages quite helpful. These packages can easily exchange data between programs, and they share a common structure. These factors make them easy to learn and convenient to use.





What-If Analysis Example
A bookstore manager can figure out whether the business will make a profit or loss by projecting the cost of books and computer software, clothes, stationery, and other sales over a six-month period. The manager can then subtract expenses from sales. Expenses might include such things as payroll for employees, lease of bookstore space, and purchases of books and other supplies. If the expenses are too high to produce a profit, the manager can experiment on the screen with reducing some expenses. For example, the number of employees and therefore payroll costs might be reduced.




.