development process of windows phones and small screen

30
Shenzhen 2015 请请请请请请请请请 WinHEC 请请请请请 Download WinHEC presentations here: http://channel9.msdn.com/Events/WinHEC/2015

Upload: lehanh

Post on 14-Feb-2017

225 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Development Process of Windows Phones and Small Screen

Shenzhen 2015

请点击以下链接下载WinHEC的演讲材料Download WinHEC presentations here:http://channel9.msdn.com/Events/WinHEC/2015

Page 2: Development Process of Windows Phones and Small Screen

Development Process of Windows Phones and Small Screen Tablets Devices Heonmin LimSenior Software Engineering Lead

Page 3: Development Process of Windows Phones and Small Screen

Session AbstractWindows 10 makes it easy to build a phoneIntroduction of concepts and overall end-to-end process to bring up and ship a phone/tablet device

Topics:Overview of Windows 10 Mobile, tools & development flowWalkthrough of integrating component drivers into imageHow to build and customize Windows 10 FFU imageOEM application developmentCode signing, ManufacturingImage Updates

Intended Audience:OEMs, ODMs, IDHs, Driver Developers

Page 4: Development Process of Windows Phones and Small Screen

ProcessToolsOptimizationServicing

Builds/KitsBSPDevelopment toolsDrivers, Services

Big Picture

Bringup Test Validation

Design

SoCHW Components

Manufacturing

Updates

HLKDebugging

Test supportUpdate Servers

Page 5: Development Process of Windows Phones and Small Screen

Windows Mobile Architecture OverviewSame Windows KernelSupplemented by Phone specificbinaries that form Mobile Core

OEM RolesIntegrates Silicon Vendor provided BSPSelects IHV componentsAdds drivers, services, differentiationConfigures Mobile Operator RequirementsDetermines ISV apps, services, preloadsAdopts Manufacturing tools & process

Page 6: Development Process of Windows Phones and Small Screen

Overall Development Flow

Page 7: Development Process of Windows Phones and Small Screen

Windows vs Windows Mobile : Same Look and feel Architecture (UEFI, boot manager, kernel) Drivers, services, app models Visual Studio, WDK, SDK, KMDF, UMDF,

HID, BT HCI, NDIS Windbg

Page 8: Development Process of Windows Phones and Small Screen

Windows vs Windows Mobile : DifferentSmaller Screens, StorageBattery powered, Connected StandbyPackage based image changes (no msi

installation)No desktop mode, no cmd, no console, no

Device ManagerTouch first (capacitive touch)Customizations, differentiations, OEM added

componentsMobile Operator dependencyVoice-Call stack

Page 9: Development Process of Windows Phones and Small Screen

Windows Mobile 10 Hardware RequirementsFirmware

UEFI 2.3.1Secure boot enabledMemory2GB for 64-bit512MB for 32-bitStorage>= 4GB of flashGraphicsDirectX 9ButtonsRequired – Power, Volume Up/DownStart, back, search required for phones that use WVGA display

3 – 7.99”

Resolution Memory2560x2048 (QSZGA) and higher

>= 4GB

2048 x 1152 (QWXGA) to 2560 x 1600 (WQXGA)

>= 3GB

1440 x 900 (WSXGA) to 1920 x 1200 (WUXGA)This range includes:1920 x 1080 (FHD/1080p)

>= 2GB

960 x 540 (qHD) to 1366 x 768 (WXGA) This range includes: 1280 x 720 (HD/720p)1024 x 600 (WSVGA)

>= 1GB

800 x 480 (WVGA) to 854 x 480 (FWVGA)

>= 512 MB

NewMSM8909MSM8208MSM8994MSM8992MSM8952

UpdateableMSM8x10MSM8x12MSM8916

Component Windows “Mobile”

Required for phones. Data and voice supportedPrimary, Loudspeaker, Earpiece required for phonesHeadphone/headset jack required for phones802.11b/g required for phonesOptional. E.g. Accelerometer, Magnetometer, ALS, Proximity, GyroscopeVibration mechanism requiredOptional. If implemented, Two-Finger touch, must be HID compliantPower, Volume up and Volume down required. Start, Back, Search required for WVGA screen.

