Perangkat Lunak Windows untuk Menyimpan Status Aplikasi Sewenang-wenang

14

Perangkat lunak VM melakukan pekerjaan yang sangat baik untuk menyelamatkan kondisi ketika Anda "mematikannya," memungkinkan kembali instan dan segera ke keadaan sebelumnya.

Apakah ada beberapa aplikasi untuk Windows yang memungkinkan saya untuk melakukan hal yang sama, untuk setiap perangkat lunak yang sewenang-wenang? Itu akan memungkinkan saya untuk menyimpan / mengembalikan keadaan, mungkin melalui perintah shell atau tombol yang ditambahkan ke setiap jendela.

Sunting: Untuk kejelasan, ada dua jenis aplikasi: yang menyimpan status mereka sendiri, dan yang menyimpan status orang lain. Yang menyimpan statusnya sendiri seperti Chrome, yang dimuat, memuat ulang windows yang telah Anda buka terakhir kali.

Bukan itu yang saya tanyakan; Saya meminta aplikasi yang dapat menyimpan status aplikasi lain, seperti halnya perangkat lunak VM; tetapi untuk aplikasi apa pun . (Tes sepele akan memuat notepad ++, ketik banyak hal, dan save-state; pada reset-state, Anda harus bisa multi-level membatalkan banyak apa yang Anda tulis, seolah-olah Anda tidak pernah mematikan aplikasi. )

ashes999
sumber
+1 pertanyaan menarik. Karena pertanyaan serupa lainnya belum menerima jawaban yang baik (jika ada), saya skeptis.
Nifle
@Nifle setuju. Pada prinsipnya, ini harus dimungkinkan (simpan dump memori dari aplikasi, muat ulang saat Anda me-restart) - jadi saya punya perasaan itu ada; Saya tidak dapat menemukan aplikasi yang melakukannya.
ashes999
Baca: Hibernasi.
Hello71
Dalam kasus saya, hibernasi bukan solusi. Saya adalah pengguna yang sangat hibernasi sampai saya membeli disk SSD. Periksa jawaban @Matthew A. Schneider.
Mario S

Jawaban:

3

Dengan risiko tidak dipilih, saya harus memberikan jawaban negatif.

Banyak orang berharap untuk ini, termasuk saya. Saya juga sudah lama mencari produk seperti itu, sebelum saya mengerti bahwa itu tidak ada, dan memang tidak bisa ada. Mungkin implementasi suspend / unsuspend yang terbatas mungkin dilakukan, tetapi tidak umum.

Pikirkan misalnya tentang menangguhkan aplikasi yang memiliki file terbuka di CD atau koneksi Internet terbuka. Sekarang bayangkan apa yang diperlukan untuk "menangguhkan" dan "membatalkan penangguhan" itu: Semua file dan koneksi yang akan disimpan pada penangguhan, kemudian pada unsuspend yang akan dibuat kembali, drive CD mungkin harus diverifikasi dan file dibuka, koneksi Internet untuk kembali -dibangun dengan semua info masuk ke situs, dll.

Ini terlalu rumit untuk diimplementasikan dalam sistem operasi apa pun, dan juga akan menjadi lubang keamanan, melewati kebutuhan untuk memasukkan login jika keadaan aplikasi "ditangkap" tepat setelah login. Untuk menangguhkan aplikasi dengan benar, seseorang hanya perlu menyimpan keadaan seluruh sistem operasi (yang memang ada).

harrymc
sumber
4
Jika berfungsi untuk hibernasi, tidak ada alasan untuk tidak bekerja dalam skenario yang dijelaskan oleh OP. Anda harus membuat kembali pegangan file tentu saja dan mengelola keamanan, tetapi tidak ada yang mengatakan itu akan mudah. Yang mengatakan, membuang memori mentah memerlukan hak istimewa bahwa hanya sistem operasi yang seharusnya. Anda harus benar-benar mempercayai aplikasi untuk memberikannya hak istimewa OS (dengan asumsi bahkan mungkin untuk memberikannya hak istimewa seperti itu).
Xr.
@Xr: Hibernasi untuk seluruh komputer, yang saya katakan memang ada (walaupun aplikasi tidak dijamin tidak gagal saat bangun). Kasus "satu aplikasi" tidak benar-benar ada, karena status aplikasi adalah bagian dari status sistem operasi. Seperti yang Anda katakan, mekanisme ini mungkin, tetapi harus dibangun ke dalam sistem operasi itu sendiri. Aplikasi yang berjalan di ruang pengguna tidak memiliki akses yang diperlukan ke tabel sistem dan driver, dan ini juga membutuhkan pengetahuan yang sangat khusus tentang mereka.
harrymc
Anda benar karena rumit. Saya memulai pertanyaan SO tentang ini dan jawabannya adalah, seperti yang diharapkan, "sangat rumit untuk dibangun karena semua masalah ini."
ashes999
5

