You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thread.get_linear_address is currently (almost) guaranteed to cause an exception due to an address too large. The reason is that the limit calculation must take into account the granularity of the segment. As state here & here the granularity is either in bytes or pages. Now, the Microsoft docs are not explicit on that, but the granularity affects the calculation of the segment's limit, see for instance the ReactOS source (Line 164).
As a side note, my fix for #55 forgot to address the formatting of the error's text for the case where no segment is given. Might be a good idea to do it here...
The text was updated successfully, but these errors were encountered:
I'm guessing older versions of Windows always had the same granularity, and that changed later?
I actually have no idea about this one. I noticed it yesterday while doing some segmentation experiments. I always got "Address too large" even for the default segment base of 0. It was then that I found out about it. Protected mode segmentation seems to be surrounded by a great deal of obscurity...
Thread.get_linear_address is currently (almost) guaranteed to cause an exception due to an address too large. The reason is that the limit calculation must take into account the granularity of the segment. As state here & here the granularity is either in bytes or pages. Now, the Microsoft docs are not explicit on that, but the granularity affects the calculation of the segment's limit, see for instance the ReactOS source (Line 164).
As a side note, my fix for #55 forgot to address the formatting of the error's text for the case where no segment is given. Might be a good idea to do it here...
The text was updated successfully, but these errors were encountered: