Skip to main content

Different between Buffer and Cache

Buffer
 It is an area of computer’s memory or devices memory for holding data during data transfer. Normally I/O devices have low speed than processor. This speed adjusted by having temporary data storage in a memory typically called buffer. While the device is in operation data transfer can take place in buffer. The process of holding data temporarily during I/O operation is called buffering. Because of buffering , I/O channels place data in buffer and the processor or I/O devices can access data from the buffer.

       Cache Memory
The cache memory is placed in between CPU and main memory. It is a semiconductor memory. It consists of static RAMs. It is a special and very high speed memory that is used to increase the speed of processing by making current program and the data available to the CPU at a rapid rate. Cash memory holds the frequently used instruction and data so that it can provide CPU at a faster rate. It is fabricated along with the CPU so works same as the speed of the CPU.CPU speed is usually faster than main memory speed, with the result that the processing speed is limited primarily by the speed of the main memory. So, the use of cache memory let the processor work in its actual speed.
To access main memory the CPU sends an address to it. In response of this the main memory sends data contained at the specified memory address. On the other hand cache memory uses parallel searching of the required data. It first compares the incoming address to the addresses present in the cache. If the address matches , it is called cache “hit”. If the data does not match, is called cache “miss”. When miss occurs, the data is read from the main memory. The data read from the main memory also written to the cache memory, so that when this specific address is accessed next time hit occurs. The hit ratio is defined as the ratio of the number of hits to the total number of read requests sents to the cache memory by the CPU.


Difference between Buffer and Cache:

                  Buffer
                 Cache
1.processing speed in slower than cache.
1.processing speed is high.

2.area of RAM or devices memory.
2.placed between processor and main memory.
3.currently in operation data holds.
3.frequently used instruction loaded.
4.adjust speed difference between processor and Devices.
4.let the processor work in its actual speed.
5.make temporary data storage in a memory.
5.eg.L1,L2,L3 caches,

Comments

Popular posts from this blog

Recursive Function in C programming

             If a statement within the body of a function calls the same function, the function is called recursive function. Actually, recursion is a process by which a function calls itself repeatedly until some specified condition has been satisfied. This process is used for repetitive computations in which each action is stated in term of previous result. Many iterative or repetitive problems can be written in this form.                To solve a problem using recursive method, two conditions must be satisfied. They are: 1)       Problem could be written or defined in term of its previous result. 2)       Problem statement must include a stopping condition. /*   An example of recursive function to calculate factorial of a number.*/    #include<stdio.h>    #include<conio.h...

Passing arrays to functions in C programming

Like any other variables, we can also pass entire array to a function. An array name can be named as an argument for the prototype declaration and in function header. When we call the function no need to subscript or square brackets. When we pass array that pass as a call by reference because the array name is address for that array. /* Program to illustrate passing array to function */ #include<stdio.h> void display(int) ; /* function prototype */ main( ) { int num[5] = {100, 20, 40, 15, 33, i ; clrscr( ) ; printf (“\n The content of array is \n”) ; for (i=0; i<5; i++) display (num[i]) ; /*Pass array element fo fun */ getch{ } ; } void display(int n) { printf (“\t%d”, n ) ; } Output:     The content of array is 100      20       40       15 3 /* Program to read 10 numbers from keyboard to store these num into array and then c...

Difference between Binary mode and Text Mode in C programming

There are mainly three difference between binary and text mode. They are as follow.               i.       In text mode, a special character EOF whose ASCII value is 26 is inserted after the last character in the file to mark the end of file. But, there is no such special character present in the binary mode. The binary mode files keep track of the end of file from the number of characters present in the directory entry of the file.             ii.       In text mode of file, text and numbers are stored as one character per byte. For example, the number 1234 occupies two bytes in memory but it occupies 4 bytes (one byte per character) in the file. But, in binary mode, the number occupies the number of bytes as it occupies in the memory. Thus,  the above number occupies two bytes in file also in the case o...