[Archivio newsletter ^] [< Volume 6, Numero 1] [Volume 7, Numero 1 >]
Newsletter Systems Internals Volume 6, Numero 2
http://www.sysinternals.com
Copyright (C) 2004 Mark Russinovich
30 luglio 2004 - In questo numero:
EDITORIALE
- Articolo guest di Dave Solomon sull'esplorazione dei dettagli dei thread con Process Explorer
NOVITÀ DI SYSINTERNALS
- Aggiornamenti degli strumenti
- Sysinternals è un sito della community di Microsoft Windows XP
ALLA RICERCA DI STORIE DI SUCCESSO DI SYSINTERNALS
- Inviateci le tue storie di successo e vincerete una T-shirt Sysinternals!
ARTICOLI DELLE RIVISTE
- PsExec
- La bufala dell'ottimizzazione della memoria
CLASSE DI RISOLUZIONE DEI PROBLEMI AVANZATA E INTERNI DI WINDOWS PRATICI
- San Francisco - 27 settembre-1° ottobre
PROGRAMMA DEGLI INTERVENTI DI MARK
- TechMentor
- Windows Connections
- Microsoft IT Forum
La newsletter Sysinternals è sponsorizzata da Winternals Software, presente sul Web all'indirizzo http://www.winternals.com. Winternals fornisce funzionalità di ripristino intelligente per Microsoft Enterprise.
Il Service Pack 2 di Windows XP, che verrà rilasciato a breve, offrirà numerosi vantaggi, ma potrebbe determinare comportamenti indesiderati o imprevisti all'interno del sistema operativo e delle applicazioni. Winternals Recovery Manager consente di eseguire in modo sicuro e rapido il rollback dei sistemi interessati da patch e Service Pack, anche se i sistemi non risultano più avviabili. Per altre informazioni su Recovery Manager e per richiedere un CD di valutazione, visitate: http://www.winternals.com/es/solutions/recoverymanager.asp
EDITORIALE
Dave Solomon e io siamo ancora molto impegnati a preparare la prossima edizione di "Inside Windows 2000" (che avrà per titolo "Windows Internals", 4a edizione) e ci aspettiamo di completare il manoscritto nelle prossime settimane. Il libro, che tratta Windows 2000, Windows XP e Windows Server 2003, ha circa il 20% di contenuti in più rispetto alla terza edizione. Troverete il libro ancora più prezioso dell'edizione precedente perché, oltre a espandere il materiale esistente e aggiungere nuovo testo per presentare le modifiche di XP e 2003, abbiamo aggiunto materiale per la risoluzione dei problemi con argomenti come l'analisi dei dump di arresto anomalo del sistema, l'avvio del sistema, la memoria, la CPU, file system e il Registro di sistema.
Poiché sono molto concentrato sul libro, questa newsletter è breve, ma continuerò con le newsletter regolari non appena il libro sarà completato. Nel frattempo, includo un articolo guest di Dave Solomon sull'uso più avanzato di Process Explorer rispetto a quello che ho trattato nell'ultima newsletter.
Vi auguro buona lettura e vi prego di passare la newsletter alle persone che pensate possano essere interessate.
- Mark Russinovich
Analisi dell'attività dei thread con Process Explorer
Di Dave Solomon (daves@..., http://www.solsem.com)
Process Explorer consente di accedere facilmente all'attività dei thread all'interno di un processo. Questo aspetto è particolarmente importante se si sta tentando di determinare il motivo per cui è in esecuzione un processo che ospita più servizi (ad esempio Svchost.exe, Dllhost.exe, Inetinfo.exe o il processo di sistema) o per cui un processo è bloccato.
Per visualizzare i thread di un processo, selezionare un processo e aprire le relative proprietà (facendo doppio clic sul processo o facendo clic sulla voce di menu Process->Properties) e quindi fare clic sulla scheda Threads. Viene così visualizzato un elenco dei thread del processo, la percentuale di CPU utilizzata (in base all'intervallo di aggiornamento configurato), il numero di cambi di contesto per il thread e l'indirizzo iniziale del thread. È possibile ordinare i dati in base a una di queste tre colonne. Quando si seleziona ogni thread nell'elenco, Process Explorer visualizza l'ID del thread, l'ora di inizio, lo stato, i contatori del tempo della CPU, il numero di cambi di contesto e la priorità di base e corrente. È disponibile anche un pulsante Kill che terminerà un singolo thread, ma questo deve essere usato con estrema attenzione.
I nuovi thread creati sono evidenziati in verde e i thread che terminano sono evidenziati in rosso (la durata dell'evidenziazione può essere configurata con la voce di menu Options->Configure Highlighting). Questa opzione può essere utile per individuare la creazione di thread non necessari in un processo. In generale, infatti, i thread devono essere creati all'avvio del processo e non ogni volta che viene elaborata una richiesta all'interno di un processo.
Il delta dei cambi di contesto rappresenta il numero di volte in cui è iniziata l'esecuzione del thread tra gli aggiornamenti configurati per Process Explorer ed è un modo diverso per determinare l'attività del thread rispetto alla percentuale di CPU utilizzata, poiché molti thread vengono eseguiti per un periodo di tempo talmente breve che corrispondono raramente (se non mai) al thread attualmente in esecuzione quando si verifica l'interruzione del timer del clock dell'intervallo e quindi non vengono addebitati per il loro tempo di CPU.
L'indirizzo iniziale del thread viene visualizzato nel formato "modulo!funzione", dove modulo è il nome del file EXE o DLL. Il nome della funzione si basa sull'accesso ai file di simboli per il modulo, che si ottiene se si configura Process Explorer per l'uso del server dei simboli Microsoft (vedere la Guida inclusa con Microsoft Debugging Tools for Windows, che è possibile scaricare dal sito Web di Microsoft all'indirizzo http://www.microsoft.com/whdc/devtools/debugging/default.mspx). Se non si è certi di quale modulo si tratta, premere il pulsante del modulo. In questo modo viene visualizzata una finestra delle proprietà del file di Explorer per il modulo contenente l'indirizzo iniziale del thread, ad esempio EXE o DLL. Per i thread creati dalla funzione Windows CreateThread
, Process Explorer visualizza la funzione passata a CreateThread
, non la funzione di avvio del thread effettiva. Ciò avviene perché tutti i thread di Windows iniziano in corrispondenza di un processo comune o di una funzione wrapper di avvio del thread (BaseProcessStart
o BaseThreadStart
in Kernel32.dll). Se Process Explorer mostrasse l'indirizzo iniziale effettivo, la maggior parte dei thread nei processi risulterebbe avviata allo stesso indirizzo, il che non sarebbe utile per tentare di individuare il codice che stava eseguendo il thread.
Tuttavia, l'indirizzo iniziale del thread visualizzato potrebbe non essere sufficiente per individuare quali operazioni vengono eseguite dal thread e quale componente all'interno del processo è responsabile della CPU utilizzata dal thread. Ciò vale soprattutto se l'indirizzo iniziale del thread è una funzione di avvio generica, ad esempio se il nome della funzione non indica l'operazione effettivamente eseguita dal thread. In questo caso, l'analisi dello stack del thread può dare una risposta alla domanda. Per visualizzare lo stack per un thread, fare doppio clic sul thread che ci interessa (oppure selezionarlo e premere il pulsante Stack). Process Explorer visualizza lo stack del thread (in modalità sia utente che kernel, se il thread era in modalità kernel). Mentre i debugger in modalità utente (Windbg, Ntsd e Cdb) consentono di collegarsi a un processo e visualizzare lo stack utente per un thread, Process Explorer mostra sia lo stack utente che lo stack kernel tramite un semplice clic su un pulsante. È anche possibile esaminare gli stack utente e kernel dei thread usando Livekd da Sysinternals, ma questo strumento è più difficile da usare. Si noti che l'esecuzione di Windbg in modalità di debug del kernel locale, supportata solo in Windows XP o Windows Server 2003, non mostra gli stack dei thread.
[Nota personale di Mark: questo mi ha aiutato a comprendere il motivo per cui PowerPoint si bloccava per un minuto ogni volta che lo avviavo. Ho usato Process Explorer per esaminare lo stack di un singolo thread nel processo di PowerPoint. Rimaneva in attesa di una chiamata per connettersi a una stampante di rete. Ho così scoperto di avere una connessione a una stampante di rete che non rispondeva e, dato che le applicazioni Microsoft Office si connettono a tutte le stampanti configurate all'avvio del processo, PowerPoint rimaneva bloccato fino al timeout del tentativo di connessione alla stampante. Una volta eliminata la connessione alla stampante, il problema è scomparso.]
NOVITÀ DI SYSINTERNALS
AGGIORNAMENTI DEGLI STRUMENTI
Dall'ultima newsletter di aprile sono stati aggiornati alcuni strumenti. Ecco un riepilogo dei miglioramenti:
Esplora processi
Process Explorer viene usato in sostituzione di Gestione attività (potete anche sostituire Gestione attività completamente con una selezione nel menu Options di Process Explorer).
- La scheda TCP/IP nelle proprietà del processo mostra le connessioni TCP e UDP. Le modifiche sono evidenziate a colori, in modo da semplificare la visualizzazione di connessioni nuove e chiuse
- Versione a 64 bit per i sistemi AMD64
- Supporto per l'impostazione delle maschere di affinità di processo nei sistemi SMT (hyperthreading) e SMP
- Miglioramenti delle prestazioni degli aggiornamenti della visualizzazione
http://www.sysinternals.com/ntw2k/freeware/procexp.shtml
DebugView
DebugView è un'utilità per sviluppatori che consente di acquisire l'output di debug in modalità utente e kernel senza un debugger in locale o in rete.
- Buffer in modalità utente e kernel più grandi
- Altri filtri di evidenziazione
- Wrapping dei file di log
- Supporto per l'output di debug del kernel Windows XP SP2
- Cancella l'output quando viene visualizzata una stringa di debug speciale per la cancellazione dell'output
http://www.sysinternals.com/ntw2k/freeware/debugview.shtml
Pendmoves
Pendmoves è una nuova utilità di Sysinternals che mostra i comandi di spostamento ed eliminazione dei file di cui è stata pianificata l'esecuzione all'avvio successivo del sistema.
http://www.sysinternals.com/ntw2k/source/misc.shtml#pendmoves
Adrestore
Adrestore è un'utilità della riga di comando che sfrutta la funzionalità di rimozione definitiva di Windows Server 2003 Active Directory (AD) per fornire una funzionalità limitata di annullamento delle eliminazioni per gli oggetti di Active Directory.
http://www.sysinternals.com/ntw2k/source/misc.shtml#adrestore
Screen saver BlueScreen
Questo screen saver, che simula la schermata blu di errore, ora supporta sistemi a più monitor e Windows Server 2003.
http://www.sysinternals.com/ntw2k/freeware/bluescreensaver.shtml
LogonSessions
Questa nuova utilità della riga di comando mostra l'elenco delle sessioni di accesso in un sistema, tra cui rete, interattivo e batch e mostra anche i processi in esecuzione in ogni sessione.
http://www.sysinternals.com/ntw2k/source/misc.shtml#logonsessions
Pstools
La suite Pstools è costituita da 11 strumenti amministrativi da riga di comando che funzionano in locale e in remoto. Molti di essi sono stati aggiornati negli ultimi mesi in modo da includere il supporto per più sistemi di computer che è possibile specificare sulla riga di comando o in un file di testo.
http://www.sysinternals.com/ntw2k/freeware/pstools.shtml
Autoruns
Autoruns mostra l'elenco più completo dei percorsi del Registro di sistema e del file system di Windows che le applicazioni possono usare per configurarsi per l'avvio automatico durante il processo di avvio.
- I percorsi del file system e del Registro di sistema si estendono ora su più colonne per facilitare la lettura
- È disponibile un'opzione per visualizzare solo le voci non Microsoft, semplificando la visualizzazione del software non MS configurato per l'avvio quando si esegue l'accesso
- È ora possibile disabilitare una voce senza eliminarla dal Registro di sistema (Autoruns è quindi un superset di Msconfig)
- È disponibile un'opzione per visualizzare i servizi di cui è configurata l'esecuzione all'avvio del sistema
http://www.sysinternals.com/ntw2k/freeware/autoruns.shtml
Oltre agli aggiornamenti degli strumenti, è disponibile un aggiornamento di un articolo tecnico:
Riferimento alle opzioni di boot.ini
Questo riferimento include ora le opzioni di boot.ini aggiunte in Windows XP e Windows Server 2003.
http://www.sysinternals.com/ntw2k/info/bootini.shtml
SYSINTERNALS È UN SITO DELLA COMMUNITY DI MICROSOFT WINDOWS XP
Sysinternals è un sito della community di Windows XP Embedded su Microsoft.com da diversi anni e ora sono orgoglioso di annunciare che Microsoft lo ha introdotto come sito della community anche nella pagina Windows XP Expert Zone:
http://www.microsoft.com/windowsxp/expertzone/default.mspx
ALLA RICERCA DI STORIE DI SUCCESSO DI SYSINTERNALS
Durante i miei seminari e le mie presentazioni alle conferenze, il pubblico ama ascoltare storie di successo del mondo reale. Pertanto, se avete un caso di risoluzione dei problemi con gli strumenti di Sysinternals, mi piacerebbe sentirne parlare. Se mi inviate una storia all'indirizzo mark@... potrete partecipare a un'estrazione mensile per vincere una maglietta di Sysinternals in edizione limitata e fuori catalogo. Vi prego di essere il più dettagliati possibile su come avete usato lo strumento di Sysinternals per risolvere il problema e, se possibile, inviate screenshot e/o file di log (Filemon e Regmon possono entrambi salvare il loro output in un file di testo).
ARTICOLI DELLE RIVISTE
Psexec
Questo articolo scritto per il numero di luglio è attualmente disponibile solo per gli abbonati a Windows and .NET Magazine. Illustra l'utilizzo avanzato di Psexec e descrive il funzionamento e l'interazione con la sicurezza di Windows.
http://www.winnetmag.com/Windows/Issues/IssueID/714/Index.html
La bufala dell'ottimizzazione della memoria
In questo numero di Windows e .NET Magazine, disponibile per i non abbonati, l'articolo I descrive il comportamento ingannevole dei cosiddetti "ottimizzatori di RAM".
http://www.winnetmag.com/Windows/Article/ArticleID/41095/41095.html
CORSO PRATICO "WINDOWS INTERNALS AND ADVANCED TROUBLESHOOTING"
27 settembre-1° ottobre 2004 - San Francisco
Per la prima volta aperta al pubblico, David Solomon e io presentano la versione pratica di 5 giorni della nostra windows 2000/XP/2003 interno & advanced troubleshooting class a San Francisco, 27-ottobre 2004. I partecipanti dovranno portare con sé un portatile (i dettagli di configurazione verranno forniti in anticipo) e non è richiesto l'acquisto di software aggiuntivo.
È lo stesso corso che teniamo ai dipendenti Microsoft in tutto il mondo. Vengono trattati gli interni dei processi e dei thread, la pianificazione dei thread, la gestione della memoria, la sicurezza, il Registro di sistema e il sistema di I/O. Esaminare meccanismi come thread di sistema, invio delle chiamate di sistema, gestione degli interrupt e avvio e arresto. Apprenderete infine tecniche avanzate di risoluzione dei problemi tramite gli strumenti di Sysinternals e imparerete a eseguire l'analisi dei dump di arresto anomalo.
Perché partecipare a questo corso? I professionisti IT che distribuiscono e supportano server e workstation Windows devono essere in grado di scavare sotto la superficie quando si verificano problemi. La conoscenza dei meccanismi interni del sistema operativo Windows e la capacità di usare strumenti avanzati per la risoluzione dei problemi vi aiuteranno ad affrontare questi problemi e a comprendere meglio le prestazioni del sistema. La conoscenza dei meccanismi interni può aiutare i programmatori a sfruttare meglio la piattaforma Windows, oltre a fornire tecniche di debug avanzate. Inoltre, poiché il corso è stato sviluppato con accesso completo al codice sorgente del kernel di Windows e ai suoi sviluppatori, avrete la certezza di conoscere i fatti reali.
Per informazioni dettagliate e registrazione, visitate
http://www.sysinternals.com/troubleshoot.shtml
PROGRAMMA DEGLI INTERVENTI DI MARK
Dopo aver parlato in occasione di Microsoft TechEd US e TechEd Europe nei mesi di maggio e giugno, mi sto godendo l'estate a casa in Texas. Ecco i miei prossimi tre impegni in occasione di conferenze:
TECHMENTOR
27settembre-1° ottobre 2004 San Jose, CA
In questa conferenza condurrò quattro sessioni, tutte il 29 settembre, tra cui "Windows e Linux: A Tale of Two Kernels" come presentazione di apertura. Le altre sessioni presentate sono "Windows Hang and Crash Dump Analysis", "Windows XP and Windows Server 2003 Kernel Changes" e "Troubleshooting Windows Boot and Startup".
Potete leggere i miei abstract e trovare un collegamento alla pagina di registrazione alla conferenza all'indirizzo
http://www.sysinternals.com/ntw2k/info/talk.shtml
WINDOWS CONNECTIONS
24-27 ottobre 2004 Orlando, FL
In questa conferenza terrò un discorso sulla risoluzione dei problemi relativi all'avvio di Windows, come sessione generale, e offrirò anche una presentazione sulla risoluzione dei problemi di Windows con gli strumenti Sysinternals, entrambi il giorno 24. Sono inoltre orgoglioso di annunciare che Microsoft Network (MSN) mi ha invitato a presentare una sessione di un giorno intero sulla risoluzione dei problemi di Windows in occasione della conferenza annuale MSN Engineering Excellence che si terrà la stessa settimana a Seattle.
Leggete i miei abstract e visitate il sito della conferenza da
http://www.sysinternals.com/ntw2k/info/talk.shtml
MICROSOFT IT FORUM
Copenhagen, Danimarca
Terrò insieme a Dave Solomon una sessione di esercitazione preliminare alla conferenza, della durata di un giorno, sui meccanismi interni della sicurezza di base di Windows, e condurrò da solo alcune sessioni di breakout ancora da determinare. Potete trovare l'abstract dell'esercitazione preliminare alla conferenza e le informazioni di registrazione qui: http://www.microsoft.com/europe/msitforum/
Grazie per aver letto la newsletter di Sysinternals.
Pubblicata da ottoh venerdì 30 luglio 2004 alle 16.39
[Archivio newsletter ^] [< Volume 6, Numero 1] [Volume 7, Numero 1 >]