What would happen if spooling wasn't present??? (all I can find on google is spooling to do with a printer, but Im looking for it to do with applications)
Operating systems provide a standardised look and feel to application program elements such as File Open or File Save dialogs. What are the benefits to the computer user and application developer???
Any help would be great!!
If we didn't have spooling, a CPU would be sat there doing nothing whilst the memory is still processing the data it gets, and whilst retrieving files, without spooling memory would be working at only a fraction of the performance whilst it waits for the hard drive, and the CPU would be whilst it waits for the memory. Spooling into a buffer lets data sit there whilst it waits for the slower parts of the system, so take the CPU, the fastest part as an example. If it can keep unloading data it has processed into a buffer, it can keep processing the data, rather than stopping and starting, and get it done faster, so time is saved and performance is increased drastically.
What you found with computers is the same as with applications, just change the printer for a hard drive, or for memory. Think of that example as having just 2 parts, the computer, and the printer. The computer is much faster than the printer, and processes what has to be printed, almost instantly, it isn't constantly processing and feeding the data to the printer line by line, it does it in 1 big lump, and stores the "printer language" to be fed to the computer as it slowly prints out
For the reasons for having an OS like we do, look at other operating systems that we have or had.
To give 2 examples, look at computers from 25 years ago when everything was CLI, rather than GUI. It took a long time to do anything because you had to type in the code yourself, rather than just get up and go, and you had to have a fair bit of knowledge to know all the different commands. GUI's cover up the code, so the user doesn't have to worry about the code, and all of it is already coded for you.
Then, there is flexibility, which can be highlighted further with mobile phones or help desks in a city centre, both of which use menu driven interfaces. Apart from what is already on them, you can't do anything, you can't get to the code to edit or improve anything, you are very limited by what you do.
That is all gone with a GUI though, there is much greater flexibility, they are much much easier for an inexperienced user to use, because everything is self explanitory because of pictures and being able to see what is going on, and because of WIMPs (Window's, Icon's, Menu's and Pointer's), which provide a much more efficient, easy to use and flexible system