There are two ways by which Input/output subsystems can improve the performance and efficiency of the computer by using a memory space in main memory or on the disk and these two are spooling and buffering.
Spooling stands for Simultaneous peripheral operation online. A spool is a similar to buffer as it holds the jobs for a device till the device is ready to accept the job. It considers disk as a huge buffer which can store as many jobs for the device till the output devices are ready to accept them.
he main memory has an area called buffer that is used to store or hold the data temporarily that is being transmitted either between two devices or between a device or an application. Buffering is an act of storing data temporarily in the buffer. It helps in matching the speed of the data stream between the sender and receiver. If speed of the sender’s transmission is slower than receiver, then a buffer is created in main memory of the receiver, and it accumulates the bytes received from the sender and vice versa.
The basic difference between Spooling and Buffering is that Spooling overlaps the input/output of one job with the execution of another job while the buffering overlaps input/output of one job with the execution of the same job.
Differences between Spooling and Buffering –
- The key difference between spooling and buffering is that Spooling can handle the input/output of one job along with the computation of an another job at the same time while buffering handles input/output of one job along with its computation.
- Spooling is an stands for Simultaneous Peripheral Operation online. Whereas buffering is not an acronym.
- Spooling is more efficient than buffering, as spooling can overlap processing two jobs at a time.
- Buffering use limited area in main memory while Spooling uses the disk as a huge buffer.
Comparison chart –
|Basic Difference||It overlap the input/output of one job with the execution of another job.||It overlaps the input/output of one job with the execution of the same job.|
|Full form (stands for)||Simultaneous peripheral operation online||No full form|
|Efficiency||Spooling is more efficient than buffering.||Buffering is less efficient than spooling.|
|Consider Size||It considers disk as a huge spool or buffer.||Buffer is a limited area in main memory.|
- What exactly Spooling is all about?
- What's difference between MMU and MPU?
- Difference between ++*p, *p++ and *++p
- Web 1.0, Web 2.0 and Web 3.0 with their difference
- What is the difference between GUI and CUI?
- Difference between C and C++
- What’s difference between The Internet and The Web ?
- Difference between AES and DES ciphers
- Difference between C and Python
- Difference between SSH and Telnet
- Difference Between HTML and ASP
- Difference between x++ and x=x+1 in Java
- Difference between JSON and XML
- Difference between while(1) and while(0) in C language
- Difference between scanf() and gets() in C
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.