Tanpa virtualisasi, satu-satunya pilihan Anda pada Microsoft Windows adalah menghentikan sementara / melanjutkan aplikasi. Utilitas yang dapat melakukan ini adalah PySuspend dan Pausep . Ini tidak akan memungkinkan Anda untuk melakukan semacam "undo".

Meskipun ada produk virtualisasi seperti QubesOS yang dapat melakukan apa yang Anda cari sistem Linux, Anda tidak akan mungkin melihat ini di Microsoft Windows tanpa dukungan langsung dari Microsoft. Namun, bahkan dengan QubesOS, harus dimungkinkan untuk menjalankan produk virtualisasi seperti VirtualBox atau VMWare Workstation untuk menjalankan aplikasi Windows. Anda juga dapat menjalankan aplikasi Windows melalui anggur , dengan manfaat penuh dari abstraksi QubesOS.

Atau, Anda dapat menjalankan beberapa VM yang menjalankan salinan Windows secara terpisah di bawah masing-masing VM. Beberapa versi MS Windows memungkinkan Anda untuk menjalankan satu atau lebih salinan OS, tervirtualisasi, di bawah satu lisensi.

ewindisch
sumber
Ya, dalam kasus terburuk, saya selalu dapat memiliki PC saya sebagai klien "tipis" dan menjalankan semuanya di dalam VM (dengan hit kinerja 10% dalam kasus VM Ware). Itu bukan rencana cadangan yang buruk - kecuali jika Anda berbagi komputer dengan non-teknisi yang bertanya-tanya apa yang Anda lakukan :)
ashes999
Apakah alat ini memungkinkan Anda untuk menjeda, mematikan aplikasi, dan kemudian melanjutkan dari keadaan sebelumnya?
ashes999
1
PySuspend dan Pausep mengeluarkan Windows yang setara dengan sinyal POSIX SIGSTOP / SIGCONT. Ini tidak memungkinkan aplikasi untuk sepenuhnya "dimatikan", itu tidak merilis alokasi memori apa pun. Mereka hanya menghentikan proses dari menggunakan CPU apa pun sampai Anda membatalkan / melanjutkan proses.
ewindisch
1

Itu bisa dilakukan. Lihat yang berikut ini.

Twinsplay: http://www.twinsplay.com/learn-more-about-twinsplay

SmartClose: http://download.cnet.com/SmartClose/3000-2094_4-10784165.html

Matius A. Schneider
sumber
1
Kenapa itu? Bagaimana mereka memecahkan masalah?
ale
Saya pikir jawaban ini tidak adil. Mengikuti jawaban @harrymc, itu adalah alternatif yang bagus untuk aplikasi yang diminta oleh ashes999. Saat ini saya sedang mencari sesuatu seperti abu menginginkannya, karena saya memiliki disk SSD dan saya tidak ingin hibernasi. Dalam hal itu, SmartClose menurut saya merupakan solusi menarik yang saya coba saat ini.
Mario S
SmartClose ( ghacks.net/2008/12/03/smart-close ) dan mungkin Twinsplay juga membuka kembali jendela dan mengandalkan aplikasi itu sendiri untuk menyelamatkan negara mereka
mic
0

Inilah yang dilakukan SmartSuspend milik Jaryba (sebelumnya Librato) . Ini adalah wadah VM yang ringan untuk aplikasi yang memungkinkan Anda menangguhkan, melanjutkan, dan memigrasi hanya sebuah aplikasi, seperti halnya Anda menggunakan VM, tetapi dengan overhead yang jauh lebih sedikit. Saat ini tidak mendukung Windows tetapi mereka menargetkan mind-2011 untuk dukungan Windows. Ini bekerja dengan cukup baik dengan aplikasi berbasis Linux. Beberapa aplikasi tidak merilis lisensi seperti yang dijanjikan ketika ditangguhkan oleh SmartSuspend, tetapi sebagian besar melakukannya dan Anda dapat mengiris waktu pada perangkat lunak yang mahal dengan produk tersebut.

Ian C.
sumber
3
Bagus, tetapi tidak ada dukungan Windows = tidak ada dukungan = tidak berguna. Saya memerlukan ini untuk Windows, itulah sebabnya saya menandai pertanyaan "Windows." Juga, tidak ada tautan unduhan di situs mereka. Yech.
ashes999
@ ashes999 akan datang. Itulah sebabnya saya menempatkan Anda di dalamnya. Itu tidak murah.
Ian C.
Saya tergoda untuk memilih jawaban ini. Perangkat lunak yang belum ada dan bahkan jika itu ada, tidak berfungsi untuk Windows? Jelas bukan itu yang saya cari.
ashes999
1
Ini tahun 2015 dan masih tidak mendukung Windows ...
Mario S