Cellular radioAudioConnectorsWirelessSensors NotificationTouchButtons

Please attend session: ”Minimum System HW Requirements and Compatibility for Windows Platforms”“Enabling Hardware Components for Phones and Small Screen Tablets”

Page 10: Development Process of Windows Phones and Small Screen

OEM/ODM Onboarding Easy-to-use Portal: Tools, Kits, Docs,

Agreements Ability to file bugs directly with Microsoft Multiple user management via admin

account No onboarding requirement for Phone

Resellers1

1: Starting Windows 10 with pass-through agreements

Page 11: Development Process of Windows Phones and Small Screen

Install OS KitsSetup development computer

Visual Studio 2015Windows SDK 10Windows Driver Kit 10Windows Assessment and Deployment Kit - Windows 10Windows Mobile 10 OSWindows Mobile 10 debug symbolsHardware Lab Kit

Page 12: Development Process of Windows Phones and Small Screen

OS Image Build Process

Image building is simply combining series of package files to generate a FFU file, “flash.ffu.” There is no code compiling during the process

WICD

SOC pkgs

MS OS pkgs

OEM pkgs

OEMInput.xmlDefines which packages to

include

FFU

sign

Page 13: Development Process of Windows Phones and Small Screen

WICDWindows Imaging and Configuration Designer Single Unified WICD across all Windows

Streamlines imaging tasks Creates model/reference images, deployment solutions, device provisioning packages,

customizations and deployment/provisioning OEMs can create customized images via the WICD wizard UI with predefined templates

  Supports command line

Please attend session: “Windows 10 for phones and small screen tablets Manufacturing End-to-End Overview”

Page 14: Development Process of Windows Phones and Small Screen

OS ImageOEM builds OS image for OEM built hardware

OS Kit {BSP + OS + Customization}.spkg files Mobile OS image, FFU (Full Flash Update)“Flashing” = writing whole OS image as a single eMMC write task

FFU partition GPT, partitionsDPP, MODEM, PBL, SBL, NV, UEFI, TZ, RPM, PLAT, … EFIESP, MMOS, MainOS, Data

Silicon Vendor+ Microsoft define partition layouts per each chipset.

Page 15: Development Process of Windows Phones and Small Screen

Engineering Devices SOC vendor provides Reference Devices OEM Engineering DevicesNot retail locked, can boot with TEST signed FFU, no secure boot enabled, mass storage mode, windbg, JTAG debugging possible

OEM Retail DevicesFinal end user device. PRODUCTION signed FFU only

Page 16: Development Process of Windows Phones and Small Screen

Additional SW Components OEM may need to create or modify Boot,

UEFI & ACPI for bring-up

Develop drivers and native services as necessary

Page 17: Development Process of Windows Phones and Small Screen

Driver DevelopmentWDK is same for Windows 10 Desktop & Mobile

Windows Mobile is different All drivers go in to spkg, built into FFU during image creation time No user initiated driver installation

Please attend session: “Introduction to Driver Development on Windows”

User mode and Kernel modeVirtual Address SpacePool MemoryIRQL (Interrupt Request Level)Servicing InterruptsSynchronizationACPIIRP (IO Request Packet)

I/O Control CodeDevice Node……..

Page 18: Development Process of Windows Phones and Small Screen

DebuggingRemote windbg via USBPC

Debugger ‘windbg’ runs on PC Has symbol files, source codes

Target Phone Device being debugged USB port; kdusb, kdnet

Tshell provides remote cmd line shell

USB

Please attend session“Driver Testing and Debugging”

Page 19: Development Process of Windows Phones and Small Screen

TestHardware Lab Kit (HLK) provides test coverage to assess compatibility with Windows, and offers automation and scale capabilities

Please attend sessions and labs“Testing Drivers with the Hardware Lab Kit (HLK)”“Driver Testing and Debugging”“Lab: Using the Hardware Lab Kit (HLK) for Driver Testing”

Page 20: Development Process of Windows Phones and Small Screen

CustomizeMobile device requires complex customizationsCustomization ItemsBoot ScreenBattery Charging behaviorShutdown ScreenInitial Language SelectionPartner AccountCellular ConfigurationData connectionNITZ, automatic time updateLTE configurationOperator brandingCountry TableButton configuration

