技術文章

2018-12-10FreeBSD VM系统的設計元素

Design elements of the FreeBSD VM

system

Matthew Dillon

Last modified on 2013-11-13 07:52:45 by hrs.

Abstract

The title is really just a fancy way of saying that I am going to attempt to describe the whole VM enchilada, hopefully in a way that everyone can follow. For the last year I have concentrated on a number of major kernel subsystems within FreeBSD, with the VM and Swap subsystems being the most interesting and NFS being “a necessary chore”. I rewrote only small portions of the code. In the VM arena the only major rewrite I have done is to the swap subsystem. Most of my work was cleanup and maintenance, with only moderate code rewriting and no major algorithmic adjustments within the VM subsystem. The bulk of the VM subsystem's theoretical base remains unchanged and a lot of the credit for the modernization effort in the last few years belongs to John Dyson and David Greenman. Not being a historian like Kirk I will not attempt to tag all the various features with peoples names, since I will invariably get it wrong.

[ Split HTML / Single HTML ]

Table of Contents

1. Introduction
2. VM Objects
3. SWAP Layers
4. When to free a page
5. Pre-Faulting and Zeroing Optimizations
6. Page Table Optimizations
7. Page Coloring
8. Conclusion
9. Bonus QA session by Allen Briggs

原文網址: Last modified on 2013-11-13 07:52:45 by hrs

Top