0% found this document useful (0 votes)
156 views9 pages

Unit-I Programming For Problem Solving: Hardware

The document discusses the functions of an operating system including process management, memory management, I/O device management, file management, and more. It also covers the classification of operating systems such as batch systems, interactive systems, time-sharing systems, and real-time systems. Finally, it provides examples of common operating systems like Microsoft Windows and describes the basic services provided by operating systems.

Uploaded by

Saurabh Pandey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
156 views9 pages

Unit-I Programming For Problem Solving: Hardware

The document discusses the functions of an operating system including process management, memory management, I/O device management, file management, and more. It also covers the classification of operating systems such as batch systems, interactive systems, time-sharing systems, and real-time systems. Finally, it provides examples of common operating systems like Microsoft Windows and describes the basic services provided by operating systems.

Uploaded by

Saurabh Pandey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Unit-I Programming for Problem Solving 2021

Hardware:
This hardware is responsible for all the physical work of the computer.
Software:
This software commands the hardware what to do & how to do it. Together, the hardware &
software from the computer system. This software is further classified as system software &
application software.
System Software
System software are a set of programs, responsible for running the computer, controlling various
operations of computer systems and management of computer resources. They act as an interface
between the hardware of the computer & the application software. E.g.: Operating System.
Application software:
is a set of programs designed to solve a particular problem for users. It allows the end user to do
something besides simply running the hardware. E.g.: Web Browser, Gaming Software, etc.

Computer Classification:
Computers can be generally classified by size and power as follows, though there is considerable
overlap:
1. Personal computer: a small, single-user computer based on a microprocessor. In addition
to the microprocessor, a personal computer has a keyboard for entering data, a monitor for
displaying information, and a storage device for saving data.
2. Workstation: a powerful, single-user computer. A workstation is like a personal computer,
but it has a more powerful microprocessor and a higher-quality monitor.
3. Minicomputer: a multi-user computer capable of supporting from 10 to hundreds of users
simultaneously.
4. Mainframe: a powerful multi-user computer capable of supporting many hundreds or
thousands of users simultaneously.
5. Supercomputer: an extremely fast computer that can perform hundreds of millions of
instructions per second.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 1
Unit-I Programming for Problem Solving 2021
Computer Generation:

1. First Generation (1940-1956): Vacuum Tubes


 The first computers used vacuum tubes for circuitry and magnetic drums for memory,
and were often enormous, taking up entire rooms.
 They were very expensive to operate and in addition to using a great deal of electricity,
generated a lot of heat, which was often the cause of malfunctions.
 First generation computers relied on machine language, the lowest-level programming
language understood by computers, to perform operations, and they could only solve
one problem at a time.
 Input was based on punched cards and paper tape, and output was displayed on
printouts.
 The UNIVAC and ENIAC computers are examples of first-generation computing
devices.

2. Second Generation (1956-1963): Transistors


 Transistors replaced vacuum tubes and ushered in the second generation of computers.
The transistor was far superior to the vacuum tube, allowing computers to become
smaller, faster, cheaper, more energy-efficient and more reliable than their first-
generation predecessors.
 Second-generation computers still relied on punched cards for input and printouts for
output.
 Second-generation computers moved from cryptic binary machine language to
symbolic, or assembly, languages, which allowed programmers to specify instructions
in words.
 High-level programming languages were also being developed at this time, such as
early versions of COBOL and FORTRAN.
 The first computers of this generation were developed for the atomic energy industry.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 2
Unit-I Programming for Problem Solving 2021
3. Third Generation (1964-1971): Integrated Circuits

 The development of the integrated circuit was the hallmark of the third generation of
computers.
 Transistors were miniaturized and placed on silicon chips, called semiconductors, which
 drastically increased the speed and efficiency of computers.
 Instead of punched cards and printouts, users interacted with third generation computers
 through keyboards and monitors and interfaced with an operating system, which allowed
the device
 to run many different applications at one time with a central program that monitored the
memory.
 Computers for the first time became accessible to a mass audience because they were
smaller and cheaper than their predecessors.

4. Fourth Generation (1971-Present): Microprocessors


 The microprocessor brought the fourth generation of computers, as thousands of integrated
