Software, Programs, and Support Modules
Software comprises of computer programs, support modules, and data
modules that work together in order to provide a computer with the
instructions and data necessary for carrying out a specific type of task,
such as video editing, Web browsing, preparing your tax return, designing
the floor plan for a new house, document production and the like
Computer software includes files consisting of computer programs. A
computer program or simply, a program is a set of instructions that tells a
computer how to solve a problem or carry out or perform a task. Computer
programs are also known as software, applications programs, or systems
software. On the other hand, a computer program can refer to source
code, written in a programming language, or to executable form of this
code. A distinct attribute of a computer program is that it can be started or
run by a computer user. Software typically comprises files. One of these
files is a main executable file. This refers to the program that you run to
start the software. Other files might contain the programs that you use to
install and uninstall the software
A support module provides an auxiliary set of instructions that can be
used in conjunction with the main software program. It is not designed to
be run by the computer user. Instead, these modules are “called” by the
computer program as needed. For instance, suppose that you want to edit
a video footage using Video Factory software. To start the program and
display the main screen, you run the main executable file, which is
Vidfact.exe. You choose the Download command, to access the video
footage from your camera to your PC. Your selection requires program
instructions that are not included in the main program, so a support
program called DVcheck.dll is used to assist with this task.
A data module comprises any data that is necessary for a task, but not
supplied by the user. An example would be word processing software that
checks spelling by comparing the words in a document with the words in a
dictionary file of correctly spelled words. The data module here is the
dictionary file, which is supplied by the software, not by the use
Why software does require so many files?
Most software packages include at least one executable program file;
several support modules, and one or more data modules. The significance
of a main program file and several support modules and data modules is
for the programmers’ great deal of flexibility and efficiency. Most of the
support modules contain “generic” program instructions that can be used
to work with various programs. A programmer can simply plug in a
generic support module, instead of writing these instructions “from
scratch”. These programming techniques would not be of much importance
to people who use computer programs, except for the fact that these
techniques affect the process of installing and uninstalling software. It is
necessary, therefore, to remember that computer software typically
comprises of many files namely the main program files, several support
modules and data modules
How Software Works
How does a high-level language relate to the microprocessor’s instruction
set? Machine language, the instruction set that is “hard wired” within the
microprocessor’s circuits, is the only language that can be understood by a
computer’s microprocessor. With this, we can say that instructions written
in a high level language must be translated into machine language before
a computer can use them. A special type of programs called translators,
convert instructions from a high-level language into machine language.
Translators can be categorized into two (2): compilers and interpreters.
Compilers are computer programs that translate a computer program that
is written in a computer language called as source language, into an
equivalent program written in another computer language which can be
called as output, object or target language. Interpreters execute other
programs while compilers do not but translate it into an executable file. It
translates one program statement into machine language, executes it, and
then proceeds to the next statement.
So how does software work?
Assuming that a VideoFactory, a video editing program, was installed on
your computer, which is running in Windows. You click the Start button,
and then select VideoFactoryfrom the Programs menu. Vidfact.exe, the
main executable file exists in compiled format on your computer’s hard
disk. The instructions for this program are loaded into RAM and then sent
to the microprocessor. As processing begins, the VideoFactory window
opens and the graphical controls for video editing tasks appear. The
programs wait for you to select a control by clicking it with the mouse.
Based on your selection, the program follows its instructions and performs
a pre-specified action. Many of the instructions for these actions are
included in the main executable file, in order to access its instructions, it
might be necessary to “call” a support module. The program continues to
respond to the controls that you select until you click the Close button,
which halts execution of the program instructions and closes the program
window