Windows Embedded

Selecionando dispositivos para otimização do footprint

Por: Antonio Carlos Gutierrez
Compusoftware

Fonte: https://msdn.microsoft.com/library/default.asp?url=/library/en-us/xpehelp/html/xeconselectingdevicestooptimizefootprint.asp

Aplica-se a:
    Microsoft® Windows® XP Embedded

Resumo: Este artigo contém considerações sobre redução do footprint [1] no

Windows XP Embedded.

Conteúdo

Introdução
O footprint de uma imagem
Componentes de Hardware requeridos  
Componentes de Audio  
Componentes QoS  
Componentes Terminal Services
Componentes USB  
Componentes de gerenciamento de Volume e Logical Disk
Componentes Wan Miniports e RAS  
Componentes Legacy Device
Conclusão  

Introdução

Este documento tem como objetivo principal auxiliar na redução do tamanho do footprint de uma imagem de sistema operacional no Windows XP Embedded.

Se você ainda não gerou sua primeira imagem de sistema operacional em Windows XP Embedded , consulte o documento “Gerando uma Imagem de Windows XP Embedded”. A ferramenta de desenvolvimento de avaliação do Windows XP Embedded pode ser baixada gratuitamente em: Windows XP Embedded with Service Pack 1 Evaluation Edition .

O footprint de uma imagem

No Windows XP Embedded, a quantidade de dispositivos que você inclui na imagem do projeto influenciam o tamanho do footprint. Se o objetivo é ter o menor footprin t possível, comece seu projeto incluindo em sua configuração somente os dispositivos básicos necessários para inicializar sua imagem run-time2 3 [2] .

O Target Analyzer é uma ferramenta que acompanha os CDs de instalação do Windows XP Embedded e é utilizada para coletar/catalogar os componentes de hardware encontrados no seu dispositivo. Este inventário detectado do hardware que é elaborado pelo Target Analyzer contém todos os itens do seu hardware e isto pode representar mais itens do que realmente se faz necessário para o boot de sua imagem run-time em seu projeto .

Utilizando o Target Designer, você pode desabilitar ou mesmo excluir (“delete”) componentes. O recurso de desabilitar componentes é útil pois os componentes desabilitados permanecem visíveis, em texto cinza, lembrando a você que o componente pode ser habilitado posteriormente.

Desta forma, delete todos os itens desnecessários para o boot da imagem do seu projeto.   

Após verificar o boot correto da sua imagem, você pode habilitar os dispositivos um a um e poderá observar o impacto de cada um deles no seu footprint.

Vale então reforçar que mesmo se um dispositivo físico estiver presente no hardware você não precisa incluir os drives deles em seu projeto,somente é claro, se o seu projeto utilizar-se de tais recursos.

A Gravura 2 contém ilustrações com exemplos de componentes desabilitados.

Cc518045.Embedded01(pt-br,MSDN.10).jpg

Gravura 2

Componentes de Hardware requeridos  

Os seguintes componentes são requeridos para quase todos os dispositivos:

  •   System timer

  •    Direct memory access controller

  •   System CMOS/real time clock

  •   System board

  •   Numeric data microprocessor

  •    Programmable interrupt controller

  •    Any microprocessor-specific components

  •    Microcode Update Device   

Somente remova-os se estiver absolutamente certo de que sua presença é desnecessária

Componentes de Audio  

Caso o áudio seja dispensável no seu projeto , os seguintes componentes podem ser retirados:

  •   Audio Codecs

  •    Legacy Audio Drivers

  •    Media Control Devices

  •   Microsoft Kernel Audio Splitter

  •    Microsoft Kernel Acoustic Echo Canceller

  • Microsoft Kernel DLS Synthesizer

  •   Microsoft Kernel DRM Audio Descrambler

  •    Microsoft Kernel GS Wavetable Synthesizer

  •   Microsoft Kernel System Audio Device

  •    Microsoft Kernel Wave Audio Mixer

  •    Microsoft Streaming Service Proxy

  •    Microsoft Streaming Clock Proxy

  •    Microsoft WINMM WDM Audio Compatibility Driver

  •   Audio card (device-specific)

  •    Game port audio card (device-specific)   

Componentes QoS  

Se os componentes de “Qualidade de Serviço” (QoS) não são necessários no seu projeto , os seguintes componentes podem ser deletados ou desabilitados:

  •    Microsoft Streaming Quality Manager Proxy

  • Packet Scheduler Miniport   

Componentes Terminal Services

Se serviços de terminal e desktop remoto não são necessários ao seu sistema , podem ser deletados ou desabilitados os seguintes componentes:

  •   Terminal Server Device Redirector

  •   Terminal Server Keyboard Driver

  •    Terminal Server Mouse Driver

Componentes USB  

Se os serviços USB não são necessários no seu sistema , podem ser deletados ou desabilitados os seguintes sistemas:

  •    Generic USB Hub

  •   HID Keyboard Device

  •    HID-compliant consumer control device

  •    USB Composite Device

  •    USB Human Interface Device

  •    USB Root Hub

  •    USB Open Host Controller (chipset-specific in most cases)

  •    USB Universal Host Controller (chipset-specific in most cases)   

Componentes de gerenciamento de Volume e Logical Disk

Se o gerenciamento de Volume e Logical Disk não faz parte do seu projeto , você pode deletar ou desabilitar os seguintes componentes:

  •   Logical Disk Manager

  •    Volume Manager

Componentes Wan Miniports e RAS  

Se os componentes acima são desnecessários no seu projeto , você pode excluir os seguintes componentes:

  •    RAS Async Adapter

  •    WAN Miniport (L2TP)

  •    WAN Miniport (IP)

  •    WAN Miniport (PPPOE)

  •    WAN Miniport (PPTP)   

Componentes Legacy Device

Os componentes abaixo podem ser removidos caso sejam desnecessários:  

  •    Communications Port

  •    Printer Port

  •    ECP Printer Port

  •    Direct Parallel

  •    Printer Port Logical Interface

  •    Standard 101/102-Key or Microsoft Natural PS/2 Keyboard

  •    Microsoft PS/2 Mouse

  •    Floppy disk drive

  •    Standard floppy disk controller

  •    PCI to ISA Bridge (chipset-specific in most cases)

  •    ISAPNP Read Data Port

Conclusão  

Infelizmente não existe uma receita de bolo sobre qual o tamanho ideal do footprint de um projeto. Um footprint de tamanho reduzido e a capacidade de saber exatamente quais são os componentes mínimos necessários  em um projeto são habilidades que o desenvolvedor adquirirá com o tempo/experiência em projetos.

4 [1] Footprint – Termo referente ao tamanho em MB de uma imagem de sistema operacional embedded.
5 [2] Imagem run-time – Termo utilizado para definir a imagem do sistema operacional gerado a partir das ferramentas de configuração.

Faça o download deste documento:

Selecionando dispositivos para otimização do footprint  

downl.gif formato Word, 77 Kb