Microsoft KB Archive/822606

= FIX: You Cannot Change the First-Level Page Table Descriptor Bits =

Article ID: 822606

Article Last Modified on 5/27/2005

-

APPLIES TO


 * Microsoft Windows CE .NET 4.2

-



SYMPTOMS
You cannot change the first-level page table descriptor bits for ARM processor kernels. Some processors require that the first-level page table descriptor bits be changed to enable special memory management features.



Hotfix Information
A supported software update is now available from Microsoft as Windows CE 4.2 Core OS QFE 822606. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

Restart Requirement
You do not have to restart your computer after you apply this hotfix.

Hotfix Replacement Information
This hotfix does not replace any other hotfixes.

File Information
The English version of this update has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.   Date         Time   Version            Size    File name --

17-Jun-2003 17:46  4.2.3.617       2,689,640  Wincepb42-030617-kb822606-armv4.exe 17-Jun-2003 17:46  4.2.3.617       2,693,736  Wincepb42-030617-kb822606-armv4i.exe The English version of this package has the file attributes (or later) that are listed in the following table.   Date         Time                      Size    File name --

Path: Public\Common\Oak\Lib\Armv4\Debug 06-Jun-2003 23:44                  1,898,396  Nkmain.lib 06-Jun-2003 23:44                    110,592  Nkmain.pdb 06-Jun-2003 23:44                  2,024,146  Nkprmain.lib 06-Jun-2003 23:44                    110,592  Nkprmain.pdb

Path: Public\Common\Oak\Lib\Armv4\Retail 06-Jun-2003 23:44                  1,198,674  Nkmain.lib 06-Jun-2003 23:44                    110,592  Nkmain.pdb 06-Jun-2003 23:44                  1,301,412  Nkprmain.lib 06-Jun-2003 23:44                    110,592  Nkprmain.pdb

Path: Public\Common\Oak\Lib\Armv4i\Debug 06-Jun-2003 23:44                  1,902,616  Nkmain.lib 06-Jun-2003 23:44                    110,592  Nkmain.pdb 06-Jun-2003 23:45                  2,028,624  Nkprmain.lib 06-Jun-2003 23:45                    110,592  Nkprmain.pdb

Path: Public\Common\Oak\Lib\Armv4i\Retail 06-Jun-2003 23:44                  1,201,300  Nkmain.lib 06-Jun-2003 23:44                    110,592  Nkmain.pdb 06-Jun-2003 23:44                  1,304,556  Nkprmain.lib 06-Jun-2003 23:44                    110,592  Nkprmain.pdb



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.



MORE INFORMATION
This fix enables a new global variable that is combined with the first-level page table descriptors by using a logical OR operation. extern DWORD dwNKARMFirstLevelSetBits; This value must be initialized in the OEMInit function. The following example sets bit 9 in the descriptor: void OEMInit {...

dwNKARMFirstLevelSetBits = 0x200;

...}

if no bits should be set, then dwNKARMFirstLevelSetBits should be set to 0.

Keywords: kbbug kbfix kbqfe KB822606

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.