History of C++
History of C++
In 1960s
different languages were used for different applications, for example, FORTRAN
for Engineering Application, COBOL for Commercial Application and so on. Later
on an international committee was set up that developed a single language
called ALGOL 60, Which can be used for all application. But this language was
too abstract and too general to be accepted. This lead to the development of a
new language named CPL ( Combined Programming Language), which had so many
features and was hard to learn and implement. After this Martin Richards BCPL
(Basic Combined Programming Language) and Ken Thompson’s B language were also
not accepted because they were too specific to be implemented. Finally, in
1972, Ritchie made a successful attempt at AT&T’s Bell Laboratories of USA
to develop a new language called C language by inheriting the features of both
the BCPL and B languages. In order to define the C language, a committee was
set up to create an ANSI (American National Standards Institute) standard
called ANSI C standard, which was finally adopted by ISO (International
Standard Organization) in 1989.
Bjarne Stroustrup ar Bell Labs initially developed C++ during the early
1980’s. it was designed to support the features of C such as efficiency and
low-level support for system level coding. Added to this were features such as
classes with inheritance and virtual functions. C++ is best described as a
superset of C, with full support for object-oriented programming. Though C is
an excellent language for writing efficient system programs, but for other
types of programs, C code can be hard to understand, C programs can also be
prone to certain types of error. The extra object-oriented facilities in C++
are partly included to overcome these shortcomings.
OPERATING SYSTEM, Types of OPERATING SYSTEM
OPERATING SYSTEM
An operating system is defined as an interface (or bridge)
between the user of computer and the computer hardware. An operating creates
such a friendly environment for the user in which the computer is used
effectively and efficiently. An operating system performs a number
inter-process communication, protection and security.
Types of OPERATING
SYSTEM
BATCH PROCESSING
OPERATING SYSTEM
Batch
processing means executing a series of jobs all at one time. The jobs with
similar requirements are batched together and run through the computer as a
group. The term originated in the days when users entered programs on punch
cards. They would give a batch of these programmed cards to the system
operator, who would feed them into the computer. Batch jobs can be stored up
during working hours and then executed during the evening or whenever the
computer is idle. Batch processing is particularly useful for operations that
require the computer or a peripheral device for an extended period of time. Once
a batch job begins, it continues until it is done or until an error occurs. Note
that batch processing implies that there is no interaction with the user while
the program is being executed.
For example: The
credit card companies process the billing system. The customer does not receive
a bill for each separate credit card purchase but one monthly bill for all of
that month’s purchases. The bill is created through batch processing, where all
of the data are collected and held until the bill is processed as a batch at
the end of the billing cycle.
Features
3) Information of master file is up to date only up to last
execution.
4) Magnetic tapes as well as magnetic disks are used, output
reports are printed in detail.
TIME SHARINGOPERATING
SYSTEM
Time-sharing is an approach to interactive computing in which a single
computer is used to provide simultaneous interactive general-purpose computing
to multiple users by sharing processor time. This is done by providing a
separate terminal to each user. Each terminal is connected to main computer
system. CPU time one by one. This short period of time is called time slice. The
user feels that he is having his own computer. In time sharing system hundreds
of users may be using the system simultaneously. It is not possible to keep the
programs of all the users in the memory at the same time. So operating system
keeps few programs in the main memory and the rest of the programs stored in
the disk.
Advantages
1) The response time is very less in case of time sharing
systems.
2) The CPU utilization is increased.
3) The memory management in time sharing system provides for
the protection and separation of user programs.
4) It is cost effective.
REAL TIME OPERATING
SYSTEM
When the time requirements on the operation of processor ot
the flow of data are very critical, then real time operating systems are used. Real
time means a quick response from the computer. In the real time system each
process is assigned a priority according to the importance of process. The processor
is normally allocated to the highest priority process among those which are
ready to execute.
For example:
1) Air traffic control system
2) Chemical process control system.
3) Scientific experiments
4) Real time simulations
5) Medical equipment
6) Automotive applications etc.
Types of real time systems:
1 Hard real time system
2 Soft real time system
ONLINE SYSTEMS
In online systems, there is direct interaction of the user
and the computer and the response time is very less. Each user is provided the
direct access to the CPU on time sharing basis. The transactions in the online
systems are processed as soon as the data is entered into the system.
For examples:
a)
Railway reservation system
b)
Banking system
c)
Stock prices in the stock market etc.
OFFLINE SYSTEMS
In
offline systems, the transactions are not processed immediately rather the data
is collected for some specific period of time and the processing is done after
the specific time. The batch processing is the best example of offline system
where the jobs are collected and processed after certain time interval.
OBJECT ORIENTED PROGRAMMING (OOP)
OBJECT ORIENTED PROGRAMMING (OOP)
It will certainly be moral to say that object oriented
programming acts as the seventh heaven for the programmers. Till 1970s, object
orientation was just thinking among programmers. But using the object oriented
approach in C++ is just incredible. The prospect to accustom programming to
objects allows the programmer to design various applications and to reuse the
code in a more logical and creative manner. Object- oriented approach reveals a
particular way of viewing about problems and tasks in terms of recognizing and
describing the behavior of the applicable objects. Smalltalk is a classical
example of a pure object-oriented language. C++ incorporates the facilities for
both the object-oriented programming and conventional procedural programming. C++
adjoins many enhancements of its own to fresh up the problems that were present
in the original C language.
Structured
programming can be roughly divided into two categories:
Structured programming is basically dividing a program into
smaller modules that are easier to manage. All of what we have covered up to
this point is part of procedural programming in this the programmer will divide
the program into smaller functions (rather than putting the entire code within
one function). Each function would have its own variables and sharing of
variables between various functions is also possible. What we will see
henceforth is related to object oriented programming (OOP). Large programs were
difficult to handle in procedural programming an=d OOP was developed to reduce
complexity of software development. In C++, OOP is implemented using classes. The
main concepts in OOP are:
A virus cannot cause any damage to the physical devices connected to the infected computer
VIRUSES
Virus stands for vital information under siege. A virus is a
destructive program that is designed to destroy the information stored in
computer. It enters the system without the knowledge of the user. It enters
through infected floppy or infected program or through network. It makes multiple
copies of itself and causes the abnormal functioning in the system. When a
virus travels through a network then it spreads to all the computers connected
to the network. Virus forms its copies and place them in to the main memory. When
a program is being executed by the user the virus attaches its copy to that
program.
A virus
cannot cause any damage to the physical devices connected to the infected
computer:-
1 It decreases the speed of the computer.
2 It erases the information stored in primary and secondary
memory of the system.
3 It displays unusual messages on the screen.
4 Some powerful virus can delete the instruction in the BIOS
of the Motherboard.
Types of Viruses
1 Times bound viruses
2 Trojan horses
3 Worms
4 Boot sector viruses.
5 File viruses
6 Macro viruses
7 E-mail viruses
CATEGORIES OF PROGRAMMING LANGUAGE
MACHINE LEVEL LANGUAGE
Machine language is the elementary language of a computer. The
computer is capable of understanding this machine level language only. Principally,
the machine code encloses the strings of two binary numbers, string of 0s and
1s. these strings of binary numbers are then transformed into electrical
signals.
Facts about Machine Level Language:
1 Machine level languages are machine dependent.
2 Machine level language is easily understood by computer.
3 Machine level programs are implemented at a very fast
speed.
4 Machine level language programs are tough to formulate.
Machine level language programs are hard to modify.
ASSEMBLY LEVEL LANGUAGE
An assembly level language substitutes the letters as well
as symbols (known as mnemonics) as an alternatives of numbers (used in machine
level language). That’s why an assembly level language is also phrased as a
symbolic language.
Facts about Assembly Level Language:
1 Assembly level languages are machine dependent.
2 Assembly level languages are easy to understand
3 Assembly level language programs require less efforts to
be developed.
4 Assembly level language programs are easy to modify.
5 Assembly level language programming environment requires
the programmer to have a comprehensive knowledge of the hardware on which he is
going to perform.
HIGH LEVEL LANGUAGE
A high level language smoothes the advancement of the
programmers to focus on the logic of the problem. This means that the
programmers are now free from having a wide-ranging awareness of the hardware
of the machine on which they are going to perform. A high level language
encloses English words as well as Mathematical symbols.
Facts about High Level Language:
1 High level language are machine independent.
2 High level languages are easy to understand.
3 High level language programs are easy to modify and
maintain.
4 High level language programs require more storage space.
5 High level language programs typically require more time
to run.
Subscribe to:
Posts
(
Atom
)