Computer - Module 3
Computer - Module 3
Computer - Module 3
Module III
Total Number of Lectures Required=5
LECTURE-I
1. Computer hardware and software.
2. Application software.
LECTURE-II
3. Operating system.
4. Computer program.
5. Machine language and high level language.
LECTURE-III
6. Computer virus, Antivirus and Computer security.
LECTURE-IV
7. Elements of MS DOS and Windows OS.
8. Computer arithmetic. Binary, octal and hexadecimal number
systems.
LECTURE-V
9. Algorithm and flowcharts. Illustrations.
10. Elements of database and its applications.
11. MCQ
12. KEY of MCQ
-Dr. Puja Singhal
LECTURE-I
Objective of this Lecture
End
User
Programmer
Application
Programs
Operating-
Utilities System
Designer
Operating-System
Computer Hardware
• Computer software, or just software is a general term primarily
used for digitally stored data such as computer programs and other
kinds of information read and written by computers. Today, this
includes data that has not traditionally been associated with
computers, such as film, tapes and records. The term was coined in
order to contrast to the old term hardware (meaning physical
devices); in contrast to hardware, software is intangible, meaning it
"cannot be touched".
• Practical computer systems divide software systems into three
major classes
• system software
• programming software
• application software
• System software is computer software designed to operate the
computer hardware and to provide and maintain a platform for
running application software.
• The most important types of system software are:
• The computer BIOS and device firmware, which provide basic
functionality to operate and control the hardware connected to or
built into the computer.
• The operating system (prominent examples being Microsoft
Windows, Mac OS X and Linux), which allows the parts of a
computer to work together by performing tasks like transferring data
between memory and disks or rendering output onto a display
device. It also provides a platform to run high-level system software
and application software.
• Utility software, which helps to analyze, configure, optimize and maintain
the computer.
• The purpose of systems software is to unburden the applications
programmer from the often complex details of the particular computer
being used, including such accessories as communications devices,
printers, device readers, displays and keyboards, and also to partition the
computer's resources such as memory and processor time in a safe and
stable manner. Examples are- Windows XP, Linux, and Mac OS X.
• Programming software
• A programming tool or software development tool is a program or
application that software developers use to create, debug, maintain, or
otherwise support other programs and applications. The term usually refers
to relatively simple programs that can be combined together to accomplish
a task, much as one might use multiple hand tools to fix a physical object.
The tools include: compilers ,debuggers ,interpreters ,linkers ,text editors ,
An Integrated development environment (IDE) is a single application that
attempts to manage all these functions.
2Application software
Application software
Application software is computer software designed to help the user perform a
particular task. Such programs are also called software applications,
applications or apps. Typical examples are word processors, spreadsheets,
media players and database applications.
Application software should be contrasted with system software
(infrastructure) or middleware (computer services/ processes integrators),
which is involved in integrating a computer's various capabilities, but
typically does not directly apply them in the performance of tasks that
benefit the user. A simple, if imperfect analogy in the world of hardware
would be the relationship of an electric light bulb (an application) to an
electric power generation plant (a system). The power plant merely
generates electricity, not itself of any real use until harnessed to an
application like the electric light that performs a service that benefits the
user.
LECTURE-II
Objective of this Lecture
3. Operating system.
4. Computer program.
5. Machine language and high level language.
3 Operating System
• An operating system (OS) is an interface between hardware and user which is
responsible for the management and coordination of activities and the sharing
of the resources of a computer, that acts as a host for computing applications
run on the machine. As a host, one of the purposes of an operating system is to
handle the resource allocation and access protection of the hardware. This
relieves application programmers from having to manage these details.
• Operating systems offer a number of services to application programs and
users. Applications access these services through application programming
interfaces (APIs) or system calls. By invoking these interfaces, the application
can request a service from the operating system, pass parameters, and receive
the results of the operation. Users may also interact with the operating system
with some kind of software user interface like typing commands by using
command line interface (CLI) or using a graphical user interface. For hand-
held and desktop computers, the user interface is generally considered part of
the operating system. On large multi-user systems like Unix and Unix-like
systems, the user interface is generally implemented as an application program
that runs outside the operating system.
• The below diagram gives a graphical depiction of the interfaces between the
operating system and the computer component.
• Characteristics of an Operating System are:
• Whether multiple programs can run on it simultaneously: multi-
tasking
• Whether it can take advantage of multiple processors: multi-
processing
• Whether multiple users can run programs on it simultaneously:
multi-user
• Whether it can reliably prevent application programs from directly
accessing hardware devices: protected
• Whether it has built-in support for graphics.
• Whether it has built-in support for networks.
Important functions of Operating system :
1)Job Management
Job management controls the order and time in which programs are
run and is more sophisticated in the mainframe environment where
scheduling the daily work has always been routine. IBM's job control
language (JCL) was developed decades ago. In a desktop environment,
batch files can be written to perform a sequence of operations that can
be scheduled to start at a given time.
2) Task Management
Multitasking, which is the ability to simultaneously execute multiple
programs, is available in all operating systems today. Critical in the
mainframe and server environment, applications can be prioritized to
run faster or slower depending on their purpose. In the desktop world,
multitasking is necessary for keeping several applications open at the
same time so you can bounce back and forth among them.
3) Data Management
Data management keeps track of the data on disk, tape and optical storage
devices. The application program deals with data by file name and a
particular location within the file. The operating system's file system
knows where that data are physically stored (which sectors on disk) and
interaction between the application and operating system is through the
programming interface. Whenever an application needs to read or write
data, it makes a call to the operating system
4) Device Management
Device management controls peripheral devices by sending them
commands in their own proprietary language. The software routine that
knows how to deal with each device is called a "driver," and the OS
requires drivers for the peripherals attached to the computer. When a new
peripheral is added, that device's driver is installed into the operating
system.
5) User Interface
All graphics based today, the user interface includes the windows, menus
and method of interaction between you and the computer. Prior to
graphical user interfaces (GUIs), all operation of the computer was
performed by typing in commands. Not at all extinct, command-line
interfaces are alive and well and provide an alternate way of running
programs on all major operating systems. Operating systems may support
optional interfaces, both graphical and command line. Although the
overwhelming majority of people work with the default interfaces,
different "shells" offer variations of appearance and functionality.
6) Security
Operating systems provide password protection to keep unauthorized users
out of the system. Some operating systems also maintain activity logs and
accounting of the user's time for billing purposes. They also provide
backup and recovery routines for starting over in the event of a system
failure.
4 Computer program
Machine language
The term "high-level language" does not imply that the language is
superior to low-level programming languages - in fact, in terms of the
depth of knowledge of how computers work required to productively
program in a given language, the inverse may be true. Rather, "high-level
language" refers to the higher level of abstraction from machine language.
Rather than dealing with registers, memory addresses and call stacks, high-
level languages deal with usability, threads, locks, objects, variables, arrays
and complex arithmetic or boolean expressions. In addition, they have no
opcodes that can directly compile the language into machine code, unlike
low-level assembly language. Other features such as string handling
routines, object-oriented language features and file input/output may also
be present.
LECTURE-III
Objective of this Lecture
Computer Virus
• A computer virus is a computer program that can copy itself and infect a
computer. The term "virus" is also commonly but erroneously used to refer
to other types of malware, adware, and spyware programs that do not have
the reproductive ability. A true virus can only spread from one computer to
another (in some form of executable code) when its host is taken to the
target computer; for instance because a user sent it over a network or the
Internet, or carried it on a removable medium such as a floppy disk, CD,
DVD, or USB drive. Viruses can increase their chances of spreading to
other computers by infecting files on a network file system or a file system
that is accessed by another computer.
• Types of viruses
1 Resident Viruses
This type of virus is a permanent which dwells in the RAM memory. From there it
can overcome and interrupt all of the operations executed by the system: corrupting
files and programs that are opened, closed, copied, renamed etc.
Examples include: Randex, CMJ, Meve, and MrKlunky.
2 Direct Action Viruses
The main purpose of this virus is to replicate and take action when it is executed.
When a specific condition is met, the virus will go into action and infect files in the
directory or folder that it is in and in directories that are specified in the
AUTOEXEC.BAT file PATH. This batch file is always located in the root directory
of the hard disk and carries out certain operations when the computer is booted.
3 Overwrite Viruses Virus of this kind is characterized by the fact that it
deletes the information contained in the files that it infects, rendering them
partially or totally useless once they have been infected. The only way to
clean a file infected by an overwrite virus is to delete the file completely,
thus losing the original content.Examples of this virus include: Way,
Trj.Reboot, Trivial.88.D.
4 Boot Virus This type of virus affects the boot sector of a floppy or hard
disk. This is a crucial part of a disk, in which information on the disk itself
is stored together with a program that makes it possible to boot (start) the
computer from the disk.The best way of avoiding boot viruses is to ensure
that floppy disks are write-protected and never start your computer with an
unknown floppy disk in the disk drive.
Examples of boot viruses include: Polyboot.B, AntiEXE.
5 FAT Virus -The file allocation table or FAT is the part of a disk used to
connect information and is a vital part of the normal functioning of the
computer. This type of virus attack can be especially dangerous, by
preventing access to certain sections of the disk where important files are
stored. Damage caused can result in information losses from individual files
or even entire directories.
6 WormsA worm is a program very similar to a virus; it has the ability to
self-replicate, and can lead to negative effects on your system and most
importantly they are detected and eliminated by antiviruses.
Examples of worms include: PSWBugbear.B, Lovgate.F, Trile.C, Sobig.D,
Mapson.
7 Trojans or Trojan HorsesAnother unsavory breed of malicious code are
Trojans or Trojan horses, which unlike viruses do not reproduce by
infecting other files, nor do they self-replicate like worms.
Antivirus
• Antivirus (or anti-virus) software is used to prevent, detect, and remove
malware, including computer viruses, worms, and trojan horses. Such
programs may also prevent and remove adware, spyware, and other forms
of malware.
• A variety of strategies are typically employed. Signature-based detection
involves searching for known malicious patterns in executable code.
However, it is possible for a user to be infected with new malware in
which no signature exists yet. To counter such so-called zero-day threats,
heuristics can be used. One type of heuristic approach, generic signatures,
can identify new viruses or variants of existing viruses by looking for
known malicious code (or slight variations of such code) in files. Some
antivirus software can also predict what a file will do if opened/run by
emulating it in a sandbox and analyzing what it does to see if it performs
any malicious actions. If it does, this could mean the file is malicious.
Computer security
• Computer security is a branch of computer technology known as
information security as applied to computers and networks. The objective
of computer security includes protection of information and property from
theft, corruption, or natural disaster, while allowing the information and
property to remain accessible and productive to its intended users. The
terms computer system security, means the collective processes and
mechanisms by which sensitive and valuable information and services are
protected from publication, tampering or collapse by unauthorized
activities or untrustworthy individuals and unplanned events respectively.
• Computer security is frequently associated with three core areas, which can be
conveniently summarized by the acronym "CIA":
• Confidentiality -- Ensuring that information is not accessed by unauthorized
persons
• Integrity -- Ensuring that information is not altered by unauthorized persons
in a way that is not detectable by authorized users
• Authentication -- Ensuring that users are the persons they claim to be
• A strong security protocol addresses all three of these areas. Take, for
example, Netscape's SSL (Secure Sockets Layer) protocol. It has enabled an
explosion in ecommerce which is really about trust (or more precisely, about
the lack of trust). SSL overcomes the lack of trust between transacting parties
by ensuring confidentiality through encryption, integrity through checksums,
and authentication via server certificates
• Computer security is not restricted to these three broad concepts. Additional
ideas that are often considered part of the taxonomy of computer security
include:
• Access control -- Ensuring that users access only those resources and
services that they are entitled to access and that qualified users are not denied
access to services that they legitimately expect to receive
• Nonrepudiation -- Ensuring that the originators of messages cannot deny
that they in fact sent the messages
• Availability -- Ensuring that a system is operational and functional at a
given moment, usually provided through redundancy; loss of availability is
often referred to as "denial-of-service“
• Privacy -- Ensuring that individuals maintain the right to control what
information is collected about them, how it is used, who has used it, who
maintains it, and what purpose it is used for
LECTURE-IV
Objective of this Lecture
• Because electronic logic deals with currents that are on or off, it has
been found convenient to represent quantities in binary form to
perform arithmetic on a computer. Thus, instead of having ten
different digits, 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9, in binary arithmetic,
there are only two different digits, 0 and 1, and when moving to the
next column, instead of the digit representing a quantity that is ten
times as large, it only represents a quantity that is two times as
large. Thus, the first few numbers are written in binary as follows:
• Decimal Binary
• Zero 0 0 Seven 7 111
• One 1 1 Eight 8 1000
• Two 2 10 Nine 9 1001
• Three 3 11 Ten 10 1010
• Four 4 100 Eleven 11 1011
• Five 5 101 Twelve 12 1100
• Six 6 110
• Binary addition
• In binary addition only 0's and 1's can be used, instead of the whole
spectrum of 0-9. This actually makes binary addition much simpler
than decimal addition, as we only need to remember the following:
• 0+0=0
0+1=1
1+0=1
1 + 1 = 10
• As an example of binary addition we have,
• 101
+101
1010
• Binary multiplication is actually much simpler than decimal multiplication. In
the case of decimal multiplication, we need to remember 3 x 9 = 27, 7 x 8 = 56,
and so on. In binary multiplication, we only need to remember the following,
• 0x0=0
0x1=0
1x0=0
1x1=1
• Example
• 101
x11
101
1010
1111
• Binary division is almost as easy, and involves our knowledge of
binary multiplication. Take for example the division of 1011 into 11.
• 1001
+ 10
1011 <-- sum of product and remainder
• The sum is equal to our initial dividend, therefore our solution is correct.
• Decimal to binary follows a straightforward method. It involves dividing the
number to be converted, say N, by 2 (since binary is in base 2), and making note of
the remainder. We continue dividing the quotient (N / 2) by 2, until we reach the
division of (1 / 2), also making note of all remainders.
• Example 1: Convert 98 from decimal to binary.
• 1) Divide 98 by 2, making note of the remainder. Continue dividing quotients by 2,
making note of the remainders. Also note the star (*) beside the last remainder.
• Division Remainder
• 98/2=49 0
• 49 / 2 = 24 1
• 24/2=12 0
• 12/2=6 0
• 6/2=3 0
• 3/2=1 1
• ½=1 1*
• 2) The sequence of remainders going up gives the answer. Starting from 1*,
we have 1100010. Therefore, 98 in decimal is 1100010 in binary.
Convert Binary to decimal
1. input x Sum = x + y
2. input y
3. sum = x + y Average = sum/2
END
10 Elements of database and its applications.
•
• Change and access logging - Often one wants to know who accessed what
attributes, what was changed, and when it was changed. Logging services allow this
by keeping a record of access occurrences and changes.
• Automated optimization - If there are frequently occurring usage patterns or
requests, some DBMS can adjust themselves to improve the speed of those
interactions. In some cases the DBMS will merely provide tools to monitor
performance, allowing a human expert to make the necessary adjustments after
reviewing the statistics collected.
• Applications of Database
• Databases function in many applications, spanning virtually the entire range of
computer software. Databases have become the preferred method of storage for
large multi-user applications, where coordination between many users is
needed. Even individual users find them convenient, and many electronic mail
programs and personal organizers are based on standard database technology.
Software database drivers are available for most database platforms so that
application software can use a common API to retrieve the information stored in
a database. Commonly used database APIs include JDBC and ODBC.
11 Multiple Choice Questions
Q1….. is a general term primarily used for digitally stored data such as
computer programs and other kinds of information read and written by
computers
a) Computer software b) Hardware c) Operating System d) None