mirror of
https://github.com/reactos/reactos.git
synced 2026-07-05 23:44:24 +08:00
115377a581dbda682f8f03c9a22d026f1bfad50f
- The new interface is portable and much faster than before. For example, unmapping a hyperpage is almost a one-line operation.
- The new interface is also thread-safe and uses the EPROCESS hyperspace spinlock.
- However, in order to isolate from React Mm internals, the Hyper IRQL and Process are stored as globals, so this will not work on SMP.
- For now, mapping vs. zero PTEs are not treated differently, but the two interfaces have been separated pending future work.
- Performance tests with _rdtsc resulted in an improvement of over 300% compared to the old interface.
- Hyperspace mappings are frequent, so the improvement is noticeable during startup (3/10ths of a second).
- This also fixes incorrect initializtion of hyperspace -- pages were zeroed out (which requires hyperspace) before hyperspace was created.
svn path=/trunk/; revision=39925
…
Languages
C
86.6%
C++
10.6%
Python
0.7%
Assembly
0.5%
CMake
0.5%
Other
0.8%