Fundamentals of Computing: Lecture 5 - Software
Fundamentals of Computing: Lecture 5 - Software
Lecture 5 - Software
Software
Application software
Easy-to-use programs designed to perform specific
tasks
System software
Programsthat support the execution and
development of other programs
Operating System
Controlsand manages the computing resources
Examples
Windows, Unix, MSDOS,
Functions of the Operating System
It provides a link between the user and the hardware.
It provides an interface for users to communicate with the
computer.
It co-ordinates the operation of all parts of the computer system.
It maintains the flow of events and its operates some peripherals
It runs software programs and controls how a software program
interacts with the user.
It provides the user with tools for managing disks, files and
folders.
Security to prevent unauthorized users from accessing the system
What happens during the boot up?
The computer loads data from the read-only memory(ROM) and performs a
power-on self-test(POST) to ensure that all the major components are working
properly.
The computer loads the basic input/output system (BIOS) from ROM. The BIOS
provides the most basic information about storage devices, boot sequence,
security and a fewer other items.
The computer loads the operating system from the hard drive in the system’s
random access memory(RAM). Generally, the critical parts of the operating
system are maintained in RAM when the computer is ON.
When an application is launched, it is loaded in RAM. To conserve RAM usage,
many applications initially load only the essential parts of the programme and
then load other pieces as required.
When an application has loaded, any files that are opened for use in the
application are loaded in RAM.
When a file is saved and the application closed, the file is written to the
specified storage device and the file and the application is removed from RAM.
Application Software
Application software makes computer popular and easy to use.
Common application software:
Microsoft Word, WordPerfect
PowerPoint
Netscape, Internet Explorer
PhotoShop, Photo-Paint
Netbeans
Dreamweaver
What is a programming language?
A set of instructions
An algorithm A program
(in human readable) (in computer language)
Examples of compilers:
g++,gcc
Translation System
Set of programs used to develop software
Types of translators:
Compiler
Linker
Examples
g++, gcc
Software Development
Major activities in Software Development.
Editing (writing the program)
Compiling (creates .obj file)
Linking with compiled files (creates .exe file)
Object files S o u rc e P ro g ra m
Library modules
C o m p ile
Loading and executing L ib r a r y r o u t in e s
E d it
Testing the program L in k
O t h e r o b je c t file s
T h in k Load
E x e c u te
Integrated Development Environments
Combine all of the capabilities that a programmer would want
while developing software (VC++ 2008, Eclipse)
Editor
Compiler
Linker
Loader
Debugger
Program Example
// a simple program
#include <iostream> Comments
using namespace std;
int main() {
Function cout << "Hello world!" << endl;
named return 0;
main() }
indicates
start of
program
Hardware Requirements
Before you attempt to install an OS on a machine, it would be
wise to ensure that the OS in question runs on the hardware
that you have available.
Multi-platform OS Support
Most OS vendors that distribute software that runs on multiple
hardware architectures publish a hardware compatibility list
(HCL) for their OS.
Single Platform OS Support
Vendorsof single-architecture OS deal with many of the same
problems faced by multi-platform vendors.
Installing an Operating System…
Windows Installations
Most Windows installations give the administrator very few options.
When installing from the distribution media, the administrator
selects the partition to install the bits on, answers a few questions
about the local environment. The system does the rest without
input from the operator.
Unfortunately, the information required during the installation is
not all collected up front; the information-gathering process is
spread across the entire installation process.
This makes Windows installation more time consuming than it
should be, as the administrator has to sit and wait for the system to
ask questions.
Ifthe questions were all asked up-front, the administrator would be
free to attend to other tasks while the bits moved from the CD to
the hard drive.
Installation Methods…
Network Installations
If you want to customize the installation process, and/or make it completely
automatic, you need to build a network-based installation server.
Such an installation is referred to as an “unattended” installation in Windows.
The installation server contains on-line copies of the distribution media, a set
of “answer” files that control what parts of the software get installed on the
system, and a “boot daemon” that listens for installation requests on the
network.
You can customize the answer files to install the OS and any required
applications without operator intervention.
Thisis a much more suitable installation method if you have to install 100
computers instead of 2 or 3.
Installation in other platforms…
UNIX Installations
Linux Kickstart
Solaris
Review Questions
1. What is a software?
2. Define an algorithm.
3. Differentiate between System Software and Application Software
4. What is dual-boot?
5. What are some of the things you need to consider when planning
a software installation?
6. Discuss the different types of installations.
7. Distinguish between homogeneous and heterogeneous servers.
8. What is booting?
9. Differentiate between a warm boot and a cold boot.
10. Outline the boot process of a computer running a Windows OS.
1A-34
Research
Software developers and the kind of software they develop.
Software development cycle.
CPU manufactures and the latest properties of processors.
References
https://en.wikipedia.org
http://www.slideshare.com/
www.delmarlearning.com