Gateway Best Practices (Windows CE 5.0)
This topic shows best practices for when you create a gateway.
Optimize your gateway device for performance
You can optimize the your gateway's NDIS miniport driver so that it sends and receives network packets efficiently. For more information, see Improving Performance of an NDIS Miniport Driver.
To assess the lower-level send and receive throughput of a network interface on your gateway device, use the Network Driver Interface Specification (NDIS) performance test. For more information, see NDIS Performance Test.
To measure send and receive throughput, packet loss, and round-trip time at the Winsock level, use the Winsock Performance Test. For more information, see Testing a Gateway by Using the Winsock Performance Test.
Use shared interrupt service thread (IST) when your hardware platform has multiple miniports. For more information, see Shared IST for NDIS.
Consider running your run-time image in full-kernel mode. For more information, see Full-Kernel Mode.
Configure system memory for your run-time image to customize the amount of RAM that the kernel allocates. Be aware that system memory generally executes faster out of RAM than directly out of ROM. You can use the Romimage.exe application to assign physical memory addresses to the binaries and files that are included in the run-time image. For more information, see Romimage and Configuring System Memory.
Eliminate effects of translation look-aside buffer (TLB) misses by moving the code into sections that will not incur TLB miss penalties. If your Windows CE-based device experiences excessive TLB misses and has software TLB miss handling, for example MIPS and SH, you might be able to reduce the number of misses by loading OS components into kernel memory. CELog (CELZONE_TLB, 0x8) can present an indication of high TLB misses.
For Windows CE-based devices that do not have software for handling TLB misses, check with the chip manufacturer to determine if the microprocessor supports on-board measurement of TLB misses. If so, the manufacturer might have tools for viewing that data. For more information on how this data is gathered, see CeLog Event Tracking. For information about viewing the data, see Remote Kernel Tracker.
Use a hive-based registry
- The hive-based registry stores registry data inside files, or hives, which can be kept on any file system. This removes the need to perform backup and restore when the device is powered down. For more information, see Using the Hive-Based Registry.
See Also
Developing a Gateway | Debugging and Testing a Gateway | Gateway Hardware Requirements
Send Feedback on this topic to the authors