Paging is a memory management scheme that is used by your computer to store and retrieve data from secondary storage devices. The main function of paging is helping the Operating system in memory management.
Data is written and read from the secondary storage for it to be used by the primary storage. The operating system reads data in form of blocks referred to as pages. Paging helps in dealing with fragmentation problem by creating non-contiguous address space.
Another basic function of paging is the transfer of applications from the Program to the Operating System. This happens when a program tries to reference to a non-present location (page) in the RAM. The CPU will then move the program controls to the operating system which will do the following:
- Map data on the disk
- Acquire a free page frame
- Use the new page frame to update the page table.
- Take control of the program
Here are other functions of paging.
When an executing program needs referencing, the Operating System will scan through for available memory and create pages the moment paging is needed. When a program executes the operating system will copy the pages that are needed into RAM. This means that files that are not executed when a program runs will not be loaded into memory.
Most multi-tasking environments enable your computer to execute the same program simultaneously. Paging will minimize the use of available RAM as all users will share a copy of the running program. Each of the requests is set up by the processor to point the shared copy instead of creating individual page requests.
When the time spent in executing a program overwhelms time allocated as is the case of handling huge data structures will cause the system to be slow. More pages need to be freed up. This will lead to a continual page fault that is referred to as thrashing. Paging will enable the operating system to allocate enough pages to the program. To avoid the excessive thrashing problems, RAM upgrade is necessary.
When there are no pages available for allocation, paging will force an operating system to allocate more pages by swapping the pages that need to be replaced by balancing processor time and the available RAM.
If a page file is exploited beyond its allocation limit, fragmentation will occur. This occurrence reduces performance of your computer. The operating system will create locked page file sizes and restrict its expansion when resources become scarce. The only downside is that operating systems may request more memory than the total available physical memory. The result of this is program failing to execute. With paging in place, a program or even program developers do not to recall memory address when executing or designing software because paging controls and allocates memory address before program execution.
Note that your computer’s paging function can fail. Paging problems can be caused by a failing memory. One way of dealing with such a problem is by installing DriverAssist that will scan your system at boot and correct any problems that may be present.
Wrong or inappropriate drivers may hinder the performance of your computer because a lot of resources will be needed to ensure that the system works at an optimum. When such resources are shared between device drivers and available memory, your system needs scan software like DriverAssist to review and get the best up-to –drivers.