Skip to main content

Spooling in Operating System Nitish Agarwal The Crazy Programmer

In this article, we will take a look at one of the most intriguing concepts which exist in our computer programming world – Spooling.

The word ‘SPOOL’ is derived from the old french word ‘espule’ which means a cylindrical container used to store information or data. Similar is the concept of spooling which is used in our Operating Systems.

To understand this concept thoroughly, we will first take a look at the basic operations that take place in our operating systems and subsequently, derive how the mechanism of spooling gives an edge to these operations.

So, the basic three functions that take place in our operating system are input, process, and output.

The system takes input from the user through the keyboard, mouse, or any other device, sends these instructions to the brain, i.e., CPU, where it is processed, and then returns the output on the screen. Now, if you observe that while taking inputs from the user, the CPU is not playing any role in the process and is in a null state (a state when it has no work to do), and also after the data is processed, it is again in a null state, until the result is displayed on the screen.

We observe that with such a scenario, it takes a lot of time to execute a single operation as the CPU is in a null state most of the time, and only performs its operations for a specific period. Why is the CPU even called the brain of the computer if we can’t use it to its fullest extent? To resolve this issue, the concept of Spooling comes into play.

Spooling in Operating System

The word ‘SPOOL’ stands for Simultaneous Peripheral Operations On-Line. It is a temporary storage space where the instructions are stored in the computer memory until the main memory takes up these instructions for processing. Through the process of spooling, we can get rid of the null state of the CPU. Spooling is the mechanism in which the system can take a number of instructions simultaneously using peripheral devices and store them in a secondary storage space or disk for further processing of data.

Let us understand this through a graphical representation:

Spooling in Operating System

 

From the above representation, we can conclude that the data from the input device goes to a type of secondary storage space where it gets stored and then the main memory fetches this data one by one and executes the instructions without any delay. In this way, the CPU will be put to work most of the time and it will save time too. Most of the devices use this space while sending instructions in bulk, which reduces execution time and makes our interaction with the operating system smooth.

The post Spooling in Operating System appeared first on The Crazy Programmer.



from The Crazy Programmer https://ift.tt/3op1gxj

Comments

Popular posts from this blog

Difference between Web Designer and Web Developer Neeraj Mishra The Crazy Programmer

Have you ever wondered about the distinctions between web developers’ and web designers’ duties and obligations? You’re not alone! Many people have trouble distinguishing between these two. Although they collaborate to publish new websites on the internet, web developers and web designers play very different roles. To put these job possibilities into perspective, consider the construction of a house. To create a vision for the house, including the visual components, the space planning and layout, the materials, and the overall appearance and sense of the space, you need an architect. That said, to translate an idea into a building, you need construction professionals to take those architectural drawings and put them into practice. Image Source In a similar vein, web development and design work together to create websites. Let’s examine the major responsibilities and distinctions between web developers and web designers. Let’s get going, shall we? What Does a Web Designer Do?...

A guide to data integration tools

CData Software is a leader in data access and connectivity solutions. It specializes in the development of data drivers and data access technologies for real-time access to online or on-premise applications, databases and web APIs. The company is focused on bringing data connectivity capabilities natively into tools organizations already use. It also features ETL/ELT solutions, enterprise connectors, and data visualization. Matillion ’s data transformation software empowers customers to extract data from a wide number of sources, load it into their chosen cloud data warehouse (CDW) and transform that data from its siloed source state, into analytics-ready insights – prepared for advanced analytics, machine learning, and artificial intelligence use cases. Only Matillion is purpose-built for Snowflake, Amazon Redshift, Google BigQuery, and Microsoft Azure, enabling businesses to achieve new levels of simplicity, speed, scale, and savings. Trusted by companies of all sizes to meet...

Olive and NTT DATA Join Forces to Accelerate the Global Development and Deployment of AI Solutions

U.S.A., March 14, 2021 — Olive , the automation company creating the Internet of Healthcare, today announced an alliance with NTT DATA , a global digital business and IT services leader. The collaboration will fast track the creation of new healthcare solutions to transform the health experience for humans — both in the traditional healthcare setting and at home. As a member of Olive’s Deploy, Develop and Distribute Partnership Programs , NTT DATA is leveraging Olive’s open platform to innovate, build and distribute solutions to Olive’s customers, which include some of the country’s largest health providers. Olive and NTT DATA will co-develop new Loops — applications that work on Olive’s platform to provide humans real-time intelligence — and new machine learning and robotic process automation (RPA) models. NTT DATA and Olive will devote an early focus to enabling efficiencies in supply chain and IT, with other disciplines to follow. “This is an exciting period of growth at Olive, so...