[ros-dev] [ros-diffs] [ros-arm-bringup] 39925: - Implement a new Hyperspace Mapping Interface: - 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.
Aleksey Bragin
aleksey at reactos.org
Tue Mar 10 10:53:56 CET 2009
Boot is broken for me in VMWare, with an assert being hit in
hypermap.c:178.
WBR,
Aleksey Bragin.
On Mar 10, 2009, at 3:31 AM, ros-arm-bringup at svn.reactos.org wrote:
> Author: ros-arm-bringup
> Date: Tue Mar 10 03:31:14 2009
> New Revision: 39925
>
> URL: http://svn.reactos.org/svn/reactos?rev=39925&view=rev
> Log:
> - Implement a new Hyperspace Mapping Interface:
> - 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.
More information about the Ros-dev
mailing list