Soft Control facile con RTX
e Windows Embedded Standard 7
Beppe Platania
BEPS Engineering
Parma, 16 Settembre 2010
BEPS Engineering
2008 Excellence Award
Official Training Partner
EMEA
Beppe Platania
[email protected]
blog.bepseng.it
BEPS Engineering
www.bepseng.it
L’offerta di BEPS Engineering
• Consulenza
– Sistemi Operativi Embedded
– Applicazioni Embedded
– Applicazioni Real Time
• Software System Integrations
–
–
–
–
Analisi di progetto
Analisi e costruzione del sistema
Analisi e sviluppo di applicazioni
Supporto alla produzione e alla distribuzione
• Corsi ufficiali Microsoft/Intervalzero
• Prodotti finiti
Windows Embedded Standard 7
Windows 7 for Embedded (Ultimate)
Ottimizzato per soluzioni “non-PC”
Scenario
La scelta standard per uso personale
Rivolta allo sviluppatore/sistemista
Flessibilità
Rivolta all’utente finale
Immagine ridotta all’esigenza
Dimensioni
(footprint)
Grossa Immagine Monolitica (16GB)
Funzionalità Embedded specifiche
Funzionalità
Embedded
N/A
Venduto dai distributori Embedded
Prezzo minore
Distribuzione
Prezzo
Venduto dai dai distributori Embedded
Feature
Windows
Embedded
Standard
Windows 7
Client
CAB Files
Install on Demand
.NET Framework 3.5
Language Packs
●
●
●
●
●
●
●
●
IPv6
Win HTTP Service
●
●
●
●
Custom Image Build Tools
●
HORM
●
Feature
Windows
Embedded
Standard
Windows 7
Client
Multi-Touch support
Enhanced Write Filter
File Based Write Filter
WSUS
SCCM / SCOM Support
●
●
Headless Operation
●
Wireless Connectivity
System Message Intercept
USB Boot 2.0
●
●
●
●
●
●
●
●
●
●
Windows Embedded Standard 7
Windows Embedded Standard 7 é la versione
successiva a “Windows Embedded Standard (2009)”
E’ la versione a “package” di Windows 7 Ultimate
Include le più recenti tecnologie di Windows 7 Client
Permette la creazione personalizzata del sistema
operativo per svariate soluzioni embedded.
E’ stata disegnata per hardware X86 (32bit) e X64
(64bit)
Compatibilità binaria con Windows 7
Funzionalità estese di Windows 7
Cambiamenti rispetto al passato
Funzionalità embedded
Minore ingombro su disco
Modularità e compattezza
Strumenti di sviluppo
Windows Embedded Standard 7 = Windows 7 in package +
l’Embedded
L’ambiente di sviluppo è dotato di una struttura a cartelle che contiene
tutti i package standard di un sistema Windows 7 Ultimate con
l’aggiunta di tutti gli elementi tipici dell’embedded.
L’utente, tramite gli strumenti di sviluppo, è in grado effettuare le
proprie configurazioni sia direttamente sul target, sia preparando la
configurazione sulla macchina di sviluppo e poi applicandola al target.
Windows Driver Model (WDM)
Nell’immagine di Windows Embedded Standard 7 si può utilizzare
qualsiasi driver esistente in ambiente Windows 7.
Win32 Standard
Inserendo i package opportuni nella build, ogni applicazione che
funziona in Windows 7 funziona in Windows Embedded Standard 7.
“se può girare su Windows 7, potrà anche girare su Windows
Embedded Standard 7 !! … application compatibility template...”
Rich Features Set
Rich User Experiences
● Protected memory model
● Windows Multi-Touch
● Preemptive multitasking
● Windows Aero
● Scalable memory / SMP support
● Windows Presentation Foundation
● Security
● Windows Sensor /Location Platform
● Multimedia support
● DirectX / Direct3D 11
● Management
● Audio Improvements
● Communications/networking support
Performance
● Enterprise server and tools integration
● Reduced boot time
● VHD Boot
● SuperFetch
● 64bit processor (X64) support
Latest Security Technologies
Latest Windows Technologies
● BitLocker and BitLocker to Go
● .Net Framework 3.5
● AppLocker
● Microsoft Silverlight / Expression Web
● Biometric Framework
● Windows Media Player 12
● DirectAccess
● Internet Explorer 8
● BrancheCache
● RDP 7
● Windows Service Hardening
● PowerShell V2
Power Reduction
● Windows PE 3.0
● Reduced idle power consumption
● ImageX
● Timer Coalescing API
● Web Services on Devices (WSDAPI)
Cosa é cambiato da Windows Embedded Standard 2009
Divisione a package non a componenti
Minore granularità
La build più piccola (eCore) é 520MB (la media 1GB)
La creazione dell’immagine viene fatta sul target
Possibiltà di usare direttamente il Wizard o di configurare
l’immagine (ICE).
Il target designer lascia il posto al configuratore (ICE);
Struttura a cartelle (Distribution Share) invece del database e del
repository dei componenti.
FBA sostituito dal Windows Setup e dal Wizard (Builder Engine)
Non necessita della generazione di componenti per cui non c’é più
il Component Designer.
Configurazione di base (eCore = Embedded Core)
32bit (soltanto in Inglese)
~500 MBytes di spazio disco
Soltanto il Package “Embedded Core”
Configurazione Tipica
~1GBytes di spazio disco
Esempio: Thin Client
Configurazione Completa
~4GBytes di spazio disco
L’installazione di Windows 7 OEM richiede ~16GBytes di spazio disco!
Versione modulare di Windows 7 Ultimate +
funzionalità (Feature Set) e Package dell’ambiente embedded
Cos’é un Package
Porzione di sistema operativo: file, risorse, set di registry per una
data funzionalità.
I package sono l’elemento fondamentale di questa architettura
modulare.
Sono contenuti nella cartella di distribuzione (Distribution Share):
~150 System Package
~400 device driver Package
~40 Language Package
Esempi: Windows Explorer Shell, “Shell Accessories” (Calculator,
Paint etc.)
Cos’é un Feature set
Insieme di Package che compongono una soluzione tecnologica,
una funzionalità o un’applicazione
Contiene uno o più package
Ce ne sono 60 nella cartella di distribuzione (Distribution Share)
Esempi: Internet Explorer 8, Windows Media Player 12, Shell …
Confronto con Windows Embedded Standard 2009
Package = componente con una visibilità 1000
Feature Set = componente con visibiltà 2000
Image Builder Wizard
Per creare il proprio sistema operativo direttamente sul
device target o utilizzando un “Answer File”
Image Configuration Editor
Per personalizzare il sistema secondo le proprie
necessità. Crea/modifica gli “Answer File “.
Target Analyzer
Per investigare sull’hardware di sistema;
Tool aggiuntivi
Per installare, duplicare, gestire, ecc…
Caratteristiche minime del sistema “Target”
CPU 1GHz x86
ACPI PnP BIOS
Disco di Boot
Flash / uDiskOnChip / Hard drive
1Gb Minimo (raccomandati 3Gb)
Memoria
512 MB (dipende dalle funzionalità richieste)
(Riferimenti per architettura x86)
Virtual-PC – Emula un PC nella macchina di sviluppo
Sviluppo con il Target reale
PC di sviluppo
1GHz Pentium III ( P4 - 2GHz, 2Mb Cache)
1GB RAM (2 GB, HD 7200 RPM)
Windows Vista / Windows 7
Uso delle Virtual Machine
Windows 7 Client
Windows 7 Client
IBW (ISO)
VM con Windows XP
VM con Standard 7
Windows XP-pro (VHD)
Standard 7 (VHD)
Standard 7 (VHD)
Windows XP-pro (VHD)
Definizione dell’Hardware (TAP - TA)
Creazione dei componenti per le
applicazioni
Definizione del software
Scelta di un Template di partenza
Embedded Enabling Features
Gli oggetti dimenticati:
Test di accettazione, produzione e controllo
Aggiornamento e manutenzione sul campo
Sviluppo in WES-2009
Hardware
Definition
Target
Analyzer
Application
Components
Application
Binaries
Component
Designer
App,
OS and EEF
Components
Windows XP
Embedded
Component
Database
Target
Designer
OS
Image
Azione
On Line (IBW)
Definizione dell’Hardware
Definizione del software
Scelta di un Template di partenza
Embedded Enabling Features
Aggiunta di applicazioni
Automatico
Aggiornamento sistema
diretto
Aggiornamento applicazioni
Off Line
(ICE + IBW)
Win-PE +TAP
Tools/ICE+WSUS
Tools
Sviluppo “on-line” in WES-7
EEF
Packages
Embedded Core
(Bootable)
File Based
Write Filter
Feature
Packages
Internet
Explorer
Language Packs/
Driver Packs
Image Assembly and
Configuration on the
device
Embedded Operating
System
3rd Party
Software
Installer
Operating
System Updates
Creazione interattiva dell’immagine
Bootable media with
Windows Pre-installation
environment (WinPE)
Image Builder Wizard
Embedded Core and
Feature Sets
1
Sysprep,
DISM
Boot device
Run IBW
Select drivers, features,
languages
Logon
Install custom software
2
Generalize master image
using Sysprep
Capture image into
WIM using DISM
Deploy WIM
3
Creazione avanzata dell’immagine
Image Configuration Editor (ICE)
unattend.xml
Features
Drivers
Languages
OS updates
Custom SW
SMI settings
Using ICE
create image
configuration in
unattend.xml
1
Sysprep,
DISM
Create bootable
Media with:
Winpe, IBW,
Quebec wims,
Unattend.Xml
2
Master device
Boot device
using WinPE
Run setup with
unattend.Xml
3
Generalize master
image using Sysprep
Capture image
into WIM using
DISM
Deploy WIM
4
Distribution share
Answer file
Settings
Properties
Messages
!! Vediamolo dal VERO!!
Possibilità di boot da supporti di massa aggiuntivi
USB 2.0, Compact Flash
Tecnologia di filtri sulla scrittura
Permette al sistema di partire da un supporto “read-olny” e
di controllare la scrittura su quelli read/write.
• EWF (Enhanced Write Filter)
• FBWF (File Based Write Filter)
• Registry Filter
(HORM) Hibernate Once, Resume Many
Boot eseguito da una ibernazione predefinita
tempo di partenza minimo.
Funzionamento senza schermo (Headless Operation)
Installazione senza video, tastiera e mouse (in pratica senza
utilizzatore locale).
Message Box Default Reply
Per rispondere alle richieste del sistema, con il default, senza
richiedere l’intervento diretto dell’utente (popup).
Dialog Box Filter (novità di Windows Embedded Standard 7)
Per gestire le finestre di dialogo in modo differenziato.
Possibilità di personalizzare il sistema.
Sostituendo lo splash-screen di Windows
Sostituendo la shell standard con una propria applicazione.
Windows Embedded Standard 7 non ha bisogno dell’attivazione on-line
Nessun cambiamento rispetto a Windows Embedded Standard 2009
Si inserisce un PID e l’immagine può essere di valutazione o di
distribuzione
Tre tipi di immagine di valutazione
Trial (30gg) – Nessun PID inserito (o tutti zeri)
Di valutazione (180gg) – Con un PID ricevuto dal Distributore
Accademico (365gg) – PID ricevuto da Microsoft
Allo scadere del periodo il sistema riparte ogni 20 minuti.
Il PID non può essere cambiato “run-time” bisogna rigenerare il
sistema.
DISM (Deployment Image Servicing and Management):
per aggiornare l’immagine creata;
Package Manager, Package Scanner:
per gestire i package dell’immagine;
Importpackage:
per aggiungere package ad una Distribution Share;
ImageX: per gestire le immagini WIM.
Sysprep: per preparare il dispositivo di boot;
● WUSA – Windows Update Stand Alone Installer
● SCCM – System Center Configuration Manager (Enterprise
solution)
Ecc ...
Il Debug di applicazioni remote
Local
development
machine
TCP/IP network
connection
Remote execute
Open Visual Studio,
Create and Build an
Application
Application is
executing on the
remote WES
Device
From Dev Studio,
Execute the
Application
Application Is
Broken Into
(Being Remotely
Debugged)
From the Visual
Studio Debugger,
Break Into the
Application
Remote
WES device
Valutate Windows Embedded Standard 7
http://www.microsoft.com/windowsembedded/enus/products/westandard/getting-started.mspx
Leggete gli articoli dai blog in Italiano e in inglese
http://blog.bepseng.it
http://blogs.msdn.com/embedded
Guardate il sito ufficiale Microsoft
http://www.microsoft.com/windowsembedded
http://www.microsoft.com/windowsembedded/enus/products/westandard/default.mspx
Per cercare i “Windows Embedded Partner” o per diventarlo:
http://www.windowsembeddedpartner.com/
Soft Control facile con RTX
e Windows Embedded Standard 7
Beppe Platania
BEPS Engineering
Parma, 16 Settembre 2010