64bit Development Overview March 28 Microsoft. Objectives Learn about the current 64-bit platforms from a hardware, software and tools perspective Review.

Slides:



Advertisements
Similar presentations
.NET Technology. Introduction Overview of.NET What.NET means for Developers, Users and Businesses Two.NET Research Projects:.NET Generics AsmL.
Advertisements

What If You Could… …Automatically protect and secure your company’s most critical business information?... …Get more done with less by enabling employees.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
ISYS 512 Business Application Design and Development with.Net David Chao.
Lesson 5-Accessing Networks. Overview Introduction to Windows XP Professional. Introduction to Novell Client. Introduction to Red Hat Linux workstation.
Native Device Development in Visual Studio 2005 Nishan Jebanasam Program Manager Visual C++ for Devices Microsoft Corporation Nishan Jebanasam Program.
Hands-On Microsoft Windows Server 2003 Networking Chapter 1 Windows Server 2003 Networking Overview.
Rona Lustig Senior Consultant Microsoft Consulting Services
DEV450 Visual Studio: Best Practices For Debugging Managed Applications Habib Heydarian Scott Nonnenberg Program Managers Microsoft Corporation.
Amit Chopra APP209 Introducing “Orcas” Huh ? What’s “Orcas”?
What’s new for Rich Clients? Martin Parry Developer & Platform Group Microsoft Ltd
VMware vCenter Server Module 4.
Ran Oelgiesser, Sr. Product Manager Praveen Vijayaraghavan, Program Manager (Virtual PC) Yigal Edery, Group Program Manager (MED-V)
© 2012 The McGraw-Hill Companies, Inc. All rights reserved. 1 Third Edition Chapter 3 Desktop Virtualization McGraw-Hill.
.NET On A Shoe String By: Patrick Brannen Lead Developer iDevCo, Inc.
Part I IA-32 Execution Layer Part II 64-bit Extension Technology Intel Alex.
DEV332.NET Framework: 64-Bit Development Today And Tomorrow Kang Su Gatlin Visual C++ Program Manager Microsoft Corporation Geralyn Miller.NET Solutions.
WoW64 Internal Architecture
Oracle Memory Configuration on Windows Server Configuring Large Memory for Oracle on 32-bit and 64-bit Windows.
MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design Study Guide (70-443) Chapter 1: Designing the Hardware and Software.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
September 2008 IT Software Development Guide.
©2012 Microsoft Corporation. All rights reserved. Content based on SharePoint 15 Technical Preview and published July 2012.
DB2 (Express C Edition) Installation and Using a Database
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Introduction to HP LoadRunner Getting Familiar with LoadRunner >>>>>>>>>>>>>>>>>>>>>>

NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Module 1: Introduction to C# Module 2: Variables and Data Types
The Intel Architecture and Windows Internals
Presented by Team D Compare Windows 2000, XP, and.NET By John Leonard, Brian North, Jeffrey Reynolds, Todd Saylor.
Verify Hardware Requirements Install Windows Server 2008 R2 Configure Active Directory Install SQL Server 2008 Install SharePoint Server 2010 Configure.
An Introduction to 64-bit Computing. Introduction The current trend in the market towards 64-bit computing on desktops has sparked interest in the industry.
Managing Your Cross-Platform Data Keynote: The Power of 64 Speaker Name Here Date.
By Rashid Khan Lesson 10-From Here to There: Remote Installation of the Windows XP Professional Client.
Module 1: Installing and Configuring Servers. Module Overview Installing Windows Server 2008 Managing Server Roles and Features Overview of the Server.
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter Two Installing and Configuring Exchange Server 2003.
University of Washington Roadmap 1 car *c = malloc(sizeof(car)); c->miles = 100; c->gals = 17; float mpg = get_mpg(c); free(c); Car c = new Car(); c.setMiles(100);
Copyright © 2002, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
WEB320 Migrating ASP.NET 1.x Applications to ASP.NET 2.0 Stefan Schackow Program Manager Web Platform and Tools Team Microsoft Corporation.
©2012 Microsoft Corporation. All rights reserved. Content based on SharePoint 15 Technical Preview and published July 2012.
Installation of Storage Foundation for Windows High Availability 5.1 SP2 1 Daniel Schnack Principle Technical Support Engineer.
Developing a 64-bit Strategy Craig McMurtry Developer Evangelist, Software Vendors Developer and Platform Evangelism Microsoft Corporation.
What’s New in Windows Forms 2.0 Stephen Turner Software Design Engineer
Hands-On Virtual Computing
Chapter Eleven Windows XP Professional Application Support.
A+ Guide to Managing and Maintaining Your PC, 7e Chapter 2 Introducing Operating Systems.
Intro to ASP.NET CS-422 Dick Steflik. What is.NET As applications in the Enterprise become more and more netcentric and less and less standalone.NET is.
ClickOnce Deployment (One-click Deployment)
Extended Operating System Support
Introducing the Windows Mobile development
Desktop Virtualization
Introduction to Visual Basic 2008 Programming
Roadmap C: Java: Assembly language: OS: Machine code: Computer system:
Microprocessor and Assembly Language
Visual Studio Tools for Office 2005
Introduction to .NET Framework Ch2 – Deitel’s Book
Chapter 6 Introduction to Network Operating Systems
Chapter 3: Windows7 Part 1.
Module 1: Getting Started
DotnetConf 11/14/2018 3:27 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE.
The Application Lifecycle
Web Development Using ASP .NET
Microsoft Build /24/2018 4:02 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Comparison of AMD64, IA-32e extensions and the Itanium architecture
Assembly Language for Intel-Based Computers
Oracle Memory Configuration on Windows Server
Windows Virtual PC / Hyper-V
ClickOnce Deployment (One-click Deployment)
Presentation transcript:

