Perché Powershell impiega così tanto tempo per l'inizializzazione?


20

Quando accendo PowerShell ci vogliono ~ 10-15 secondi per iniziare e darmi un prompt. Qualcuno sa cosa sta facendo la prima volta che lo accendi che potrebbe contribuire a questo? Questo è XP Pro, 2 GB di memoria, solo Outlook e Firefox in esecuzione in modo interattivo, abbastanza semplice.

Risposte:


15

Il team di Powershell ha una correzione per questo sul suo blog .

Contenuto dello script dal sito menzionato Update-gac.ps1

Set-Alias ngen (Join-Path ([System.Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory()) ngen.exe)
[AppDomain]::CurrentDomain.GetAssemblies() |
    sort {Split-path $_.location -leaf} |
    %{
        $Name = (Split-Path $_.location -leaf)
        if ([System.Runtime.InteropServices.RuntimeEnvironment]::FromGlobalAccessCache($_))
        {
            Write-Host "Already GACed: $Name"
        }else
        {
            Write-Host -ForegroundColor Yellow "NGENing      : $Name"
            ngen $_.location | %{"`t$_"}
         }
      }

1
Ho eseguito lo script Update-Gac.ps1 che non ha fatto nulla, ma ho notato che menzionano sul post che è un bug v1 ed è stato corretto in v2. Ho installato v2 CPT3 che si accende in 1-2 secondi. Funziona per me, grazie!
— squillman,

1

Hai una connessione Internet instabile / mancante?

Potrebbe dipendere dalla sicurezza di Windows che prova a contattare l'autorità di certificazione per ottenere l'elenco di revoca del certificato. Se non è presente alcuna connessione Internet, dovrai attendere il timeout.

Modificare:

È possibile provare a eseguire il debug di questo utilizzando Esplora processi di Sysinternal (/ Microsoft). Forse puoi vedere a quali risorse accede il processo.


No. Ho comunque controllato le liste di revoca ...
— Squillman,

0

Quanto tempo occorre per avviare immediatamente un'altra istanza?

Se molto più veloce, allora stai vedendo il tempo necessario per caricare .NET, PSH e Snapins. In caso contrario, è probabile che sia correlato al profilo (profilo PSH o qualcosa come contattare AD 1 ).

1 L' ho visto con il provider AD di PSCX quando si lavora in remoto.


Buoni pensieri! Ma stesso tempo ...
— squillman,

Abbiamo disattivato la creazione automatica di un'unità AD ora in Pscx 1.2 (ora in beta pubblica! Pscx.codeplex.com )
— x0n
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.