Delphi Day 2009 Win7 Dev Overview
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Delphi Day 2009 Win7 Dev Overview

  • 2,897 views
Uploaded on

Slide usate al Delphi Day 2009 a Piaceza

Slide usate al Delphi Day 2009 a Piaceza

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,897
On Slideshare
2,694
From Embeds
203
Number of Embeds
3

Actions

Shares
Downloads
11
Comments
0
Likes
0

Embeds 203

http://blogs.msdn.com 201
http://www.slideshare.net 1
http://www.linkedin.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • [TDM. DEV][High level overview of the Windows 7 improve performance and main talking points]Windows 7 maximizes hardware energy efficiency and scalability while maintaining high performance. Energy efficiency is improved through reduced background activity and new support for the trigger starting of system services. Windows 7 also offers improvements in the Windows kernel that enable applications and services to scale efficiently between platforms. Performance of many features and APIs is improved in Windows 7 versus Windows Vista. For example, driver performance on servers is optimized by new user-mode and kernel-mode topology APIs. Graphics rendering is considerably smoother and faster. Accessibility performance is also significantly faster than before.
  • [DEV][Power Drilldown - a setup slide for the power demo]Timer Resolution15.6ms is system default for platform timerLower intervals can impact battery life by 20%Lower then 10ms rarely requiredUser Powercfg to ensure your application is not increasing timer resolutionAvoid Periodic Disk activity8% of power usedRegistry Activity == Disk ActivityUse Animations only when appropriateAdjust to power environment