circuits were built onto a single silicon chip.
 The Intel 4004 chip, developed in 1971, located all the components of the computer—from
the central processing unit and memory to input/output controls—on a single chip.
 As these small computers became more powerful, they could be linked together to form
networks, which eventually led to the development of the Internet.
 Fourth generation computers also saw the development of GUIs, the mouse and handheld
devices.

5. Fifth Generation (Present and Beyond): Artificial Intelligence


 Fifth generation computing devices, based on artificial intelligence, are still in
development, though there are some applications, such as voice recognition, that are being
used today.
 The use of parallel processing and superconductors is helping to make artificial intelligence
a reality.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 3
Unit-I Programming for Problem Solving 2021
Topic: Operating system –functions and services

Definition: An operating system (OS) is a collection of software that manages computer hardware
resources and provides common services for computer programs.
Definition:(1) As an interface (2) As an environment (3) As a system software

Operating System functions:


1. Process Management 2. Main Memory management 3. I/O device management
4. File Management 5. Secondary storage management 6. Network Management
7. System Protection 8. Command interpretation

Classification of operating systems:


(i). Batch System:
 Program, its related data and relevant control command should be submitted together, in
the form of a job.
 No interaction between the users and the executing programs, very simple, transfer control
automatically.
 Scheduling of jobs is in the order of FCFS.
 Memory management is done by Master/Slave concept.
 No need of concurrency control.
 Good for the programs which have long execution.
(ii). Interactive System:
 An operating system that allows users to run interactive programs. Pretty much all
operating systems that are on PCs are interactive OS.
(iii). Time Sharing System:
 Time sharing (multitasking) is a logical extension of multiprogramming. The CPU
executes multiple jobs by switching among them, but the switches occur so frequently that
the users can interact with each program while it is running.
 CPU bound is divided into different time slots depending upon the number of users using
the system.
 There must be some CPU scheduling, memory management scheme, synchronization and
communication schemes.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 4
Unit-I Programming for Problem Solving 2021
(iv). Real Time System:
 This type of operating systems are used to control Scientific devices and similar small
instruments where memory and resources are crucial. These type of devices have very
limited or no end user utilities , so more effort should go into making the OS really memory
efficient and fast (less coding), so as to minimize the execution time, in turn saving on
power as well. Ex: VHDL, 8086 etc.
 Provide quick response time and thus to meet a scheduling deadline (time constraint).
 Resource utilization is secondary concern to these systems.
 Applicable to Rocket launching, flight control, robotics.
 Types (a) soft RTS (b) hard RTS
(v). Multiprocessor system:
 Multiprocessor System consists of a set of processors that shares a set of physical
memory blocks over an interconnection network.
 Controls and manage the hardware and software resources such that user can view the
entire system as a powerful uniprocessor system.
 Design is too complex.
 Parallel or tightly coupled systems.
(vi). Multiuser System:
 Multi-user is a term that defines an operating system or application software that allows
concurrent access by multiple users of a computer.
 Time-sharing systems are multi-user systems. Most batch processing systems for
mainframe computers may also be considered "multi-user", to avoid leaving the CPU idle
while it waits for I/O operations to complete.
Common services provided by an operating system:
 Program execution
 I/O operations
 File System manipulation
 Communication
 Error Detection
 Resource Allocation
 Protection

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 5
Unit-I Programming for Problem Solving 2021

Microsoft Windows:
 Windows is a meta family of graphical operating systems developed, marketed, and sold
by Microsoft.
 Active Windows families include Windows NT, Windows Embedded and Windows
Phone; these may encompass subfamilies, e.g. Windows Embedded Compact (Windows
CE) or Windows Server. Defunct Windows families include Windows 9x; Windows 10
Mobile is an active product, unrelated to the defunct family Windows Mobile.
 Microsoft introduced an operating environment named Windows on November 20, 1985,
as a graphical operating system shell for MS-DOS in response to the growing interest in
graphical user interfaces (GUIs).
 Version history-Windows 1.0, Windows 2.0, and Windows 2.1x Windows 3.x Windows
