Newsgroup: it.comp.os.win.xp
Titolo: Deadlock detection in Windows Vista

Grazie al migliorato kernel, Windows Vista è in grado di gestire
meglio l'accesso alle risorse in particolare vi è una nuova tecnologia
chiamata Deadlock Detection Technology che è in grado di rilevare
condizioni di deadlock di un'applicazione.
Un deadlock fra 2 processi può avvenire quando l'uno richiede una
risorsa bloccata dall'altro e per tale motivo nessuno dei 2 può
continuare (tale condizione nei moderni sistemi operativi è rara, ma
può pur sempre succedere).
Saluti da P4

chiamata Deadlock Detection Technology che č in grado di rilevare
nuova tecnologia?
 i problemi di starvation e di deadlock detection si studiano ai primi anni 
di qualsiasi corso di informatica.

 di qualsiasi corso di informatica.
Confondi il problema teorico con la tecnologia.
La tecnologia e la realizzazione di una soluzione di un problema teorico; il 
problema teorico può anche essere vecchio quanto ti pare ma la realizzazione 
implementativa è ciò che conta.

 di qualsiasi corso di informatica.
ai secondi anni ti spiegano anche che per avere deadlock devono 
verificarsi 4 condizioni contemporaneamente e che siccome si tratta di 
un problema relativamente raro, è uno spreco utilizzare cicli macchina 
per prevenire queste situazioni. Tant'è vero che è la soluzione adottata 
dala maggior parte dei sistemi operativi, Win e Unix-like compresi...
-- 
Emanuele Torrenti
http://torrenti.altervista.org
Per favore non mandatemi allegati in Word o PowerPoint.
Please, don't send me Word or PowerPoint attachments.
Si veda: Look at:
http://www.gnu.org/philosophy/no-word-attachments.html

 dala maggior parte dei sistemi operativi, Win e Unix-like compresi...
FALSO.
In quanto non vengono sprecati cicli macchina cioè non c'è un
processo che sempre sta li a controllare,  ma viene semplicemente
tenuta nota la sequenza di accesso alle risorse per riuscire ad
individuare un deadlock. E' la normale prassi che fa un gestore di
risorse.
Saluti da P4


Non ho detto che il nuovo "Windows Turbo Power Ultra Edition" sprechi 
cicli macchina; eppure mi domando quale istituto dell'informatica si 
occupi di registrare una sequenza di accesso (e trovare cicli nei grafi 
di assegnazione delle risorse)....
Ah, si, un processo!


 wrote:

Però non ho capito come lo risolve?
Lo fa solo presente?
-- 
Ciao Valerio
(Un uomo senza pancia é come un cielo senza stelle)

 Lo fa solo presente?
Il deadlock viene risolto con le tecniche classiche di risoluzione da
deadlock e poi Windows Vista lo segnala nel visualizzatore eventi in
modo che possa per esempio essere utile anche a chi deve debuggare il
software (es. chi scrive driver per dispositivi dove è facile che si
presenti un deadlock, ecc.).
Saluti da P4

P4 ha scritto:

Infatti Windows Vista non solo è in grado di risolvere le situazioni
di blocco e crash, ma soprattutto dispone anche di una nuova tecnologia
che è in grado di prevenire le cause che portano a queste situazioni.
Windows Vista può anche automaticamente far ripartire un servizio di
sistema che è andato in crash, facendo si che l'utente non abbia
alcuna interruzione nel suo lavoro. Windows Vista è anche in grado di
riconosce quando un'applicazione, che per un bug è andata fuori
controllo, comincia a prendersi tutte le risorse di sistema.
Saluti da P4

 controllo, comincia a prendersi tutte le risorse di sistema.
Hanno implementato OOM e ulimits?
-- 
Flavio Visentin
Membro del CICAP
Comitato Italiano per il Controllo delle Affermazioni di P4

 Che non mi sembra un gran cambiamento da W2K che già lo faceva.
FALSO.
Prova a killare qualsiasi servizio di Windows 2000/XP e nessuno ritorna
su spontaneamente. L'unico è explorer.exe (che non è un servizio).
Prova a killare il servizio del tuo firewall o del tuo antivirus e
dimmi se ritornano su automaticamente.
Saluti da P4

 dala maggior parte dei sistemi operativi, Win e Unix-like compresi...
Mi piacerebbe sapere che strategia utilizzeranno... In un dbms di
solito viene sacrificato chi ha lavorato di meno, ma in una S.O.
general purpose come si fa a stabilire cio'?
Non e' che Vista preferira' sacrificare un processo in
fermo su una istruzione di I/O da 20 minuti perche'
attende dati da una periferica esterna e non Word che
ha appena finito di fare il salvataggio automatico? :-)
C:\>Iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

dimmi se ritornano su automaticamente.
Impostando un timeout di 1 minuto (il minimo configurabile) di
riattivazione del servizio nel caso questo non sia più attivo, ecco
che il servizio, anche dopo un Kill, riparte da solo.
-- 
Rossano Orlandini
MCSE MCSA MVP - Windows Server

 che il servizio, anche dopo un Kill, riparte da solo.
Shhhh... non svelargli i segreti, che poi va su it.comp.os.linux.sys a
spifferare che windows ha i servizi riattivabili in automatico

 presenti un deadlock, ecc.).
Ok, in pratica lo dice, ma bisogna risolverlo comunqe a programma,
giusto? Qundi serve in fase di sviluppo e non per l'utente finale?


 giusto? Qundi serve in fase di sviluppo e non per l'utente finale?
ti ho già detto che Windows Vista è in grado di risolvere
autonomamente certe situazioni critiche (blocchi e crash) fra cui anche
i deadlock. E' chiaro che se capita un deadlock non è una cosa bella
(le prestazioni si riducono) e significa che da qualche parte c'è un
bug o l'applicazione che va in deadlock è poco robusta e/o usa male le
risorse, ma Windows Vista è in grado di sbloccare queste situazioni.
Saluti da P4

 ma Windows Vista è in grado di sbloccare queste situazioni.
Anche con Windows XP Reduced Edition hanno risolto quasi definitivamente
il problema: possono girare al massimo 3 applicazioni e le probabilità
che ci si trovi con un deadlock in tale situazione è veramente
infinitesimale.
LOL


 debugging delle applicazioni, non nell'esecuzione.
Ignori che è il sistema operativo a far mandare in crash
un'applicazione nel senso che quando un'applicazione esegue qualcosa di
illecito (accesso illegale in memoria, ecc) allora è il kernel di
Windows ad accorgersene e a impedire che vengano effettuati dei danni
all'intero sistema operativo e quindi il kernel come si dice fa andare
in crash l'applicazione. Il kernel di Windows Vista è più evoluto e
prima di far mandare in crash un'applicazione, prova ad analizzare la
situazione e a vedere se c'è qualcosa di recuperabile evitando quindi
il crash
Saluti da P4

 il crash
Cosa cavolo può essere recuperato da un crash? Il crash è conseguenza di
un operazione illegale, e l'operazione è illegale tanto in Windows Vista
quanto in WXP o in Linux. Se è illegale non è recuperabile.
Le uniche situazioni recuperabili sono quelle di taluni blocchi
applicativi per l'errata gestione delle risorse, non di sicuro i crash.
Tranquillo che anche con Vista leggerai il chiarificatore messaggio "La
memoria non poteva essere read".


 quanto in WXP o in Linux. Se è illegale non è recuperabile.
Ti ho già detto che Vista è in grado di recuperare anche certi crash
e c'è anche scritto sul sito Microsoft se non credi che sia possibile:
http://www.microsoft.com/windowsvista/it-professionals.mspx
Windows Vista includes fixes for known hangs and crashes, and new
technology that will prevent many common causes of hangs and crashes
Saluti da P4

 Saluti da P4
esempio che si può vedere in Windows XP SP2 è il DEP data execution
prevention che è in grado di controllare l'esecuzione di
un'applicazione nel senso che evita che un'applicazione va ad eseguire
codice posto in aree dati. Analoghe tecniche possono essere usate anche
per rilevare e recuperare situazioni che porterebbero sicuramente ad un
crash, il kernel di windows blocca queste situazioni e evita il crash,
invece che lasciarle passare.
Saluti da P4

 technology that will prevent many common causes of hangs and crashes
Se il verbo usato da MS è "will prevent" un motivo ci sarà, non trovi?
Che sia per caso perché certi problemi è possibile prevenirli ma non
curarli?


 invece che lasciarle passare.
Aridaje. Si possono prevenire situazioni di crash, ma non si possono
correggere una volta che queste si verificano.


 correggere una volta che queste si verificano.
Mai sentito parlare di applicazioni mission critical? mai sentito
parlare di sistemi transazionali? 
Saluti da P4

 ma Windows Vista è in grado di sbloccare queste situazioni.
E non ho ancora capito come?


 parlare di sistemi transazionali? 
Sì. Tu invece?


 parlare di sistemi transazionali? 
Per quello che riguarda i "sistemi transazionali" non servono ad
evitare i crash, ma ad evitare incongruenza dei dati... Anche dopo
un crash.
C:\>iao Angelo