Auto Brightness Control patternMap dataActive Phone Cover SettingsDialer CodesEmergency Phone NumbersVisual Voice MailAudio Volume LimitationCellular + SIM SettingsTelecoil and TTY supportsEmail + Accounts settingsKeyboard settingsLock Screen settings

SMS/MMS Messaging settingsPeople/Contact settingsRingtonesWi-Fi settingsUSB settings

Page 21: Development Process of Windows Phones and Small Screen

Windows ICD – Customizations Example Pick from “Available

Customizations” Edit as necessary Customization XML

Generated by saving project as provisioning package

Supports both static and dynamic customizations

Page 22: Development Process of Windows Phones and Small Screen

Application DevelopmentVisual Studio 2015 + App SDK Windows 10 Mobile supports Universal AppsApp Installation options Using Visual Studio, download to developer unlocked phones End user download & installation from Store (No .msi install) OEM preloaded app during FFU image creation time Create .spkg WICD includes it into FFU App installs during OOBE

Please attend session“The Windows 10 Universal Platform: building one app that targets the entire spectrum of Windows devices”

Page 23: Development Process of Windows Phones and Small Screen

OEM ApplicationsManufacturing, OEM, MO specific appsNo more RPAL (Restricted Private Allow List) SDK All APIs are moved to public in Universal App framework App privileges/capabilities will be controlled by Store publication control

mechanism OEM accounts can publish these apps

Current Windows Phone 8.0, 8.1 RPAL apps in store will continue to work in Windows 10 Mobile

Page 24: Development Process of Windows Phones and Small Screen

Windows 10 Manufacturing FlowImage

Creation

SMT

OS flash PCBA testing

Device assembly

Device testing

Service programmin

g

QA sampling

Packing

Page 25: Development Process of Windows Phones and Small Screen

Windows 10 Mobile InvestmentsWindows Image Configuration & Designer

(WICD)FFUtool enhancementsManufacturing Mode of Retail OSMMI improvementsRefurbishment SupportNo OVK requirementPlease attend session“Windows 10 for phones and small screen tablets Manufacturing End-to-End Overview”

Page 26: Development Process of Windows Phones and Small Screen

Image Signing OverviewBuild

Production FFU for

Image and FW

validation

Submit Test Signed

Packages for Retail

SigningUse BSP Ingestion Client

Microsoft Signs

Download Signed

Packages

Use BSP Ingestion Client

Validate on Retail Phone

Mass Productio

n

Use OS Kit

Build Retail FFU

Submit FFU Catalog

For Retail Signing

Mobile Operator Technical

Acceptance

Microsoft Signs

Download Signed

Catalog files

Combine Signed

Catalog with Retail FFU

NOTE: Different from “Windows Driver Signing, Publishing, Distribution and Servicing”

Page 27: Development Process of Windows Phones and Small Screen

Update Process

Build and Retail Sign

Images

Use Ingestion Client

Microsoft Builds Update

Microsoft Publishes to

Preview Server

Validate OTA Updates on

Retail Phones

Work with MOs for

Technical Acceptance

(TA)

Approve specific

Devices+MOs

Microsoft Publishes to Production

Server

End Users receive

OTA updates

Submit Request for

Update

Please attend session “Upgrading to Windows 10”

Page 28: Development Process of Windows Phones and Small Screen

DocumentationOffline Docs Available with Windows KitC:\Program Files (x86)\Windows Kits\10\DocsFile: Windows_10_Partner_Documentation.chm Updated versions distributed through Microsoft Publication site

Online Docs Windows Phone OEM portal Available through MSDN

Page 29: Development Process of Windows Phones and Small Screen

Please Complete an Evaluation. Your input is important!Access Evaluation Forms:

Page 30: Development Process of Windows Phones and Small Screen

© 2015 Microsoft Corporation. All rights reserved.

(c) 2015 Microsoft Corporation.  All rights reserved.  This document is provided "as-is." Information and views expressed in this document, including URL and other Internet Web site references, may change without notice. You bear the risk of using it.  This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes.  Some information relates to pre-released product which may be substantially modified before it’s commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.