Transcript

  • 1. Windows 7 (RC) Developer overview Pietro Brambati Microsoft blogs.msdn.com/pietrobr
  • 2. Agenda Kernel Virtualizzazione & VHD API Supporto al Multi-Touch Supporto ai Ribbon Formati per i documenti Grafica Web Services Sensor & Location Platform [Altre] Tips & Tricks UI
  • 3. Introduzione Kernel di Win7 si basa sul kernel di Win. Vista SP1 Compatibilità driver e applicazioni Nuove API native aggiunte a Windows 7 Per alcune ci sarà il porting verso Vista/Win2008/.. Alcune verranno usate come base per nuove API .NET Aggiungono funzionalità “mancanti” Ad esempio Web Service API Aggiungono funzionalità “nuove” Multi-Touch API
  • 4. Kernel
  • 5. Performance Riduzione di Miglioramento
  • 6. Efficenza Energetica Idea di fondo: si cerca di mantenere in idle il processore per più tempo possibile Evitare il polling Modifiche al kernel: < 2% attività CPU in stato di idle I/O disco ridotto in idle Riduzione dell’attività in background Service Control Manager (SCM)  un servizio può essere fatto partire o fermato su specifici eventi (trigger) : meno servizi devono essere fatti partire allo start-up della macchina SCM può rimanere in ascolto tramite diversi provider: Device arrival, IP address, Domain join and leave, Group policy updates
  • 7. Efficienza Energetica Timer Coalescing API BOOL Migliorare l’efficenza estendendo l’idle time WINAPI Le nuove coalescing API permettono al chiamante di SetWaitableTimerEx( __in HANDLE hTimer, __in specificareLARGE_INTEGER tolleranza const un tempo di *lpDueTime, __in Il kernel può ottimizzare emettendo un unico interupt LONG lPeriod, per servire più timer __in_opt PTIMERAPCROUTINE pfnCompletionRoutine, __in_opt LPVOID lpArgToCompletionRoutine, __in_opt PREASON_CONTEXT WakeContext, __in ULONG TolerableDelay ); Timer tick 15.6 ms Vista Periodic Timer Events Windows 7
  • 8. Windows 7 e il Dispatcher Lock Problema: lo scheduler di Windows gestisce due stati stati (running / waiting) nell'accedere agli oggetti. A questo scopo acquisisce un lock globale: il dispatcher lock In presenza di un alto numero di CPU logiche ci sono molti più thread che contemporaneamente girano nel sistema Con molti thread il dispatcher lock diventa l'imbuto più importante del sistema Soluzione: in Windows 7 è stata di introdurre un nuovo stato nel modo in cui lo Scheduler accede agli oggetti kernel: pre-waiting, waiting, running. Nello stato di pre-waiting il lock viene acquisito solo sullo specifico oggetto su cui si vuole operare e non più il dispatcher lock globale
  • 9. Windows 7 e il PFN Database Lock Problema: quando il memory manager assegna una pagina fisica di memoria al working set di un processo esegue un lock al PFN Database PFN = Page Frame Number PFN Database = la lista di pagine fisiche di memoria In presenza di un alto numero di CPU logiche, questo è il secondo lock globale per impatto sulle performance Soluzione: Windows 7 ha introdotto una serie di lock minori che permettono di non tenere bloccato tutto il database
  • 10. Virtualizzazione e VHD
  • 11. Windows Virtual PC [beta] Nuovo software di virtualizzazione client Supporto a USB 2.0 Richiede virtualizzazione hardware AMD-V Intel-VT
  • 12. Windows XP Mode [beta] Si appoggia su Windows Virtual PC Macchina Windows XP SP3 scaricabile gratuitamente per le versioni Professional, Enterprice e Ultimate Per far giare applicazioni “impossibili” da aggiornare Posso anche “Virtualizzare le applicazioni” Per l’utente è come se le lanciassi da Windows 7 …
  • 13. Supporto nativo e avvio da VHD Non è necessario uno strato di virtualizzazione per accedere ad un file VHD Facile ridimensionare i file VHD Deploy di file VHD Spostare da un computer ad un altro Posso fare il boot direttamente da un file .VHD Creo il file .VHD con i tools Installo Win 7 nel VHD Uso del tool BCDEdit per configurare il boot manager http://www.microsoft.com/italy/beit/Generic.aspx?video=a4b4a79e-7a2b-40c4-95fb- d4b82ee117c2#1
  • 14. Tool per la gestione di VHD
  • 15. API
  • 16. Il Multi-Touch
  • 17. Il Multi-touch Hardware Esistono già dispositivi in grado di gestire il Multi-touch Software Windows 7 ha delle API native .NET 4.0
  • 18. Roadmap per il supporto al Multi-touch NET 4.0 / Surface 2.0 Release Windows 7 Release Multi-Touch Surface Controls Multi-Touch Controls & API Multi-Touch API Multi-Touch API and Controls Multi-Touch API
  • 19. Scenic Ribbon
  • 20. Windows Scenic Ribbon Application Menu Quick Access Tab Contextual Tab Set Help Toolbar Contextual Tab Group (aka Dialog Launcher “Chunk”) In Windows 7, ci sarà anche per Vista Win32 API, COM-based
  • 21. Supporto ai Ribbon per piattaforma Target: Target: Target: Managed MFC native Native NET 3.5 Da Win2K Da Vista Office 2007 & Office 2007 & Windows Windows styles Windows styles1 visual style Official In Visual release in Studio 2008 Windows 7 2009 SP1 WPF MFC Win32
  • 22. Grafica
  • 23. Grafica – DirectX 11 DirectX è un’insieme di API, tra queste Direct3D: originariamente (1995) pensata per lo sviluppo di videogioghi e grafica 3D Windows Vista introduce un DWM che usa Direct3D Windows 7 DWM usa Direct3D10.1 Memoria per la gestione delle finestre ridotta del 50% Le nuove API sono interoperabili tra loro e con GDI Non è necessario disabilitare il DWM DirectX 11 per Windows 7 e Windows Vista
  • 24. Direct 3D10.1 API più facili da usare che con Direct3D9 Performance migliorate nella pipeline, grazie a: Programmable shader stage immutable state objects Geometry Shader Stage eseguito interamente nella GPU Altre … Windows Advanced Rasterization Platform (WARP) Rendering software, efficente perchè in grado di sfruttare CPU multi-core (no acceleratori HW) 3D10.1 Command Remoting Accelerazione sul client di sessioni Terminal Server
  • 25. Direct 3D11 Estende Direct3D10/3D10.1 Supporto alle nuove GPU Funziona su hardware D3D 9, 10 e 11 Estende la pipeline di D3D10 (Tassellation, etc.) Ottimizzazioni per l’uso in applicazioni multi –thread Miglioramento a HLSL Uso dei core della GPU per calcoli non di grafica (GPGPU)
  • 26. Nuove API DirectX Direct 2D Grafica 2D accelerata, prestazioni superiori a GDI/GDI+, ma interoperabile, indipendente dalla risoluzione Direct Write Per il rendering del testo, indipendente dalla risoluzione, accelerato Supporto per ClearType, OpenType Windows Imaging Component Introdotto in Vista Framework per immagini e metadati Nuovi formati supportati
  • 27. DxDiag.Exe WindowsSystem32DxDiag.exe
  • 28. Web Services API
  • 29. Windows Web Services API Consumare ed esporre servizi in codice nativo Nessuna dipendenza da .NET Interoperabilità con lo stack WS-* SOAP Windows Communication Foundation (WCF) ASP .Net XML Web Services (ASMX) Non-Microsoft stacks Parte di Windows 7 Disponibile anche per Windows XP/Vista/2003/2008
  • 30. Performance – Memory Server Private Working Set (Kb) – Steady State 7000 6000 TCP/Binary 5000 4000 3000 Server Private Working Set (Kb) 2000 1000 WWSAPI Message Sizes (bytes) Request: 153; Reply: 89 0 RPC WWSAPI Sapphire WCF Configuration: Server: 2.2 GHz AMD (dual core), 64-bit Windows Server 2008 Clients: 2.6 GHz AMD (dual core), 64-bit Windows Vista SP1
  • 31. Performance – TCP Throughput TCP Server Throughput (operations/sec) 80000 70000 60000 TCP/Binary 50000 40000 30000 TCP Server Throughput (Operations per sec) 20000 10000 0 RPC WWSAPI Sapphire WCF WWSAPI Message Sizes (bytes) Request: 153; Reply: 89 Configuration: CPU Utilization > 98% Server: 2.2 GHz AMD (dual core), 64-bit Windows Server 2008 Clients: 2.6 GHz AMD (dual core), 64-bit Windows Vista SP1
  • 32. Configurazioni supportate Transports Security HTTP, TCP, UDP WS-Security 1.0 and 1.1 (partial) XML Encodings WS-Trust February 2005 Text, Binary, and MTOM and 1.3 (partial) Envelope WS-SecureConversation SOAP 1.1 and 1.2 1.1 and 1.3 (partial) Addressing Policy WS-Addressing 0.9 and WS-Policy from March 1.0 2006 and v.1.2 Metadata WS-Policy Attachment from March 2006 and 1.2 WSDL 1.1, XML Schema WS-SecurityPolicy 1.1 1.0 WS-MetadataExchange 1.1 WS-Transfer March 2006
  • 33. Sensor & Location Platform
  • 34. Sensor & Location Platform Oggi: diversi fornitori/diversi formati Un modello di driver unificato Sensori Fisici (e.g., GPS devices, Light Sensors) Sensori Logici(e.g., Wi-Fi triangulation resolver) Emulazione di sensori in firmare Fornisce API standard Sensor API: C++/COM / Managed code (Windows Bridge) Location API: C++/COM, Managed code (Windows Bridge) L’utente può decidere se abilitare o no un sensore http://msdn.microsoft.com/en-us/library/dd318936(VS.85).aspx
  • 35. Formati per i documenti
  • 36. Formati per i documenti Vista ha introdotto XML Paper Specification (XPS) e Open Packaging Convention (OPC) .NET Framework Windows 7 supporta OPC e XPS Nuove Packaging API Supporta la firma digitale via certificati X509
  • 37. Libraries “ Libraries are destinations where users can find and organize their data as collections of items that may span multiple locations “
  • 38. Windows 7 Library per .NET http://tinyurl.com/win7net
  • 39. Tips & Tricks
  • 40. Quando verrà rilasciato ?
  • 41. “Evoluzione, non rivoluzione” Domande ? Risposte! blogs.msdn.com/pietrobr Download Windows 7 RC http://msdn.microsoft.com/it- it/evalcenter/dd353271.aspx [Scadenza Giugno 2010]
  • 42. Altre API Reliability Access Monitor WMI Interface  Monitorare la stabilità della macchina Windows PowerShell 2.0  IDE per debugging Windows Installer  Unica transazione di più package Windows Filtering Platform  Miglioramenti per chi sviluppa firewall, antivirus, etc  Ispezione di traffico non-IP (MAC e ETHERNET filtering)
  • 43. Altre API Media API: api di alto livello (C++) semplificano il modello di programmazione Windows Automation W3C ARIA Extending Linguistic Service Library API
  • 44. Link utili Windows 7 Developer Guide http://msdn.microsoft.com/en-us/library/dd371748(VS.85).aspx Windows 7 (RC) SDK http://www.microsoft.com/downloads/details.aspx?FamilyID=6db 1f17f-5f1e-4e54-a331-c32285cdde0c&displaylang=en Windows Driver Kit (WDK) http://msdn.microsoft.com/en-us/library/aa972908.aspx Ribbon Guideline http://msdn.microsoft.com/en-us/library/cc872782.aspx DirectX SDK http://www.microsoft.com/downloads/details.aspx?familyid=24A5 41D6-0486-4453-8641-1EEE9E21B282&displaylang=en DirectX info http://www.xnagamefest.com/presentations08.htm
  • 45. Link Utili Sensor API: http://msdn.microsoft.com/en- us/library/dd318953(VS.85).aspx Location API: http://msdn.microsoft.com/en- us/library/dd317751(VS.85).aspx Service Trigger Events http://msdn.microsoft.com/en- us/library/dd405513(VS.85).aspx
  • 46. © 2008 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.