Software Windows per salvare lo stato dell'applicazione arbitraria


14

Il software VM fa un ottimo lavoro nel salvare lo stato quando lo "spegni", consentendo il ritorno immediato e immediato a quello stato precedente.

Esiste un'applicazione per Windows che mi consente di fare la stessa cosa, per qualsiasi software arbitrario? Mi permetterebbe di salvare / ripristinare lo stato, possibilmente tramite un comando o pulsante shell che si aggiunge a ogni finestra.

Modifica: per chiarezza, esistono due tipi di app: quelle che salvano i propri stati e quelle che salvano gli altri. Quelli che salvano il proprio stato sono come Chrome, che al caricamento ricarica le finestre che hai aperto l'ultima volta.

Non è quello che sto chiedendo; Sto chiedendo un'app in grado di salvare lo stato di altre app, un po 'come fa il software VM; ma per qualsiasi app. (Un banale test sarebbe caricare notepad ++, digitare un mucchio di cose e save-state; su reset-state, dovresti essere in grado di annullare a più livelli molto di ciò che hai scritto, come se non chiudessi mai l'applicazione. )



+1 domanda interessante. Dato che le altre domande simili non hanno ricevuto risposte valide (se presenti), sono scettico.
Nifle,

@Nifle concordato. In linea di principio, ciò dovrebbe essere possibile (salvare un dump di memoria dell'app, ricaricarlo al riavvio) - quindi ho la sensazione che esista; Non riesco proprio a trovare un'app che lo faccia.
ashes999,

Leggi: Ibernazione.
Ciao,

Nel mio caso, l'ibernazione non è una soluzione. Ero un utente fortemente letargo fino a quando ho comprato un disco SSD. Controlla la risposta di @Matthew A. Schneider.
Mario S

Risposte:


3

A rischio di essere sotto votato, trovo che devo dare una risposta negativa.

Molte persone vorrebbero questo, incluso me stesso. Ho anche cercato a lungo un prodotto del genere, prima di capire che non esiste e che in effetti non può esistere. Forse sono possibili implementazioni limitate di sospensione / insospensione, ma non generali.

Pensa ad esempio alla sospensione di un'applicazione che ha un file aperto sul CD o una connessione Internet aperta. Ora immagina cosa ci vorrebbe per "sospenderlo" e "non sospenderlo": tutti i file e le connessioni devono essere salvati in sospensione, quindi in caso di reinserimento in sospeso, il lettore CD potrebbe essere verificato e il file aperto, le connessioni Internet da riutilizzare stabilito con tutte le informazioni di accesso al sito, ecc. ecc.

Questo è troppo complesso per essere implementato in qualsiasi sistema operativo e costituirebbe anche un buco nella sicurezza, evitando la necessità di inserire il login se lo stato di un'applicazione fosse "catturato" subito dopo il login. Per sospendere correttamente un'applicazione, è quasi necessario salvare lo stato dell'intero sistema operativo (che esiste).


4
Se funziona per l'ibernazione, non vi è motivo per cui non funzioni nello scenario descritto da OP. Dovresti ovviamente ristabilire gli handle di file e gestire la sicurezza, ma nessuno ha detto che sarebbe stato facile. Detto questo, il dumping della memoria raw richiede privilegi che solo il sistema operativo dovrebbe avere. Dovresti fidarti seriamente dell'applicazione per dargli i privilegi del sistema operativo (supponendo che sia persino possibile dargli tali privilegi).
Xr.

@Xr: l'ibernazione è per l'intero computer, che ho detto esiste (anche se non è garantito che le applicazioni non falliscano al risveglio). Il caso "un'applicazione unica" non esiste realmente, poiché lo stato dell'applicazione fa parte dello stato del sistema operativo. Come dici tu, questo meccanismo è possibile, ma deve essere integrato nel sistema operativo stesso. Un'applicazione in esecuzione nello spazio utente non dispone dell'accesso richiesto alle tabelle e ai driver di sistema e ciò richiede anche una conoscenza molto specializzata di essi.
harrymc,

Hai ragione, è complesso. Ho iniziato una domanda SO su questo e la risposta è stata, come previsto, "è molto complesso da costruire a causa di tutti questi problemi".
ashes999,

5

Senza virtualizzazione, l'unica opzione su Microsoft Windows è mettere in pausa / riprendere le applicazioni. Le utility che possono farlo sono PySuspend e Pausep . Ciò non ti consentirà di eseguire alcun tipo di "annullamento".

Mentre ci sono prodotti di virtualizzazione come QubesOS che possono fare quello che stai cercando sistemi Linux, probabilmente non lo vedrai su Microsoft Windows senza il supporto diretto di Microsoft. Tuttavia, anche con QubesOS, dovrebbe essere possibile eseguire un prodotto di virtualizzazione come VirtualBox o VMWare Workstation per eseguire applicazioni Windows. Puoi anche eseguire applicazioni Windows tramite wine , con tutti i vantaggi dell'astrazione di QubesOS.

In alternativa, è possibile eseguire più macchine virtuali che eseguono una copia separata di Windows sotto ciascuna di esse. Alcune versioni di MS Windows consentono di eseguire una o più copie del sistema operativo, virtualizzate, con un'unica licenza.


Sì, nel peggiore dei casi, posso sempre avere il mio PC come client "thin" ed eseguire tutto all'interno di una VM (con un aumento delle prestazioni del 10% nel caso di VM Ware). Non è un brutto piano di backup - a meno che tu non condivida il tuo computer con non esperti che si chiedono cosa stai facendo :)
ashes999

Questi strumenti consentono di mettere in pausa, chiudere l'applicazione e quindi riprendere dallo stato precedente?
ashes999,

1
PySuspend e Pausep emettono un equivalente di Windows ai segnali POSIX SIGSTOP / SIGCONT. Questo non consente all'applicazione di essere completamente "arrestata", non rilascia alcuna allocazione di memoria. Impediscono semplicemente al processo di utilizzare qualsiasi CPU fino a quando non si sospende / riprende il processo.
ewindisch,

1

1
Perché quelli? Come risolvono il problema?
Ale

Penso che questa risposta sia stata ingiustamente ridimensionata. Dopo la risposta di @harrymc, queste sono buone alternative all'app richiesta da ashes999. In questo momento sto cercando qualcosa che la cenere lo voglia, perché ho un disco SSD e non voglio andare in letargo. In tal senso, SmartClose mi sembra una soluzione interessante che sto provando in questo momento.
Mario S

SmartClose ( ghacks.net/2008/12/03/smart-close ) e probabilmente Twinsplay troppo semplicemente riaprono le finestre e contano sulle applicazioni stesse per salvare il loro stato
mic

0

Questo è ciò che fa SmartSuspend di Jaryba (precedentemente Librato) . È un contenitore VM leggero per applicazioni che ti consente di sospendere, riprendere e migrare solo un'applicazione, proprio come faresti con una VM, ma con un sovraccarico molto minore. In questo momento non supporta Windows ma sono destinati a mind-2011 per il supporto di Windows. Funziona abbastanza bene con le applicazioni basate su Linux. Alcune applicazioni non rilasciano le licenze come promesso quando sospese da SmartSuspend, ma la maggior parte lo fa e puoi time-lapse su software costoso abbastanza bene con il prodotto.


3
Bello, ma nessun supporto di Windows = nessun supporto = inutile. Ho bisogno di questo per Windows, motivo per cui ho taggato la domanda "Windows". Inoltre, non c'è alcun link per il download sul loro sito. Yech.
ashes999,

@ ashes999 sta arrivando. Ecco perché ti ho messo su. Non è economico.
Ian C.,

Sono tentato di votare questa risposta. Software che non esiste ancora e anche se lo facesse, non funziona per Windows? Non è sicuramente quello che sto cercando.
ashes999,

1
È il 2015 e non supporta ancora Windows ...
Mario S

Il sito di Jaryba è ora morto / vuoto
microfono
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.