PDA

View Full Version : [.NET] Applicazioni .NET più performanti su Vista che su XP?


kernel::panic
17-03-2008, 07:23
Nel testare su Vista un'applicazione aziendale realizzata in C# e WinForms, mi sono reso conto (inaspettatamente!) che su Vista (framework 3.5) l'occupazione di ram è meno di un/quarto (cavolo è tantissimo! :eek: ) di quella usata su XP (framework 2.0). Ho provato anche un semplice "hello world" (console) che ha confermato il "fenomeno". Anche i tempi di startup sono inferiori (ma questo forse è dovuto ad un HW più performante).

Altre applicazioni in C++ invece hanno lo stesso impiego di RAM su XP e Vista.

Avendo pochissima esperienza su Vista mi sono chiesto come questo possa accadere, dato che Vista appena caricato "succhia" il doppio di XP:

1) Il framework 3.5 è stato ottimizzato di brutto (non ho mai provato un 3.5 su XP per fare un paragone)?
2) Vista ha qualche sorta di ottimizzazione per il codice managed?
3) Il TaskManager di Vista non funziona!? :D

Voi che ne pensate?

amedeoviscido
17-03-2008, 07:52
Ciao, ho notato anch'io con la mia applicazione (il solo eseguibile di circa 1,2 MB) che i tempi di caricamento e di risposta in generale sono più veloci. Credo il trucchetto sia la maggiore ottimizzazione, o magari in parte l'integrazione, della tecnologia .NET all'interno del sistema, che ho testato anch'io col framework 3.5. Non ho controllato invece l'occupazione di memoria, ma adesso mi hai incuriosito!

0rph3n
17-03-2008, 08:10
mmm...
è da mezz'ora che sto provando a scrivere sto benedetto messaggio in modo comprensibile ma non riesco a cavare un ragno da un buco :mc:
se ne riparla dopo il caffè delle 11...viva il lunedì mattina!


edit: ok mi sto schiarendo un po' le idee.
non so per quale oscuro motivo avevo il dubbio che non ci fosse la compatibilità all'indietro tra le varie versioni del framework, ma c'ho pensato 2 secondi è ho concluso che fosse assurdo.
dopo un controllatina veloce ho constatato come l'assurdità fosse effettivamente un'assurdità :D

astorcas
17-03-2008, 09:05
mmm...
è da mezz'ora che sto provando a scrivere sto benedetto messaggio in modo comprensibile ma non riesco a cavare un ragno da un buco :mc:
se ne riparla dopo il caffè delle 11...viva il lunedì mattina!


edit: ok mi sto schiarendo un po' le idee.
non so per quale oscuro motivo avevo il dubbio che non ci fosse la compatibilità all'indietro tra le varie versioni del framework, ma c'ho pensato 2 secondi è ho concluso che fosse assurdo.
dopo un controllatina veloce ho constatato come l'assurdità fosse effettivamente un'assurdità :D

Ti rendi conto che questo post è puro delirio? :rotfl:
Cmq è vero anch'io ho notato che su vista le applicazioni hanno un tempo di caricamento un po' più breve e la RAM occupata è parecchio inferiore. Molto probabilmente la Microsoft vuole puntare molto sulla tecnologia .NET e la sta "insinuando" nel suo sistema operativo, magari il prossimo Windows sarà tutto in .NET chissà!

kernel::panic
17-03-2008, 09:18
Cmq è vero anch'io ho notato che su vista le applicazioni hanno un tempo di caricamento un po' più breve e la RAM occupata è parecchio inferiore. Molto probabilmente la Microsoft vuole puntare molto sulla tecnologia .NET e la sta "insinuando" nel suo sistema operativo, magari il prossimo Windows sarà tutto in .NET chissà!

Ho letto che il prossimo Windows (7, codename Vienna) sarà completamente rifatto. Si sa ancora molto poco, di certo però userà un nuovo kernel (che si chiama MinWin o qualcosa del genere) molto più performante (e piccolo come numero di dll) dell'attuale. Tale kernel ha al suo interno un motore per eseguire gli assembly compilati in IL. Il che renderà sicuremente le applicazioni .NET ancora più veloci.

Poi ci sono rumors secondo cui l'interfaccia sarà rifatta completamente in .NET, e i programmi "non managed" gireranno in emulazione (come accade già ora sui Mac per i programmi più vecchi)... ma questa notizia è da prendere con le molle...

astorcas
17-03-2008, 09:21
Ho letto che il prossimo Windows (7, codename Vienna) sarà completamente rifatto. Si sa ancora molto poco, di certo però userà un nuovo kernel (che si chiama MinWin o qualcosa del genere) molto più performante (e piccolo come numero di dll) dell'attuale. Tale kernel ha al suo interno un motore per eseguire gli assembly compilati in IL. Il che renderà sicuremente le applicazioni .NET ancora più veloci.

Poi ci sono rumors secondo cui l'interfaccia sarà rifatta completamente in .NET, e i programmi "non managed" gireranno in emulazione (come accade già ora sui Mac per i programmi più vecchi)... ma questa notizia è da prendere con le molle...

Interessante, ora mi documento un po'!

kernel::panic
17-03-2008, 09:28
Qui ci sono alcune info:

http://en.wikipedia.org/wiki/MinWin#MinWin