64bit Development Overview March 28 Microsoft

Objectives Learn about the current 64-bit platforms from a hardware, software and tools perspective Review the 64-bit Windows operating system choices Explore the main differences between 32-bit and 64-bit environments Understand the support for 64-bit development in Visual Studio 2005 Options for configuring development environments

Agenda Introduction 64-Bit Hardware 64-Bit Windows 64-Bit Development Summary

What is 64-Bit? Term used to describe processor architecture A 64-bit processor generally has: 64-bit wide registers 64-bit wide integer data path Significantly affects a number of factors Maximum size of memory address space Maximum size of values used in computations Jump from 32-bit to 64-bit is huge 32-bit maximum is 2 32 = 4,294,967, bit maximum is 2 64 =18,446,744,073,709,551,616

64-Bit For Developers Visual Studio 2005 includes 64-bit support Runs on and targets 32-bit and 64-bit platforms Provides cross architecture remote debugging Supports cross compilation 64-bit.NET Framework and SDK Will ship with Visual Studio 2005 It Just Works (IJW) Fully managed applications will just work No recompilation necessary Other 64-bit tools are also available Platform SDK (PSDK) and DDK

Agenda Introduction 64-Bit Hardware 64-Bit Windows 64-Bit Development Summary

64-Bit Processors Advanced Micro Devices AMD Athlon Designed for desktops and laptops AMD Opteron Designed for servers and workstations Intel Corporation Intel Xeon with Extended Memory 64 Technology Designed for small servers and workstations Intel Itanium 2 Designed for high-end servers

Processor Architectures Windows supports two 64-bit architectures Pure 64-bit processors Explicitly Parallel Instruction Computing (EPIC) Run 32-bit code using IA-32 Execution Layer Intel Itanium Processor Family (IPF) Hybrid 32/64-bit processors Extensions of 32-bit x86 processors Can operate in 32-bit and 64-bit modes Run 32-bit code natively at machine speed AMD Athlon and Opteron Intel Xeon Extended Memory 64 Technology

Agenda Introduction 64-Bit Hardware 64-Bit Windows 64-Bit Development Summary

Product Roadmap Product 32-Bit64-Bit x86Itaniumx64 Windows XP 64-Bit Edition N/A Q Windows Server 2003 Web Edition  Windows Server 2003 Standard Edition Q Windows Server 2003 Enterprise Edition Q Windows Server 2003 Datacenter Edition .NET Framework H SQL Server H2 2005

Latest update List of releases tied to 32bit and x64 and IA64 versions of Win2k03 SP1 and Win2k03 x64 Editions and Itanium Editions with SP bit (x86): - Microsoft® Windows Server™ 2003, Web Edition with Service Pack 1 - Microsoft® Windows Server™ 2003, Standard Edition with Service Pack 1 - Microsoft® Windows Server™ 2003, Enterprise Edition with Service Pack 1 - Microsoft® Windows Server™ 2003, Datacenter Edition with SP1 x64 - Microsoft® Windows Server™ 2003, Standard x64 Edition - Microsoft® Windows Server™ 2003, Enterprise x64 Edition - Microsoft® Windows Server™ 2003, Datacenter x64 Edition Itanium - Win2k03, Enterprise Edition with SP1 for Itanium-based Systems - Win2k03, Datacenter Edition with SP1 for Itanium-based Systems

