Cache Memory

What is Cache Memory ?


cache memory, also called Cache,  a supplementary memory system that temporarily stores frequently used instructions and data for quicker processing by the central processor of acomputer. The cache augments, and is an extension of, a computer’s main memory. Both main memory and cache are internal, random-access memories (RAMs) that use semiconductor-based transistor circuits. Cache holds a copy of only the most frequently used information or program codes stored in the main memory; the smaller capacity of the cache reduces the time required to locate data within it and provide it to the computer for processing.
When a computer’s central processor accesses its internal memory, it first checks to see if the information it needs is stored in the cache. If it is, the cache returns the data to the processor. If the information is not in the cache, the processor retrieves it from the main memory. Disk cache memory operates similarly, but the cache is used to hold data that has been recently written on, or retrieved from, a magnetic disk or other external storage device.

Computer Main Memory And Its Types


Computer Memory

MEMORY IS THE INTERNAL STORAGE AREA OF THE COMPUTER. MEMORY IDENTIFIES THE DATA STORAGE.THE PHYSICAL MEMORY USUALLY REFERRED TO US MAIN MEMORY OR RAM.


TYPES OF MEMORY

  • RAM

  • ROM

RAM

RAM STANDS FOR RANDOM ACCESS MEMORY.IT WRITE DATA INTO RAM AND ASLO READ DATA FROM RAM. RAM IS A VOLATILE MEMORY.IT HOLDS DATA AS LONG AS THE COMPUTER IS SWITCHED ON.THERE ARE TWO TYPES OF RAM

  • DRAM

  • SRAM

  • DRDRAM

DRAM

DRAM STANDS FOR DYNAMIC RANDOM ACCESS MEMORY. MOSTLY USED IN PERSONAL COMPUTERS.DRAM MUST HAVE ELECTRIC CURRENT TO MAINTAIN ELECTRICAL STATE(REFRESH).ITS ACCESS TIME IS 60 - 70 NAN0SEC0NDS.


SRAM

SRAM STANDS FOR STATIC RANDOM ACCESS MEMORY.ITS ACCESS TIME LESS THAN 60 NAN0SECONDS.


DRDRAM

DRDRAM STANDS FOR DIRECT RAMBUS DYNAMIC RANDOM ACCESS MEMORY.IT IS THE NEW TYPE OF RAM. IT ACCESS TIME 20 TIMES FASTER THAN DRAM.


ROM

ROM STANDS FOR READ ONLY MEMORY.IT IS A NON-VOLATILE MEMORY.IT READ DATA FROM MEMORY.

TYPES OF ROM

  • PROM

  • EPROM

PROM

PROM STANDS FOR PROGRAMMABLE READ ONLY MEMORY. IT ACTS LIKE A ROM. THERE ARE TWO TYPES OF PROMS.

  • EPROM

  • EEPROM

EPROM(ERASABLE)

EPROM STANDS FOR ERASABLE PROGRAMMABLE READ ONLY MEMORY. IT CAN BE ERASED AND REPROGRAMMED BY THE USER.


EEPROM(NON ERASABLE):

EEPROM STANDS FOR ELECTRICALLY ERASABLE PROGRAMMABLE READ ONLY MEMORY.NONERASABLE PROMS CANNOT BE CHANGED ONCE THEY ARE PROGRAMMED.

Operating system architecture




The computer architecture of a computing system defines its attributes as seen by the programs that are executed in that system, that is, the conceptual structure and functional behavior of the machine hardware. Then, the computer architect defines the functions to be executed in the hardware and the protocol to be used by the software in order to exploit such functions. Note that the architecture has nothing to do with the organization of the data flow, the logical design, the physical design, and the performance of any particular implementation in the hardware.
      Hence By Architecture we mean the order in which certain hardware Processes are carried out by the OS and has nothing to do with the logical software flow of the Computer.

Simple view

An Operating System is the layer between the hardware and software, as in
 
 

An Operating System is responsible for the following functions
  • Device management using device drivers
  • Process management using processes and threads
  • Inter-process communication
  • Memory management
  • File systems
In addition, all operating systems come with a set of standard utilities. The utilities allow common tasks to be performed such as
  • being able to start and stop processes
  • being able to organise the set of available applications
  • organise files into sets such as directories
  • view files and sets of files
  • edit files
  • rename, copy, delete files
  • communicate between processes

Kernel

