mirror of
https://github.com/reactos/reactos.git
synced 2024-10-03 16:05:37 +00:00
2c293c30c4
- First, switch to using system PTEs as it should've been from the beginning. Our original implementation was broken and prone to race conditions, which Dmitry graciously fixed. - We can now remove the MiZeroPageInternal hack that was used as a way to avoid deadlock/contention in the zero paths. - Zeroing PTEs is done at DPC level in ReactOS, to avoid ReactOS-specific race issues. In Windows NT, this operation is always done at passive. - Zeroing PTEs are similar to hyperspace PTEs, but they can be mapped in chunks for optimization. - ReactOS does not currently make use of this functionality, so zeroing is pretty slow, especially on bootup if you have lots of memory (all RAM is zeroed). - The existing ReactOS "compatibility layer" for hyperspace was augmented to seamlessly use the new zeroing PTE API. - You must now unmap zeroing PTEs -- MiZeroPage was modified to do this. - System PTE binning, NBQUEUES and SLISTS would optimize this further. TBD. - Once again, tested on the trinity of supported emulators. svn path=/trunk/; revision=41578 |
||
---|---|---|
irc | ||
reactos | ||
rosapps | ||
rostests | ||
wallpaper |