Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rob Tiffany Mobility Architect Microsoft Corporation WMB306.

Similar presentations


Presentation on theme: "Rob Tiffany Mobility Architect Microsoft Corporation WMB306."— Presentation transcript:

1

2 Rob Tiffany Mobility Architect Microsoft Corporation WMB306

3 Who Am I? Mobility Architect in the Microsoft Mobile Global Practice Created the Microsoft Mobile Line of Business Accelerator Writer :: Entrepreneur :: Former Embedded MVP :: Submariner :: DJ

4 Session Objectives and Takeaways Learn how Windows Mobile 6.5 makes more memory available to applications Learn how Windows Mobile 6.5 boosts both application & graphics performance Learn a new pattern for.NET Compact Framework development Create new opportunities with faster, richer, more complex games and apps that target the consumer, science, education and line of business segments

5 Slot Fill Order FILE DLLsMODULE DLLs 01, 0 Slot 63 :: Resource-Only DLLs Slot 0 :: Alias of Active Process from Other Slots Overflow DLLs Reduce VM Space for All Processes Slots 2-32 :: Application Processes Slots 33-61 1 GB Large Memory Area Memory-Mapped Files 2 GB :: User Space FILE DLLs are loaded into every slot which decreases VM space to all slots MODULE DLLs are 4K page-aligned instead of 64K due to ARM architecture saving 9MB of VM Slot 62 :: Shared Heaps Windows Mobile 6 Slot Machine Slot 1 :: ROM FILE DLLs + MODULE DLLs

6 Slots

7 Slot 63 :: Resource-Only DLLs Slot 1 :: ROM FILE DLLs + MODULE DLLs Slots 2-32 :: Application Processes Slots 33-58 :: Large Memory Area Memory-Mapped Files 2 GB :: User Space Slot 62 :: Shared Heap Area Slot 61 :: Read-Only FILE DLLs Slot 60 :: Read-Only FILE DLLs Slot 59 :: Device.exe Thread Stacks Extra 64 MB of VM Extra 8 MB of VM for Device Drivers Slot 0 :: Alias of Active Process from Other Slots Overflow DLLs Reduce VM Space for All Processes Convert mshtml.dll to FILE DLL to free 6 MB of VM DLLs used exclusively by one process don’t take space from other processes Windows Mobile 6.1 Better Slot Machine Slot Fill Order FILE DLLsMODULE DLLs 60, 61, 01, 0

8 Slot 63 :: Resource-Only DLLs Slot 1 :: ROM FILE DLLs + MODULE DLLs Slots 2-32 :: Application Processes Slots 33-58 :: Large Memory Area Memory-Mapped Files 2 GB :: User Space Slot 62 :: Shared Heaps Slot 61 :: FILE + MODULE DLLs Slot 60 :: FILE + MODULE DLLs Slot 59 :: Device.exe Thread Stacks Slot 0 :: Alias of Active Process from Other Slots Overflow DLLs Reduce VM Space for All Processes Faster MODULE DLLs whose VM is allocated at build time instead of runtime can go everywhere! Process Threshold of 28 Windows Mobile 6.5 Best Slot Machine Slot Fill Order FILE DLLsMODULE DLLs 60, 61, 01, 61, 60, 0

9 Windows Mobile 6.5 Faster performance JPEG images decode faster by aligning buffer size to 128-byte boundary needed by hardware Glyph Cache jumps from 8KB to 72KB for English and 128KB for Asian builds to boost font rendering speed GDI used to draw text one character at a time; now draws the entire string in one shot Switching Today screens and backgrounds repeatedly does not degrade device performance Paging Pool is set to a minimum of 15 MB to boost application load performance Minimum devices specs include a 400 MHz processor, 128 MB of RAM and 256 MB of ROM

