Drawbacks of least-recently used algorithm, Operating System

Assignment Help:

The question of fairness, regarding page eviction, is a hard one. How do we decide what is fair? Many operating systems use global LRU, where pages from all processes are managed together using the approximate LRU algorithms described above. This is easy to implement, but has a number of problems.

For instance, with global LRU, there's no isolation between processes, and greedy or badly-written programs will push other programs out of physical memory. In addition, the priority which one gives a program is generally priority for the scheduler, not priority for physical memory (though there are approaches to try to deal with this).

There's also the "sleepyhead" problem, which is where an important but rarely-used programwill get paged out, and then start up slowly. For instance, the ntpd (network time protocol) program doesn't run often, but when it does run, it needs to make precise timing measurements, which would be impacted by pagefaults. ntpd and similar programs can get around this problem by "pinning" their pages, meaning that their physical pages are not allowed to be paged out to disk.

In general, the problem of fairness is that processes that are greedy (or wasteful) are rewarded; processes with poor locality end up squeezing out those with good locality, because they "steal" memory. There is no simple solution to this problem.


Related Discussions:- Drawbacks of least-recently used algorithm

Deadlock-avoidance algorithm, Regard as a computer system that runs 5000 jo...

Regard as a computer system that runs 5000 jobs per month with no deadlock-prevention or deadlock-avoidance scheme. Deadlocks take place about twice per month and the operator must

What are the typical elements of a process image, What are the typical elem...

What are the typical elements of a process image? User data: Modifiable part of user space. May have program data, user stack area, and programs that might be modified. User

What do you mean by semaphore?, What do you mean by semaphore?  Semap...

What do you mean by semaphore?  Semaphore : A synchronization variable that acquires on positive integer values. Invented by the Dijkstra P (semaphore): an atomic proce

Define the os/2 threads code, Define the OS/2 threads code The sample p...

Define the OS/2 threads code The sample program in Listing is very similar to the NetWare example. OS/2 commands are substituted for the pseudocode commands controlling thread

Explain important fuction of virtual file system, Virtual File System serve...

Virtual File System serves two important functions. 1. It divides file-system-generic operations from their execution by defining a clean VFS interface. 2. The VFS is based

Memory management unit, When a program issues a memory load or store operat...

When a program issues a memory load or store operation, the virtual addresses (VAs) used in those operations have to be translated into "real" physical memory addresses (PAs). This

Elimination of common sub expression - code optimizatin, Elimination of com...

Elimination of common sub expression during code optimization An optimizing transformation is a rule for rewriting a section of a program to enhance its execution efficiency wi

Explain process scheduling in time sharing, Explain process scheduling in t...

Explain process scheduling in time sharing The relevant features of time sharing are: 1.      Process priorities do not depend on the nature of the processes 2.      Proc

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd