Computer Notes

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

COMPUTER SOFTWARE

Computer software refers to the electronic instructions and procedures that


command and control the operation of a computer. Software tells the computer
what to do.

Illustration of computer software

TYPES OF SOFTWARE

There are mainly two types of software.

 System Software
 Application software

SYSTEM SOFTWARE

System software refers to a category of software that enables the computer to


work and as well control devices connected to it.

Or It refers the software that performs tasks related to the operation and
performance of the computer system.

1|Page
System software is a set of programs designed to manage operations of the
computer and avail computer resources to the user.

Functions of system software


 Booting the computer
 Making sure that all hardware elements are working properly
 Performing operations such as retrieving, loading, executing and storing
application programs
 Storing and retrieving files
 Performing a variety of system utility functions.

CATEGORIES OF SYSTEM SOFTWARE

There are three categories of system software.

• Operating system

• Utility programs

• Programming

1. OPERATING SYSTEM SOFTWARE

Operating system is a type of system software that performs daily activities of a


computer. These are programs that manage the computer resources.

Types of operating system

 Stand-alone operating system


 Network operating system
 Embedded operating system
Examples of Operating System Software

 Windows operating system


 Linux , Unix, Ubuntu Operating System
 Macintosh(MAC)
 Chrome operating system

2|Page
 Novell operating system
 Android for mobile phones

Functions of an Operating System (Os)

 It helps in processor management e.g. multitasking and time sharing.


 Control the use of peripheral devices.
 It provides an environment that enables installation of application software
 Controls the booting process of a computer
 Monitors system performance.
 Helps in administering security
 It helps in file management.
 It helps in connecting devices to work with computer(configuring of
devices)
 Responsible for scheduling computer tasks/jobs
 Helps to establish network connections.

Forms of Operating System User Interfaces

There are two forms of Operating user interfaces.

 Command-Line User Interface:


 Graphical User interface
i. Command-Line User Interface:

With a command line interface, a user types keyboard or press special keys on the
keyboard to enter data and instructions. The set of commands a user uses to
interact with the computer is called command language. Examples are DOS,
UNIX, Linux.

You are provided with a virtually empty screen with a blinking cursor where
commands are keyed and the computer executes them by pressing the enter key.

Advantages of Command User Interface:

 Commands are executed faster.


 Consumes limited Random Access Memory
 Cannot easily affected by viruses

3|Page
 Ideal for programming and programmers
 Commands can be grouped together.

Disadvantages of Command User Interfaces

 Commands are not easily memorized


 Requires a lot of knowledge to master the commands
 Commands have to be typed correctly
 No graphics on the screen.
 A mouse cannot be used
ii. Graphical User Interface (GUI)

Graphical user interface allows the user to use menus and visual images such as
icons, buttons and other graphical objects to issue commands.

Advantages of Graphical User Interface (GUI)

 It is user friendly because it is easy to learn and work with


 There is no need to type and memorize any command language.
 The interface is similar for any application.
 You are provided with a coloured screen with icons each representing a
program.
 A mouse may be used.

Disadvantages of Graphical User Interface (GUI)

 Require much more memory and as well as the processor


 Require much more desk space to hold the files
 Difficult to automate for expert users
 Easily affected by viruses
 Not good for programmers.
2. UTILITY SOFTWARE

This is parts of system software which are designed to configure, analyze, optimize
and maintain a computer in its operation.

4|Page
Functions of the Utility Programs

 It detects and protects a computer against computer viruses


 It reduces screen burnout (ghosting) by playing a screen saver
 It increases desk space by compressing data files
 It checks disk errors and sometimes fixes them
 It stores the system functionality (i.e. system store)
 It enables computers to sort files in order.
 It enables a user to merge files
 It defragments hard disks
 It enables a user to encrypt files.

Common Utilities used

Antivirus utility: used to search, find and remove viruses from the computer

System archives: These output a stream or a single file when provided with a
directory/set of files.

Disk checkers: these scan an operating hard drive for logical (file system) and
physical errors

Backup utility: makes a copy of all information stored on the hard disk onto
another storage medium e.g external hard disk, dvds, etc.

Cryptographic utilities: used to encrypt and decrypt streams of files.

Data compression utilities: output a smaller file when provided with a file.

Disk compressors: these compress/reduce the size of the file thus increasing the
capacity of the disk.

Disk defragmenters: These detect computer files whose content is scattered in


several locations on the hard disk and move fragments to one location to increase
efficiency.

Screen savers: these prevent phosphor burn-in on CRT and plasma monitors by
filling it with moving images, patterns when the computer is not in use .

Sorting utilities: these help to organize data in a given order.


5|Page
Memory testers: these check for memory failures.

Disk partition editors: these divide a drive into multiple logical drives, each with
its own file system which can be mounted by the operating system to be treated as
an individual drive.

File synchronization utilities: these maintain consistency between two sources.


They enable redundancy or making copies of data.

System profilers: provide detailed information about the software installed and
hardware attached to the computer.

Network utilities: these analyze a computer’s network connectivity, configure


network settings, check data transfer or log events.

DEVICE DRIVERS

This is a small program that tells the operating system how to communicate with
the device. Each device on a computer (e.g. a mouse) has its own specialized set
of commands and thus requires its own specific driver. The operating system loads
each device’s driver when the computer boots up.

To communicate with the hardware devices, the operating system relies on device
drivers.

• A device driver is a program that accepts instructions and then converts them into
commands that the device understands.

• Each device on a computer, such as the keyboard, mouse, monitor, printer, card
reader/writer, and scanner, has its own device driver.

3. PROGRAMMING LANGUAGES

These refer to the languages used to write a computer instruction, program


software. A person who writes a program is called a programmer.

Functions of Software Programmer

 He writes a computer program


 He maintains a computer program

6|Page
 He upgrades a computer

TYPES OF PROGRAMMING LANGUAGES

Programming languages are of two types

 Low level programming language


 High level programming language
i. Low level languages

This is a computer program written in machine code language, the language


understood by a computer. It is also referred to as binary language because it
consists of only two digits. The digits of 0s and 1s

Types of low-level languages

 Machine code language (First generation)


 Assembly language (Second generation)

Assembly (low-level) languages

This is a language which consist of mnemonic symbols (English like words) used
to represent the binary digits of zeros and ones of machine language. Assembler
languages are used to develop system software.

However computers can only understand machine language, thus assembler


languages must be translated into machine language for execution.

Advantages of Low level languages/Machine code

 Machine code program are executed faster.


 They don't require either a compiler or interpreters except assembly
 They are suitable to developing operating systems.

Disadvantages of Low level languages

 They are difficult to learn and understand.


 The instructions are expressed in binary form ( 0 and 1s)
 The programs are machine dependent hence difficult to be used by other
machines of different family.

7|Page
ii. High level programming languages

This is a computer program written in official language (known to man) but should
be converted to machine code for a computer to understand.

High level languages consist of statements or sequences text including words,


numbers and punctuation, much like written natural languages.

Advantages of High level Languages

 They are machine independent and can be used by other computers.


 They are user friendly and problem oriented.
 They are easier to learn, write, correct and revise than assembler and
machine languages.
 They can be used for development of application software.

Disadvantages of High level Languages

 They require to be translated to machine code


 They are not executed faster.

Examples of high level languages

 COBOL  Ruby
 PASCAL  C++
 Python  C#(C-sharp)
 PERL
 Java Script  FORTRAN
 Java  PHP
 C
LANGUAGE PROCESSORS/TRANSLATORS

Language processors: These have to translate high level languages to machine


code languages which the processor can understand. They are software designed to
translate from high level language to low-level language.

8|Page
Examples of language processors

A compiler: a compiler is a program which translates a whole source program


from high level language to low level language which can easily be understood by
the computer.

An interpreter: This is a program that translates the source program line by line
while the program is running from high level language to low level language.

The assembler: This translates assembler instructions from assembly language to


machine code language or the binary code.

The linkers: These combine compiled programs and determine where the program
will be located in the memory.

Language editors
These are applications/software used to write computer language/codes. Some also
compile.

Examples of language editors

 Notepad
 Trouble c
 Borland
 Sublime Text
 Dev C, C++
 CodeBlocks
 Notepad ++
Common terms used in programming

Source code is a program instruction written as text file by the programmer that
must be translated by a compiler or interpreter or assembler into an object code
before execution.

Source code cannot be understood by the computer until it has been translated into
machine code.

9|Page
Execution is the process by which a computer system performs the instructions of
a computer program.

Object code is a program code in machine language that is ready for execution by
the computer.

Bug is a logical problem in the program source code that stops the program to give
wrong results/ from running

Debugging is the process of detecting, checking and identifying problems and


errors in the source code.

10 | P a g e

You might also like