10 Application Process Space Native 64 KB Guard Section Image of EXE file (Code + Data + Resources) 64 KB/Thread Stack (Local Method Variables) Heap (Object Instance Variables) Free Virtual Memory Other DLLs + Your DLLs Pushing Up Pushing Down Large Memory Area (1 GB) Memory-Mapped Files LoadLibrary MapViewOfFileCreateFileMapping 32 MB :: Slot Space Breakout DLL Crunch

11 64 KB Guard Section Image of EXE file (Code + Data + Resources) AppDomain Heap (CLR Data Structures) JIT Heap (Current Call Stack) 64 KB/Thread Stack (Local Method Variables) GC Heap (Object Instance Variables) Free Virtual Memory Other Native DLLs Large Memory Area (1 GB) NETCF Class Libraries Managed EXEs + DLLs 32 MB :: Slot Space 32 MB :: Slot Space Application Process Space Managed Breakout In-ROM NETCF uses 650KB less Slot VM

12 64 KB Guard Section Empty EXE file (5KB) AppDomain Heap (CLR Data Structures) JIT Heap (Current Call Stack) 64 KB/Thread Stack (Local Method Variables) GC Heap (Object Instance Variables) Free Virtual Memory Other Native DLLs Large Memory Area (1 GB) NETCF Class Libraries Managed EXEs + DLLs 32 MB :: Slot Space Application Lives in DLLs using System; namespace OptimizedExe { static class Program { [MTAThread] static void Main() { OptimizedDLL.StartUp.Main(); } } } using System; using System.Windows.Forms; namespace OptimizedDLL { public class StartUp { public static void Main() { Application.Run(new Main()); } } } MemMaker Pattern Managed development

13 MemMaker Pattern

14 Other Ways to Breakout Store data in the 1 GB large memory area via memory mapped files Use IPC to access an in-memory Hashtable cache running in a different slot Use IPC to access SQL Server Compact in a different slot Run database with a larger Max Buffer Size setting Send SQL commands Receive Generic Lists of strongly typed objects

15 Summary Windows Mobile 6.5 provides your games and apps with more virtual memory and performance than any previous release Incorporating the MemMaker pattern for.NET Compact Framework development will automatically boost the amount of virtual memory available to your games and apps for better performance and stability

16

17 www.microsoft.com/teched Sessions On-Demand & Community http://microsoft.com/technet Resources for IT Professionals http://microsoft.com/msdn Resources for Developers www.microsoft.com/learning Microsoft Certification and Training Resources www.microsoft.com/learning Microsoft Certification & Training Resources Resources Required Slide Speakers, TechEd 2009 is not producing a DVD. Please announce that attendees can access session recordings at TechEd Online. Required Slide Speakers, TechEd 2009 is not producing a DVD. Please announce that attendees can access session recordings at TechEd Online.

18 Windows Mobile ® Resources TechNet TechCenter – System Center Mobile Device Manager 2008 http://technet.microsoft.com/scmdm http://technet.microsoft.com/scmdm TechNet TechCenter – Windows Mobile http://technet.microsoft.com/windowsmobile http://technet.microsoft.com/windowsmobile MSDN Center – Windows Mobile http://msdn.microsoft.com/windowsmobile http://msdn.microsoft.com/windowsmobile Webcasts and Podcasts for IT – Windows Mobile http://www.microsoft.com/events/series/msecmobility.aspx http://www.microsoft.com/events/series/msecmobility.aspx General Information – Windows Mobile http://www.windowsmobile.com http://www.windowsmobile.com General Information – System Center Mobile Device Manager 2008 http://www.windowsmobile.com/mobiledevicemanager http://www.windowsmobile.com/mobiledevicemanager Windows Marketplace Developer Portal http://developer.windowsmobile.com http://

19 Windows Mobile ® is giving away Blackjack IIs ! Stop by the Windows Mobile Technical Learning Center to learn how to enter

20 Complete an evaluation on CommNet and enter to win! Required Slide

21 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Required Slide


Download ppt "Rob Tiffany Mobility Architect Microsoft Corporation WMB306."

Similar presentations


Ads by Google