9x Windows NT, Windows XP, Windows Vista, Windows 7, Windows 8, and 8.1
Windows 10.
Basic Features of Windows Operating System:
1. Windows Easy Transfer
2. Windows Anytime Upgrade3
3. Windows Basics
4. Searching and Organizing
5. Parental Controls
6. Ease of Access Center
7. Default Programs
8. Remote Desktop Connection
Linux:
 The Unix operating system was conceived and implemented in 1969 at AT&T's Bell
Laboratories in the United States by Ken Thompson, Dennis Ritchie, Douglas McIlroy,
and Joe Ossanna.
 Linux Operating System has primarily three components.
1. Kernel: Kernel is the core part of Linux. It is responsible for all major activities of this
operating system. It consists of various modules and it interacts directly with the underlying
hardware. Kernel provides the required abstraction to hide low level hardware
details to system or application programs.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 6
Unit-I Programming for Problem Solving 2021
2. System Library: System libraries are special functions or programs using which
application programs or system utilities accesses Kernel's features. These libraries
implement most of the functionalities of the operating system and do not requires kernel
module's code access rights.
3. System Utility: System Utility programs are responsible to do specialized, individual
level tasks.

Android:
What is Android: One of the most widely used mobile OS these days is ANDROID. Android is
a software bunch comprising not only operating system but also middleware and key applications.
Android Inc was founded in Palo Alto of California, U.S. by Andy Rubin, Rich miner, Nick sears
and Chris White in 2003. Later Android Inc. was acquired by Google in 2005. After original
release there have been number of updates in the original version of Android
Features & Specifications:
 Android is a powerful Operating System supporting a large number of applications in
Smart Phones. These applications make life more comfortable and advanced for the
users.
 Android applications are written in java programming language.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 7
Unit-I Programming for Problem Solving 2021
 Android is available as open source for developers to develop applications which can be
further used for selling in android market.
 For software development, Android provides Android SDK (Software development kit).
Applications:
These are the basics of Android applications:
i. Android applications are composed of one or more application components (activities,
services, content providers, and broadcast receivers)
ii. Each component performs a different role in the overall application behaviour, and each
one can be activated individually (even by other applications)
iii. The manifest file must declare all components in the application and should also declare
all application requirements, such as the minimum version of Android required and any
hardware configurations required
iv. Non-code application resources (images, strings, layout files, etc.) should include
alternatives for different device configurations (such as different strings for different
languages.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 8
Unit-I Programming for Problem Solving 2021

References

1. Computer Concepts and Programming in C by D.S. Yadav and Rajeev Khanna, New Age
International Publication.
2. Schum‟s Outline of Programming with C by Byron Gottfried, McGraw-Hill
3. The C programming by Kernighan Brain W. and Ritchie Dennis M., Pearson Education.
4. Computer Basics and C Programming by [Link] , PHI Learning Pvt. Limited, 2015.
5. Computer Concepts and Programming in C, R.S. Salaria, Khanna Publishing House
6. Computer Concepts and Programming in C, E Balaguruswami, McGraw Hill
7. Computer Science- A Structured Programming Approach Using C, by Behrouz A. Forouzan,
Richard F. Gilberg, Thomson, Third Edition, Cengage Learning - 2007.
8. Let Us C By Yashwant P. Kanetkar.
9. Problem Solving and Program Design in C, by Jeri R. Hanly, Elliot B. Koffman, Pearson Addison-
Wesley, 2006.
10. Programming in C by Kochan Stephen G. Pearson Education – 2015.
11. Computer Concepts and Programming by Anami, Angadi and Manvi, PHI Publication.
12. Computer Concepts and Programming in C by Vikas Gupta, Wiley India Publication.

Disclaimer: The e-content is exclusively meant for academic purposes and for enhancing teaching
and learning. Any other use for economic/commercial purpose is strictly prohibited. The users of
the content shall not distribute, disseminate or share it with anyone else and its use is restricted to
advancement of individual knowledge.
The information provided in this e-content is developed from authentic references, to the best of
my knowledge.

By: SKY Computer Science & Engineering Department, I.E.T. Lucknow [U.P.] Page 9

You might also like