💡 Guia de referência para sysadmins Windows. Este artigo agrega todos os procedimentos de diagnóstico de desempenho para VMs Windows, organizados por componente. Cada secção aprofundada tem o seu artigo dedicado com comandos detalhados, contadores PerfMon e checklists prontas a usar.
Quando uma VM Windows apresenta lentidão — seja na resposta de aplicações, em operações de disco, na rede ou no arranque do sistema — é essencial seguir uma metodologia estruturada. O diagnóstico improvisado leva a conclusões erradas e a tempo perdido. Este guia organiza todas as ferramentas nativas do Windows para diagnóstico sistemático, da camada mais visível até ao kernel.
🎯 Por onde começar — os 3 primeiros comandos
Antes de abrir qualquer artigo específico, executar sempre estes comandos de baseline no PowerShell como Administrador:
# Estado geral da VM
systeminfo
# Top 15 processos por CPU
Get-Process | Sort-Object CPU -Descending | Select-Object -First 15 Name, CPU, WorkingSet
# Snapshot de CPU, memória e disco
Get-Counter '\Processor(_Total)\% Processor Time','\Memory\Available MBytes','\PhysicalDisk(_Total)\Avg. Disk Queue Length' -SampleInterval 2 -MaxSamples 5
📋 Artigos de diagnóstico por componente
Diagnóstico de CPU e Carga do Sistema
Task Manager, Resource Monitor, PerfMon com contadores detalhados, análise por processo e CPU steal em ambientes virtualizados.
Diagnóstico de Memória RAM
Análise de paging, pagefile, contadores PerfMon de memória, Windows Memory Diagnostic e identificação de leaks.
Diagnóstico de Disco — I/O e Latência
PerfMon com Avg. Disk Queue Length, CHKDSK, SMART, Process Monitor para I/O por processo e WinSAT benchmark.
Diagnóstico de Rede e Conectividade
Adaptadores, ping, tracert, pathping, diagnóstico DNS, conexões TCP ativas e teste de velocidade para partilhas de rede.
Diagnóstico de Aplicações e Serviços
Process Explorer, Process Monitor com filtros, análise de handles e locks, serviços Windows e diagnóstico IIS.
Diagnóstico do Sistema Operativo e Eventos
Event Viewer, Event IDs críticos, análise de BSOD com WinDbg, SFC, DISM e Reliability Monitor.
Ferramentas Avançadas e Automatização
WPR/WPA (ETW), script PowerShell de diagnóstico automático, tabela Sysinternals e referência rápida de contadores.
📊 Limiares de referência rápida
| Contador | ✅ Normal | ⚠️ Atenção | 🔴 Crítico |
|---|---|---|---|
| CPU % Processor Time | < 70% | 70% – 90% | > 90% sustentado |
| CPU Processor Queue Length | 0 – 2 por core | 2 – 4 por core | > 4 por core |
| CPU % Interrupt Time | < 5% | 5% – 15% | > 15% |
| Memória Available MBytes (4GB) | > 500 MB | 200 – 500 MB | < 200 MB |
| Memória Pages/sec | < 5 | 5 – 20 | > 20 sustentado |
| Disco Avg. Disk sec/Read | < 10ms | 10ms – 25ms | > 25ms |
| Disco Avg. Disk Queue Length | < 1 | 1 – 2 | > 2 |
| Disco % Free Space | > 20% | 10% – 20% | < 10% |
| TCP Segments Retransmitted/sec | 0 | < 5 | > 5 |
✅ Checklist de diagnóstico em 5 minutos
Fase 1 — Recolha inicial (sempre executar primeiro)
- Confirmar sintomas com utilizador/equipa — quando, como, com que frequência
- Verificar alterações recentes: patches, instalações, mudanças de configuração
- Executar
systeminfoe abrir Task Manager → Performance - Verificar uptime:
(Get-Date) - (gcim Win32_OperatingSystem).LastBootUpTime - Identificar se apenas esta VM é afetada ou múltiplas VMs no mesmo host
🔧 Ferramentas Sysinternals essenciais
As ferramentas Sysinternals da Microsoft complementam as ferramentas nativas do Windows para diagnóstico avançado:
- Process Explorer — substituto avançado do Task Manager, com árvore de processos e CPU/RAM por processo
- Process Monitor — rastreio de filesystem, registo e rede por processo em tempo real
- TCPView — conexões TCP/UDP em tempo real por processo
- Autoruns — tudo o que inicia com o Windows, para identificar processos desnecessários ou malware
- RAMMap — análise detalhada do uso de memória física por categoria
Artigos relacionados: Diagnóstico de Desempenho em VMs Linux · Diagnóstico de Rede Windows
