Check out the new USENIX Web site. next up previous
Next: Address Translation Up: Address Translation Strategies in Previous: General Classification for Persistence

   
Granularity Choices for Persistence

We have identified a set of five design issues (including address translation) that are relevant to the implementation of a persistence mechanism. Each of these issues can be resolved by making a specific granularity choice that is independent of the choice for any other issue. The combination of granularity choices for the different issues can then be used to characterize persistent systems. The specific design issues that we describe in this section are the granularities of address translation, address mapping, data fetching, data caching and checkpointing. In the remainder of this section, we define and discuss each issue in detail6 and also present the rationale behind the granularity choices for these issues in our implementation of orthogonal persistence in Texas.

To a first approximation, the basic unit for all granularity choices in Texas is a virtual memory page, because pointer swizzling at page fault time relies heavily on virtual memory facilities, especially to trigger data transfer and address translation. The choice of a virtual memory page as the basic granularity unit allows us to exploit conventional virtual memories, and avoid expensive run-time software checks in compiled code, taking advantage of user-level memory protection facilities of most modern operating systems. Sometimes, however, it is necessary to change the granularity choice for a particular issue to accommodate the special needs of unusual situations. It is possible to address these issues at a different granularity in a way that integrates gracefully into the general framework of Texas.



Footnotes

... detail6
Note that while we describe each issue individually, these granularity choices are strongly related. It is possible (and quite likely) that a system may make the same granularity choice on multiple issues for various reasons.


 
next up previous
Next: Address Translation Up: Address Translation Strategies in Previous: General Classification for Persistence

Sheetal V. Kakkad