Spooling overlaps the input and output of one job with the computation of another job. Buffering on other hand overlaps the input and output of one job with the computation of the same job.