views:

297

answers:

4

Is there utility program for Page replacement algorithm simulation in Java?

+2  A: 

No.

Java abstracts away the concrete memory management, so there should seldom be a need for this.

Edit:

Think some more seconds. No, there is no such algorithm in the standart libraries.

Arne
+1  A: 

If you mean 'Page replacement' as in virtual memory management, I cannot see there would be something like that. I mean the JVM does a lot of work to hide that from developers and provide a consistent memory model (with varying degrees of success).

Peter Tillemans
A: 

Finally I developed-

https://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=5924&lngWId=2

Check out it

SamSol
That is a simulation.
Bakkal
A: 

If you just want to experiment with different algorithms and learn how they work, then you may want to have a look at custard-cache -- this is an embryonic open-source implementation of some of the most common page replacement algorithms, along with an adapter for those algorithms to be used in JBoss Cache and a very small test suite to let you run different cache algorithms over our own sample data to judge hit ratio + effectiveness.

Now, a disclaimer: I wrote it this code. It was developed as an experimental exercise at my employer, where we were trying to maximise the efficacy of a cache and wanted to know if a different algorithm would help us. We didn't end up changing algorithms, but we figured someone else might have a use for it so open-sourced it. Nothing much has been done with it since but please take a look and see if it's useful.

Paging algorithms implemented are:

There are others I'd like to implement (the Clock family, LRU-K, CAR) but haven't got around to it.

Hope it's helpful!

Cowan