The kernel of an operating system is the part responsible for all other operations. When a computer boots up, it goes through some initialisation functions, such as checking memory. It then loads the kernel and switches control to it. The kernel then starts up all the processes needed to communiate with the user and the rest of the environment (e.g. the LAN)
The kernel is always loaded into memory, and kernel functions always run, handling processes, memory, files and devices.
The traditional structure of a kernel is a layered system, such as Unix. In this, all layers are part of the kernel, and each layer can talk to only a few other layers. Application programs and utilities live above the kernel.
The Unix kernel looks like Unix kernel
Most of the Operating Systems being built now use instead a micro kernel, which minimises the size of the kernel. Many traditional services are made into user level services. Communication being services is often by an explicit message passingmechanism.
The major micro-kernel Operating System is Mach. Many others use the concepts of Mach.Mach kernel
Some systems, such as Windows NT use a mixed approach NT kernel

Operating Systems


Operating system ABCs
Operating system boxAn operating system or OS is a software program that enables the computer hardware to communicate and operate with the computersoftware. Without a computer operating system, a computer and software programs would be useless. In the picture to the right, is an example of Microsoft Windows XP, a popular operating system and what the box may look like if you were to visit a local retail store to purchase it.
Operating system types
As computers have progressed and developed so have the operating systems. Below is a basic list of the different operating systems and a few examples of operating systems that fall into each of the categories. Many computer operating systems will fall into more than one of the below categories.
GUI - Short for Graphical User Interface, a GUI Operating System contains graphics and icons and is commonly navigated by using a computer mouse. See the GUI definition for a complete definition. Below are some examples of GUI Operating Systems.
Multi-user - A multi-user operating system allows for multiple users to use the same computer at the same time and different times. See themulti-user definition for a complete definition for a complete definition. Below are some examples of multi-user operating systems.
Multiprocessing - An operating system capable of supporting and utilizing more than one computer processor. Below are some examples of multiprocessing operating systems.
Multitasking - An operating system that is capable of allowing multiple software processes to run at the same time. Below are some examples of multitasking operating systems.
Multithreading - Operating systems that allow different parts of a software program to run concurrently. Operating systems that would fall into this category are:

Operating system listing
Below is a listing of many of the different operating systems available today, the dates they were released, the platforms they have been developed for and who developed them.
Operating systemDate first releasedPlatformDeveloper
AIX and AIXLUnix and Linux history.VariousIBM
AmigaOSCurrently no AmigaOS history.AmigaCommodore
AndroidNovember 5, 2007MobileGoogle
BSDUnix and Linux history.VariousBSD
Caldera LinuxUnix and Linux history.VariousSCO
Corel LinuxUnix and Linux history.VariousCorel
Debian LinuxUnix and Linux history.VariousGNU
DUnixUnix and Linux history.VariousDigital
DYNIX/ptxUnix and Linux history.VariousIBM
HP-UXUnix and Linux history.VariousHewlett Packard
iOS2010MobileApple
IRIXUnix and Linux history.VariousSGI
Kondara LinuxUnix and Linux history.VariousKondara
LinuxUnix and Linux history.VariousLinus Torvalds
MAC OS 8Apple operating system history.Apple MacintoshApple
MAC OS 9Apple operating system history.Apple MacintoshApple
MAC OS 10Apple operating system history.Apple MacintoshApple
MAC OS XApple operating system history.Apple MacintoshApple
Mandrake LinuxUnix and Linux history.VariousMandrake
MINIXUnix and Linux history.VariousMINIX
MS-DOS 1.xMS-DOS history.IBMMicrosoft
MS-DOS 2.xMS-DOS history.IBMMicrosoft
MS-DOS 3.xMS-DOS history.IBMMicrosoft
MS-DOS 4.xMS-DOS history.IBMMicrosoft
MS-DOS 5.xMS-DOS history.IBMMicrosoft
MS-DOS 6.xMS-DOS history.IBMMicrosoft
NEXTSTEPApple operating system history.VariousApple
OS/21987IBMIBM
OSF/1Unix and Linux history.VariousOSF
QNXUnix and Linux history.VariousQNX
Red Hat LinuxUnix and Linux history.VariousRed Hat
SCOUnix and Linux history.VariousSCO
Slackware LinuxUnix and Linux history.VariousSlackware
Sun SolarisUnix and Linux history.VariousSun
SuSE LinuxUnix and Linux history.VariousSuSE
System 1Apple operating system history.Apple MacintoshApple
System 2Apple operating system history.Apple MacintoshApple
System 3Apple operating system history.Apple MacintoshApple
System 4Apple operating system history.Apple MacintoshApple
System 6Apple operating system history.Apple MacintoshApple
System 7Apple operating system history.Apple MacintoshApple
System VUnix and Linux history.VariousSystem V
Tru64 UnixUnix and Linux history.VariousDigital
TurbolinuxUnix and Linux history.VariousTurbolinux
UltrixUnix and Linux history.VariousUltrix
UnisysUnix and Linux history.VariousUnisys
UnixUnix and Linux history.VariousBell labs
UnixWareUnix and Linux history.VariousUnixWare
VectorLinuxUnix and Linux history.VariousVectorLinux
Windows 2000Microsoft Windows history.IBMMicrosoft
Windows 2003Microsoft Windows history.IBMMicrosoft
Windows 3.XMicrosoft Windows history.IBMMicrosoft
Windows 8Microsoft Windows history.IBMMicrosoft
Windows 7Microsoft Windows history.IBMMicrosoft
Windows 95Microsoft Windows history.IBMMicrosoft
Windows 98Microsoft Windows history.IBMMicrosoft
Windows CEMicrosoft Windows history.PDAMicrosoft
Windows MEMicrosoft Windows history.IBMMicrosoft
Windows NTMicrosoft Windows history.IBMMicrosoft
Windows VistaMicrosoft Windows history.IBMMicrosoft
Windows XPMicrosoft Windows history.IBMMicrosoft
XenixUnix and Linux history.VariousMicrosoft

Memory Units Bit,Byte,KB,MB,GB,TB

Understanding file sizes (Bytes, KB, MB, GB, TB)

A byte is a sequence of 8 bits (enough to represent one alphanumeric character) processed as a single unit of information. A single letter or character would use one byte of memory (8 bits), two characters would use two bytes (16 bits).

Put another way, a bit is either an 'on' or an 'off' which is processed by a computer processor, we represent 'on' as '1' and 'off' as '0'. 8 bits are known as a byte, and it is bytes which are used to pass our information in it's basic form - characters.

An alphanumeric character (e.g. a letter or number such as 'A', 'B' or '7') is stored as 1 byte. For example, to store the letter 'R' uses 1 byte, which is stored by the computer as 8 bits, '01010010'.

A document containing 100 characters would use 100 bytes (800 bits) - assuming the file didn't have any overhead (additional data about the file which forms part of the file). Note, many non-alphanumeric characters such as symbols and foreign language characters use multiple bytes.

1024 bytes

 = 

1 KB

1024 KB

 = 

1 MB

1024 MB

 = 

1 GB

1024 GB

 = 

1 TB

1024 TB

 = 

1 PB

KB

 = 

Kilobyte

MB

 = 

Megabyte

GB

 = 

Gigabyte

TB

 = 

Terabyte

PB

 = 

Petabyte

A kilobyte (KB) is 1024 bytes, a megabyte (MB) is 1024 kilobytes and so on as these tables demonstrate.

myRepono use bytes to calculate the size of the files we are storing and transferring. We then calculate the costs of the data storage and transfer based on the amount of bytes.

myRepono's charges are based on gigabytes of usage, so for example you might pay $0.20 for 1 GB of data transfer, this means you are paying $0.20 to transfer over 1 billion bytes of data (over 8 billion bits).

The Generations Of Computers


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. The UNIVAC was the first commercial computer delivered to a business client, the U.S. Census Bureau in 1951.
A UNIVAC computer at the Census Bureau.
Image Source: United States Census Bureau

Second Generation (1956-1963) Transistors

Transistors replaced vacuum tubes and ushered in the second generation of computers. The transistor was invented in 1947 but did not see widespread use in computers until the late 1950s. 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. Though the transistor still generated a great deal of heat that subjected the computer to damage, it was a vast improvement over the vacuum tube. 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. These were also the first computers that stored their instructions in their memory, which moved from a magnetic drum to magnetic core technology.
The first computers of this generation were developed for the atomic energy industry.

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 monitorsand 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.

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. What in the first generation filled an entire room could now fit in the palm of the hand. 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.
In 1981 IBM introduced its first computer for the home user, and in 1984 Apple introduced the Macintosh. Microprocessors also moved out of the realm of desktop computers and into many areas of life as more and more everyday products began to use microprocessors.
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 handhelddevices.

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. Quantum computation and molecular and nanotechnology will radically change the face of computers in years to come. The goal of fifth-generation computing is to develop devices that respond to natural language input and are capable of learning and self-organization.

DID YOU KNOW...?

An integrated circuit (IC) is a small electronic device made out of a semiconductor material. The first integrated circuit was developed in the 1950s by Jack Kilby of Texas Instruments and Robert Noyce of Fairchild Semiconductor.
This Article By: - Webopedia Staff