64-Bit Memory Limits 64-bit Windows can support 16TB of virtual address space 8TB for system and up to 8TB per 64-bit process 4GB per Large Address Aware 32-bit process 2GB per standard 32-bit process Physical memory support is product specific Windows XP 64-Bit Edition Currently 16GB increasing to 32GB with SP1 Windows Server Bit Editions Standard:32GB Enterprise:64GB Datacenter:512GB

64-Bit Processor Limits 64-bit Windows supports up to 64 processors Windows XP 64-Bit Edition Supports 1 to 2 processors Windows Server Bit Editions Standard:1 to4 processors Enterprise:1 to8 processors Datacenter:1 to64 processors

Agenda Introduction 64-Bit Hardware 64-Bit Windows 64-Bit Development Summary

64-Bit Tool Support Visual Studio 2005 Target any platform from any platform Includes native and cross compilers Local and remote platform debuggers Supports cross platform debugging 64-bit.NET Framework and SDK Same functionality as 32-bit.NET Framework 64-bit Common Language Runtime (CLR) 64-bit Class Library including Windows Forms, ADO.NET, ASP.NET and Web Services Other 64-bit tools are also available Platform SDK (PSDK) and DDK

Targeting 64-Bit Platforms ManagedNative 32-bit64-bit32-bit64-bit Visual C++ Visual C#  Visual Basic  Visual J#  Different ways to target 64-bit platforms Choice of managed or native code Choice of 32-bit or 64-bit Choice of language

Agnostic Code Platform neutral code is said to be agnostic Runs natively on 32-bit and 64-bit platforms Most managed code is agnostic Runs without modification No recompilation necessary Includes: Visual Basic code Visual C# code Verifiable Visual C++ code ( /clr:safe ) Does not include code marked “32-Bit Required” Unverifiable Visual C++ code ( /clr:pure ) Visual J# code

Determining Code Type Code type can be determined using ILDASM Look for.corflags entry in assembly manifest

Configuring 64-Bit Projects

WOW64 32-bit code runs on WOW64 Windows 32 compatible emulation layer Supports 32-bit code on 64-bit Windows Called Windows 32 On Windows 64 or WOW64 Installed as part of 64-bit Windows Primary goal of binary compatibility Works by intercepting 32-bit system calls Switches to 64-bit mode Converts 32-bit data structures to 64-bit aligned Issues native 64-bit system call Writes back any output from 64-bit system call Returns to 32-bit mode

WOW64 Separation Native files and WOW64 files are separated System files %windir%\system32%windir%\SysWOW64 Program files %SystemDrive%\Program Files %SystemDrive%\Program Files (x86) Parts of system registry are also separated Applies to two main keys HKEY_CLASSES_ROOTHKEY_LOCAL_MACHINE\SOFTWARE Each has a new Wow6432Node for 32-bit entries

File System Redirection Ensures 32-bit applications work as expected Redirects %windir%\system32 file access requests from 32-bit applications to %windir%\SysWOW64 Allows backward compatible side-by-side system Some folders are bit neutral and are exempt CatRoot, CatRoot2, drivers\etc and spool Enabled by default for all WOW64 processes Controlled via Wow64EnableWow64FsRedirection() Facilitates access to ‘real’ system32 if needed // Enable or disable file system redirection BOOL Wow64EnableWow64FsRedirection( BOOL Wow64FsEnableRedirection ); BOOL Wow64FsEnableRedirection );

Registry Redirection Also for backward compatibility with 32-bit Redirects 32-bit access to Wow6432Node subkeys Allows side-by-side registry entries Transparent to 32-bit applications Applies to all WOW64 processes Any process can access any registry entry via RegCreateKeyEx() and RegOpenKeyEx() flags KEY_WOW64_64KEY specifies a 64-bit key KEY_WOW64_32KEY specifies a 32-bit key WOW64 includes a 32-bit only registry editor %windir%\SysWOW64\regedit.exe -m

64-Bit Development Environment #1 Dual computers 32-Bit Development Computer Develop and test as 32-bit code Cross compile for 64-bit target Transfer to test computer Tools Visual Studio Bit Test Computer Execute 64-bit code Remote debug Correct any remaining problems Tools Remote Debugger

64-Bit Development Environment #2 Single computer 64-Bit Development Computer Develop and test as 64-bit code Execute 64-bit code Remote debug (WOW64 to 64-bit) Correct any remaining problems Tools Visual Studio 2005 Remote Debugger

Agenda Introduction 64-Bit Hardware 64-Bit Windows 64-Bit Development Summary

Summary Learn about the current 64-bit platforms from a hardware, software and tools perspective Reviewed the 64-bit Windows operating system choices Explored the main differences between 32-bit and 64-bit environments Understood the support for 64-bit development in Visual Studio 2005

© Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.