Introduction To Computers
Introduction To Computers
A computer system has three main components: hardware, software, and people. The equipment
associated with a computer system is called hardware. Software is a set of instructions that tells the
hardware what to do. People, however, are the most important component of a computer system - people
use the power of the computer for some purpose. In fact, this course will show you that the computer can
be a tool for just about anyone from a business person, to an artist, to a housekeeper, to a student - an
incredibly powerful and flexible tool.
What is a computer? A six-year-old called a computer "radio, movies, and television combined!" A ten-
year-old described a computer as "a television set you can talk to." The ten-year-old's definition is closer
but still does not recognize the computer as a machine that has the power to make changes.
A computer is a machine that can be programmed to accept data (input), process it into useful information
(output), and store it away (in a secondary storage device) for safekeeping or later reuse. The processing of
input to output is directed by the software but performed by the hardware.
To function, a computer system requires four main aspects of data handling: input, processing, output, and
storage. The hardware responsible for these four areas operates as follows:
Input devices accept data in a form that the computer can use; they then send the data to the
processing unit.
The processor, more formally known as the central processing unit (CPU), has the electronic
circuitry that manipulates input data into the information people want. The central processing unit
executes computer instructions that are specified in the program.
Output devices show people the processed data-information in a form that they can use.
Storage usually means secondary storage. Secondary storage consists of devices, such as diskettes,
which can store data and programs outside the computer itself. These devices supplement the
computer's memory, which, as we will see, can hold data and programs only temporarily.
Characteristics of Computers
Basic characteristics about computer are:
2. Accuracy: – The degree of accuracy of computer is very high and every calculation is performed with
the same accuracy. The accuracy level is 7. determined on the basis of design of computer. The errors in
computer are due to human and inaccurate data..
3. Diligence: – A computer is free from tiredness, lack of concentration, fatigue, etc. It can work for hours
without creating any error. If millions of calculations are to be performed, a computer will perform every
calculation with the same accuracy. Due to this capability it overpowers human being in routine type of
work.
4. Versatility: – It means the capacity to perform completely different type of work. You may use your
computer to prepare payroll slips. Next moment you may use it for inventory management or to prepare
electric bills.
5. Power of Remembering: – Computer has the power of storing any amount of information or data.
Any information can be stored and recalled as long as you require it, for any numbers of years. It depends
entirely upon you how much data you want to store in a computer and when to lose or retrieve these
data.
6. No IQ: – Computer is a dumb machine and it cannot do any work without instruction from the user. It
performs the instructions at tremendous speed and with accuracy. It is you to decide what you want to do
and in what sequence. So a computer cannot take its own decision as you can.
7. No Feeling: – It does not have feelings or emotion, taste, knowledge and experience. Thus it does not
get tired even after long hours of work. It does not distinguish between users.
8. Storage: – The Computer has an in-built memory where it can store a large amount of data. You can
also store data in secondary storage devices such as floppies, which can be kept outside your computer
and can be carried to other computers.
Block diagram of computer
Computer Block Diagram System: Mainly computer system consists of three parts, that are central
processing unit (CPU), Input Devices, and Output Devices. The Central Processing Unit (CPU) is divided into
two parts again: arithmetic logic unit (ALU) and the control unit (CU). The set of instruction is in the form of
raw data.
A large amount of data is stored in the computer memory with the help of primary and secondary storage
devices. The CPU is like the heart/brain of the computer. The user does not get the desired output, without
the necessary option taken by the CPU. The Central processing unit (CPU) is responsible for the processing
of all the instructions which are given by the user to the computer system.
Booting Process
Types of Programming Languages- Machine Languages, Assembly Languages, High Level Languages
Machine-level language
The machine-level language is a language that consists of a set of instructions that are in the binary form 0
or 1. As we know that computers can understand only machine instructions, which are in binary digits, i.e.,
0 and 1, so the instructions given to the computer can be only in binary codes. Creating a program in a
machine-level language is a very difficult task as it is not easy for the programmers to write the program in
machine instructions. It is error-prone as it is not easy to understand, and its maintenance is also very high.
A machine-level language is not portable as each computer has its machine instructions, so if we write a
program in one computer will no longer be valid in another computer.
The different processor architectures use different machine codes, for example, a PowerPC processor
contains RISC architecture, which requires different code than intel x86 processor, which has a CISC
architecture.
Assembly Language
The assembly language contains some human-readable commands such as mov, add, sub, etc. The
problems which we were facing in machine-level language are reduced to some extent by using an
extended form of machine-level language known as assembly language. Since assembly language
instructions are written in English words like mov, add, sub, so it is easier to write and understand.
As we know that computers can only understand the machine-level instructions, so we require a translator
that converts the assembly code into machine code. The translator used for translating the code is known
as an assembler.
The assembly language code is not portable because the data is stored in computer registers, and the
computer has to know the different sets of registers.
The assembly code is not faster than machine code because the assembly language comes above the
machine language in the hierarchy, so it means that assembly language has some abstraction from the
hardware while machine language has zero abstraction.
High-Level Language
The high-level language is a programming language that allows a programmer to write the programs which
are independent of a particular type of computer. The high-level languages are considered as high-level
because they are closer to human languages than machine-level languages.
When writing a program in a high-level language, then the whole attention needs to be paid to the logic of
the problem.
o The high-level language is easy to read, write, and maintain as it is written in English like words.
o The high-level languages are designed to overcome the limitation of low-level language, i.e.,
portability. The high-level language is portable; i.e., these languages are machine-independent.
Tip
Today, most of the drives listed below are obsolete. The most common drives used with home computers
are hard drives, SSDs (solid-state drives), disc drives, and USB drives.
Bernoulli drive (obsolete)
Disc drives: Blu-ray, CD-R, CD-ROM, CD-RW, and DVD.
Flash drive.
Floppy disk drive (obsolete)
Hard drive
Local drive
LS-120 (obsolete)
Network drive
RAM disk
SSD
SuperDisk (obsolete)
Tape drive
USB drive
Virtual drive
Zip drive (obsolete)
File
Updated: 08/02/2020 by Computer Hope
A file may refer to any of the following:
1. A file is an object on a computer that stores data, information, settings, or
commands used with a computer program. In a GUI (graphical user
interface), such as Microsoft Windows, files display as icons that relate
to the program that opens the file. For example, the picture is an icon
associated with Adobe Acrobat PDF files. If this file was on your
computer, double-clicking the icon opens it in Adobe Acrobat or the PDF
reader installed on the computer.
Directory
Updated: 05/21/2018 by Computer Hope
A directory is a location for storing files on your computer. Directories
are found in a hierarchical file system, such as Linux, MS-DOS, OS/2,
and Unix.
Storage Devices
Primary Storage: This is the direct memory which is accessible to the Central Processing Unit
(CPU).
Secondary Storage: This type of storage does not have direct accessibility to the Central Processing
Unit.
o The input and output channels are used to connect such storage devices to the computer, as
they are mainly external
o It is non-volatile and larger storage capacity in comparison to primary storage
o This type of storage is permanent until removed by an external factor
o It comprises of both internal and external memory
o Examples of secondary storage are USB drives, floppy disks, etc.
I/O Devices
Input/output device
Updated: 08/02/2020 by Computer Hope
Alternatively referred to as an IO device, an input/output device is
any hardware used by a human operator or other systems to
communicate with a computer. As the name suggests, input/output
devices are capable of sending data (output) to a computer and
receiving data from a computer (input).
Most people use computer monitors daily at work and at home. And while these
come in a variety of shapes, designs, and colors, they can also be broadly categorized into three types. If
you are not sure what these are and would like an introduction to the different types of computer
monitors then here we explain the three main types, as well as the pros and cons of each.
While CRT monitors can still be found in some organizations, many offices have stopped using them largely
because they are heavy, bulky, and costly to replace should they break. While they are still in use, it would
be a good idea to phase these monitors out for cheaper, lighter, and more reliable monitors.
Images transmitted by these monitors don’t get geometrically distorted and have little flicker. However,
this type of monitor does have disadvantages, such as its relatively high price, an image quality which is not
constant when viewed from different angles, and a monitor resolution that is not always constant,
meaning any alterations can result in reduced performance.
The advantages of LED monitors are that they produce images with higher contrast, have less negative
environmental impact when disposed, are more durable than CRT or LCD monitors, and features a very
thin design. They also don’t produce much heat while running. The only downside is that they can be more
expensive, especially for the high-end monitors like the new curved displays that are being released.
Being aware of the different types of computer monitors available should help you choose one that’s most
suited to your needs. Looking to learn more about hardware in today’s world? Contact us and see how we
can help.
Monitor
Updated: 05/16/2020 by Computer Hope
A monitor may refer to any of the following:
Tip
When used as a noun, the term "monitor" is synonymous with a computer "screen" and "display."
Like most early TVs, the first computer monitors were comprised of
a CRT (cathode ray tube) and a fluorescent screen. Today, all monitors
are created using flat-panel display technology, usually backlit
with LEDs (light-emitting diode). The image is an example of an
ASUS LCD (liquid-crystal display) monitor.
Services provided by OS
Here is a list of common services offered by an almost all operating systems:
User Interface
Program Execution
File system manipulation
Input / Output Operations
Communication
Resource Allocation
Error Detection
Accounting
Security and protection
User Interface
Usually Operating system comes in three forms or types. Depending on the interface their types have been
further subdivided. These are:
Program Execution
The operating system must have the capability to load a program into memory and execute that program.
Furthermore, the program must be able to end its execution, either normally or abnormally / forcefully.
Error Detection
Errors may occur within CPU, memory hardware, I/O devices and in the user program. For each type of
error, the OS takes adequate action for ensuring correct and consistent computing.
Accounting
This service of the operating system keeps track of which users are using how much and what kinds of
computer resources have been used for accounting or simply to accumulate usage statistics.
Protection and Security
Protection includes in ensuring all access to system resources in a controlled manner. For making a system
secure, the user needs to authenticate him or her to the system before using (usually via login ID and
password).
Types of O.S
Following are some of the most widely used types of Operating system.
In this type of system, there is no direct interaction between user and the computer.
The user has to submit a job (written on cards or tape) to a computer operator.
Then computer operator places a batch of several jobs on an input device.
Jobs are batched together by type of languages and requirement.
Then a special program, the monitor, manages the execution of each program in the batch.
The monitor is always in the main memory and available for execution.
In this the operating system picks up and begins to execute one of the jobs from memory.
Once this job needs an I/O operation operating system switches to another job (CPU and OS always
busy).
Jobs in the memory are always less than the number of jobs on disk(Job Pool).
If several jobs are ready to run at the same time, then the system chooses which one to run
through the process of CPU Scheduling.
In Non-multiprogrammed system, there are moments when CPU sits idle and does not do any work.
In Multiprogramming system, CPU will never be idle and keeps on processing.
Multiprocessor Systems
A Multiprocessor system consists of several processors that share a common physical memory.
Multiprocessor system provides higher computing power and speed. In multiprocessor system all
processors operate under single operating system. Multiplicity of the processors and how they do act
together are transparent to the others.
Desktop Systems
Earlier, CPUs and PCs lacked the features needed to protect an operating system from user programs. PC
operating systems therefore were neither multiuser nor multitasking. However, the goals of these
operating systems have changed with time; instead of maximizing CPU and peripheral utilization, the
systems opt for maximizing user convenience and responsiveness. These systems are called Desktop
Systems and include PCs running Microsoft Windows and the Apple Macintosh. Operating systems for
these computers have benefited in several ways from the development of operating systems
for mainframes.
Microcomputers were immediately able to adopt some of the technology developed for larger operating
systems. On the other hand, the hardware costs for microcomputers are sufficiently low that individuals
have sole use of the computer, and CPU utilization is no longer a prime concern. Thus, some of the design
decisions made in operating systems for mainframes may not be appropriate for smaller systems.
1. As there are multiple systems involved, user at one site can utilize the resources of systems at other
sites for resource-intensive tasks.
2. Fast processing.
3. Less load on the Host Machine.
1. Client-Server Systems
2. Peer-to-Peer Systems
Client-Server Systems
Centralized systems today act as server systems to satisfy requests generated by client systems. The
general structure of a client-server system is depicted in the figure below:
Peer-to-Peer Systems
The growth of computer networks - especially the Internet and World Wide Web (WWW) – has had a
profound influence on the recent development of operating systems. When PCs were introduced in the
1970s, they were designed for personal use and were generally considered standalone computers. With
the beginning of widespread public use of the Internet in the 1990s for electronic mail and FTP, many PCs
became connected to computer networks.
In contrast to the Tightly Coupled systems, the computer networks used in these applications consist of a
collection of processors that do not share memory or a clock. Instead, each processor has its own local
memory. The processors communicate with one another through various communication lines, such as
high-speed buses or telephone lines. These systems are usually referred to as loosely coupled systems ( or
distributed systems). The general structure of a client-server system is depicted in the figure below:
Clustered Systems
Like parallel systems, clustered systems gather together multiple CPUs to accomplish
computational work.
Clustered systems differ from parallel systems, however, in that they are composed of two or more
individual systems coupled together.
The definition of the term clustered is not concrete; the general accepted definition is that
clustered computers share storage and are closely linked via LAN networking.
Clustering is usually performed to provide high availability.
A layer of cluster software runs on the cluster nodes. Each node can monitor one or more of the
others. If the monitored machine fails, the monitoring machine can take ownership of its storage,
and restart the application(s) that were running on the failed machine. The failed machine can
remain down, but the users and clients of the application would only see a brief interruption of
service.
Asymmetric Clustering - In this, one machine is in hot standby mode while the other is running the
applications. The hot standby host (machine) does nothing but monitor the active server. If that
server fails, the hot standby host becomes the active server.
Symmetric Clustering - In this, two or more hosts are running applications, and they are monitoring
each other. This mode is obviously more efficient, as it uses all of the available hardware.
Parallel Clustering - Parallel clusters allow multiple hosts to access the same data on the shared
storage. Because most operating systems lack support for this simultaneous data access by multiple
hosts, parallel clusters are usually accomplished by special versions of software and special releases
of applications.
Clustered technology is rapidly changing. Clustered system's usage and it's features should expand greatly
as Storage Area Networks(SANs). SANs allow easy attachment of multiple hosts to multiple storage units.
Current clusters are usually limited to two or four hosts due to the complexity of connecting the hosts to
shared storage.
Handheld Systems
Handheld systems include Personal Digital Assistants(PDAs), such as Palm-Pilots or Cellular
Telephones with connectivity to a network such as the Internet. They are usually of limited size due to
which most handheld devices have a small amount of memory, include slow processors, and feature small
display screens.
Many handheld devices have between 512 KB and 8 MB of memory. As a result, the operating
system and applications must manage memory efficiently. This includes returning all allocated
memory back to the memory manager once the memory is no longer being used.
Currently, many handheld devices do not use virtual memory techniques, thus forcing program
developers to work within the confines of limited physical memory.
Processors for most handheld devices often run at a fraction of the speed of a processor in a PC.
Faster processors require more power. To include a faster processor in a handheld device would
require a larger battery that would have to be replaced more frequently.
The last issue confronting program designers for handheld devices is the small display screens
typically available. One approach for displaying the content in web pages is web clipping, where
only a small subset of a web page is delivered and displayed on the handheld device.
Some handheld devices may use wireless technology such as BlueTooth, allowing remote access to e-mail
and web browsing. Cellular telephones with connectivity to the Internet fall into this category. Their use
continues to expand as network connections become more available and other options such
as cameras and MP3 players, expand their utility.
Features of Windows and Linux
Difference between Linux and Windows
Last Updated : 13 May, 2020
Linux:
Linux could be a free and open supply OS supported operating system standards. It provides programming
interface still as programme compatible with operating system primarily based systems and provides giant
selection applications. A UNIX operating system system additionally contains several severally developed
parts, leading to UNIX operating system that is totally compatible and free from proprietary code.
Windows:
Windows may be a commissioned OS within which ASCII text file is inaccessible. it’s designed for the
people with the angle of getting no programming information and for business and alternative industrial
users. it’s terribly straightforward and simple to use.
The distinction between Linux and Windows package is that Linux is completely freed from price whereas
windows is marketable package and is expensive. Associate operating system could be a program meant to
regulate the pc or computer hardware Associate behave as an treater between user and hardware.
Let’s see that the difference between Linux and windows:
There is forward slash is used for While there is back slash is used for
6. Separating the directories. Separating the directories.
Linux is widely used in hacking purpose While windows does not provide much
8. based systems. efficiency in hacking.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE
interviews with the CS Theory Course at a student-friendly price and become industry ready.