Open In App

Difference between Virtual Memory and Job Pool

Last Updated : 12 Aug, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Virtual Memory :
Virtual memory is a memory management technique in the operating system that gives users the illusion that they are working with memory that is equal to the memory of secondary storage medium ( that is very large memory). Thus, this allows a programmer to write a program that requires more memory than the actual memory.

Job Pool :
A job pool is a type of data structure in a batch processing system where various jobs are queued to get implemented when all the resources are made available to the system. It decides which job will be executing next.
 

The main idea here is that whenever a new job is created, it is stored in the job pool and when it becomes ready to be executed, it is required to be stored in the physical memory. But when there is a very large memory required then only a part of the main memory gets executed while the remaining part of the memory gets stored in the virtual memory.

Both the virtual memory and the job pool are used to store processes in hard disk for some time and then later loading them into the main memory.

Differences between Virtual Memory and Job Pool are as follows :

S. No.

Virtual Memory

Job Pool

1. Virtual memory is a memory management technique that gives the users an illusion of infinite memory. Job pool is a program of the operating system that is located in operating system and stores newly created processes while they are waiting for their respective resources.
2. The concept behind virtual memory is that it creates an illusion that we are working with a very large memory when actually we are using only a part of the memory. The concept of the job pool states that a newly created process is stored in a pool called a job pool, where these processes wait for the resources to get allocated in order to get executed.
3. Virtual Memory represents the address generated by the CPU virtually. Job pool represents the pool from which the long-term scheduler chooses which job will be executed first.  
4. While loading processes from the hard disk to the main memory, virtual memory is not required if there is no need of infinite memory. While loading processes from the hard disk to the main memory, a job pool is always required to store a newly created process. 
5. A part of the process needs to be in memory for execution. A newly created process is stored here, waiting for the required resources.
6.

Advantages-

  • Memory allocation is comparatively cheap.
  • Efficiency in managing logical partition workloads using the CPU.
  • Possibility of simultaneous running of larger applications.
  • No requirement of external fragmentation
  • Memory isolation leads to increased security.
  • Automatic data movement is possible.
  • Eliminates the need to manage shared memory by the applications and when RAM space is full users are spared from installing memory modules.
  • It has greater capacity for addresses as does the main memory.
  • Greater speed for executing a portion of a programme whenever required.

Advantages-

  • When a process is over, the next job runs from the job spool and it does not require any user input.
  • Memory gets free by the operating system when a job has been completed successfully.
  • Processing of the processes is carried out on the basis of First come, first serve, or by the priority, after receiving.

 


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads