Computer architecture, Internal
structure of a digital computer, encompassing the design and layout of its instruction
set and storage registers. The architecture of a computer is chosen with regard
to the types of programs that will be run on it (business, scientific,
general-purpose, etc.). Its principal components or subsystems, each of which
could be said to have an architecture of its own, are input/output, storage,
communication, control, and processing.
Computer science, the study of
computers, including their design (architecture) and their uses for
computations, data processing, and systems control. The field of computer
science includes engineering activities such as the design of computers and of
the hardware and software that make up computer systems.
Since computer systems are often too
large and complicated to allow a designer to predict failure or success without
testing, experimentation is incorporated into the development cycle. Computer
science is generally considered a discipline separate from computer
engineering, although the two disciplines overlap extensively in the area of
computer architecture, which is the design and study of computer systems.
Mathematics is the source of one of
the key concepts in the development of the computer—the idea that all
information can be represented as sequences of zeros and ones. In the binary
number system, numbers are represented by a sequence of the binary digits 0 and
1 in the same way that numbers in the familiar decimal system are represented
using the digits 0 through 9. The relative ease with which two states (e.g.,
high and low voltage) can be realized in electrical and electronic devices led
naturally to the binary digit, or bit, becoming the basic unit of data storage
and transmission in a computer system.
Computer graphics was introduced in
the early 1950s with the display of data or crude images on paper plots and
cathode-ray tube (CRT) screens. Expensive hardware and the limited availability
of software kept the field from growing until the early 1980s, when the
computer memory required for bit-map graphics became affordable. (A bit map is
a binary representation in main memory of the rectangular array of points
[pixels, or picture elements] on the screen.
Architecture
deals with both the design of computer components (hardware) and the creation
of operating systems (software) to control the computer. Although designing and
building computers is often considered the province of computer engineering, in
practice there exists considerable overlap with computer science.
Basic computer components
A digital computer (see also analog
computer) typically consists of a control unit, an arithmetic-logic unit, a
memory unit, and input/output units. The arithmetic-logic unit (ALU) performs
simple addition, subtraction, multiplication, division, and logic
operations—such as OR and AND. The main computer memory, usually high-speed
random-access memory (RAM), stores instructions and data.
The control unit fetches data and
instructions from memory and effects the operations of the ALU. The control
unit and ALU usually are referred to as a processor, or central processing unit
(CPU). The operational speed of the CPU primarily determines the speed of the
computer as a whole. The basic operation of the CPU is analogous to a
computation carried out by a person using an arithmetic calculator.
I/O units, or devices, are commonly
referred to as computer peripherals and consist of input units (such as
keyboards and optical scanners) for feeding instructions and data into the
computer and output units (such as printers and monitors) for displaying
results.
In addition to RAM, a computer usually
contains some slower, but larger and permanent, secondary memory storage.
Almost all computers contain a magnetic storage device known as a hard disk, as
well as a disk drive to read from or write to removable magnetic media known as
floppy disks. Various optical and magnetic-optical hybrid removable storage
media are also quite common, such as CD-ROMs (compact disc read-only memory)
and DVD-ROMs (digital video [or versatile] disc read-only memory).
Computers also often contain a cache—a
small, extremely fast (compared to RAM) memory unit that can be used to store
information that will be urgently or frequently needed. Current research
includes cache design and algorithms that can predict what data is likely to be
needed next and preload it into the cache for improved performance.
Linking processors
·
Multiprocessor design
Creating a multiprocessor from a
number of uniprocessors (one CPU) requires physical links and a mechanism for
communication among the processors so that they may operate in parallel.
Tightly coupled multiprocessors share memory and hence may communicate by
storing information in memory accessible by all processors. Loosely coupled
multiprocessors, including computer networks , communicate by sending messages
to each other across the physical links.
Computer scientists also investigate
methods for carrying out computations on such multiprocessor machines—e.g.,
algorithms to make optimal use of the architecture, measures to avoid conflicts
as data and instructions are transmitted among processors, and so forth. The
machine-resident software that makes possible the use of a particular machine,
in particular its operating system, is in many ways an integral part of its
architecture.
·
Network protocols
Another important architectural area
is the computer communications network, in which computers are linked together
via computer cables, infrared light signals, or low-power radiowave
transmissions over short distances to form local area networks (LANs) or via
telephone lines, television cables, or satellite links to form wide-area
networks (WANs).
Network protocols also include flow
control, which keeps a data sender from swamping a receiver with messages it
has no time to process or space to store, and error control, which involves
error detection and automatic resending of messages to compensate for errors in
transmission.
·
Middleware
A major disadvantage of a pure
client-server approach to system design is that clients and servers must be
designed together. That is, to work with a particular server application, the
client must be using compatible software. One common solution is the three-tier
client-server architecture, in which a middle tier, known as middleware, is
placed between the server and the clients to handle the translations necessary
for different client platforms. Middleware also works in the other direction,
allowing clients easy access to an assortment of applications on heterogeneous
servers. For example, middleware could allow a company’s sales force to access
data from several different databases and to interact with customers who are
using different types of computers.
·
Web Servers
A web server is a computer system that
processes requests via HTTP, the basic network protocol used to distribute
information on the World Wide Web. The term can refer to the entire system, or
specifically to the software that accepts and supervises the HTTP requests.
Software
·
Software engineering
Software, instructions that tell a
computer what to do. Software comprises the entire set of programs, procedures,
and routines associated with the operation of a computer system. The term was
coined to differentiate these instructions from hardware—i.e., the physical
components of a computer system. A set of instructions that directs a
computer’s hardware to perform a task is called a program, or software program.
The two main types of software are
system software and application software. System software controls a computer’s
internal functioning, chiefly through an operating system (q.v.), and also
controls such peripherals as monitors, printers, and storage devices.
Application software, by contrast, directs the computer to execute commands
given by the user and may be said to include any program that processes data
for a user. Application software thus includes word processors, spreadsheets,
database management, inventory and payroll programs, and many other
“applications.” A third software category is that of network software, which
coordinates communication between the computers linked in a network.
Software is typically stored on an
external long-term memory device, such as a hard drive or magnetic diskette.
When the program is in use, the computer reads it from the storage device and
temporarily places the instructions in random access memory (RAM). The process
of storing and then performing the instructions is called “running,” or
“executing,” a program. By contrast, software programs and procedures that are
permanently stored in a computer’s memory using a read-only (ROM) technology
are called firmware, or “hard software.”
·
Programming languages
Programming languages are the
languages in which a programmer writes the instructions that the computer will
ultimately execute. The earliest programming languages were assembly languages,
not far removed from the binary-encoded instructions directly executed by the
machine hardware.
·
Operating System (OS)
An operating system is a program that
acts as an interface between the user and the computer hardware and controls
the execution of all kinds of programs. Important
functions of an operating System:
- · Memory Management
- · Processor Management
- · Device Management
- · File Management
- · Security
- · Control over system performance
- · Job accounting
- · Error detecting aids
Important activities that an Operating
System performs −
Security − By means of password and similar other
techniques, it prevents unauthorized access to programs and data.
Control
over system performance −
Recording delays between request for a service and response from the system.
Job
accounting − Keeping track
of time and resources used by various jobs and users.
Error
detecting aids − Production of
dumps, traces, error messages, and other debugging and error detecting aids.
Coordination
between other software’s and users − Coordination and assignment of compilers, interpreters,
assemblers and other software to the various users of the computer systems.
Computers are often considered one of
the best invention in history, not just because of all the wonderful things
they can do and the great improvements they have made in our lives but because
of our relationship to them. Nowadays, it is very rare that people go even a
few hours without checking the computer on their phone. Their computer is their
buddy and it is literally attached to a hip.
Comments
Post a Comment