Tôi có thể hibernate hibernate một chương trình?


17

Vâng, tôi biết rằng ngủ đông thường áp dụng cho máy tính. (Ngủ đông có nghĩa là cô ấy lưu bộ nhớ chương trình trong đĩa và có thể khôi phục nó một cách nhất quán.)

Tuy nhiên, ngủ đông một chương trình có thể rất hữu ích. Giả sử tôi muốn chơi một trò chơi, nhưng một vài chương trình như firefox, acrobat chiếm tới 500M bộ nhớ, vì vậy tôi muốn giải phóng nó. Đóng và sau đó bắt đầu có thể tốn thời gian, đặc biệt là nếu dữ liệu phiên không thể được lưu trữ. Vì vậy, thay vì tôi đi và ngủ đông chúng. Vì vậy, có cách nào tôi có thể ngủ đông một chương trình?


Bạn đang sử dụng hệ điều hành nào?
Ian C.

1
Windows 7, 64-bit. Tôi cũng viết lại câu hỏi.
apoorv020

cải tiến tốt cho hệ điều hành ...
kokbira

2
Liên quan (nhưng không có câu trả lời) superuser.com/questions/170434/ từ
Sathyajith Bhat

Câu trả lời:


8

Có một câu hỏi liên quan về vấn đề này tại StackOverflow. Nó liên quan đến lập trình nhiều hơn, nhưng câu trả lời chính được chấp nhận giải thích tại sao những gì bạn đang cố gắng làm là khó và đưa ra một giải pháp thay thế khả thi.

Về cơ bản, hãy chạy các ứng dụng 'doanh nghiệp' của bạn trong VM và tạm dừng / ngủ đông / đóng ứng dụng khi bạn muốn chơi trò chơi.


4

Mặc dù đây không phải là ngủ đông thực tế , quá trình có thể bị đình chỉ. Nó sẽ ngay lập tức ngừng sử dụng chu kỳ CPU, nhưng vẫn sẽ sử dụng bộ nhớ. May mắn thay, bộ nhớ này sẽ được hoán đổi thành pagefile, nếu bạn khởi chạy bất kỳ ứng dụng nào chiếm nhiều bộ nhớ sau đó, vì vậy đó không phải là vấn đề thực sự. Quá trình bị đình chỉ không thể tồn tại khi khởi động lại \ logoff, nhưng điều này sẽ đủ để chơi một trò chơi.

Câu hỏi liên quan: Đình chỉ / Tiếp tục một quy trình một cách dễ dàng?

Trong nội bộ, quá trình đình chỉ có thể được thực hiện thông qua các phương pháp khác nhau :

  • Cặp chức năng SuspendThreadResumeThread .

  • NtSuspendProcess chức năng (chưa được ghi lại chính thức) đã được giới thiệu với Windows XP Sp0 và hoạt động trên mọi phiên bản hệ thống duy nhất kể từ đó.

  • Giao diện gỡ lỗi được cung cấp bởi Microsoft, sử dụng các hàm DebugActiveProcessDebugActiveProcessStop . Khi trình gỡ lỗi tự gắn vào một quy trình từ xa, tất cả các luồng của mục tiêu ngay lập tức bị đình chỉ cho đến khi trình gỡ lỗi đưa ra một dấu hiệu để cho phép chúng thực thi.

Có một số công cụ có sẵn, có thể tạm dừng một quy trình:

Hơn nữa, Trình giám sát tài nguyên ( Task ManagerPerformanceOpen Resource Monitor) trong windows Vista và cao hơn có thể tạm dừng \ tiếp tục các quy trình:

Giám sát tài nguyên


0

"Ngủ đông" một ứng dụng sẽ không nhanh hơn việc đóng và khởi động lại nó, mặc dù quan điểm của bạn về dữ liệu phiên là hợp lệ. Nói chung sẽ không có nhiều nếu có lợi thế.


5
Theo logic nào bạn nói rằng ngủ đông sẽ không nhanh hơn? Ngủ đông và khôi phục HĐH nhanh hơn khởi động lại.
apoorv020

Hãy suy nghĩ về những gì ngủ đông là. Nó yêu cầu sao chép hình ảnh chương trình vào đĩa cứng, sau đó sao chép lại. Đóng chương trình và sau đó khởi động lại nó chỉ yêu cầu sao chép nó từ đĩa cứng. Windows khởi động rất chậm, vì những lý do tôi không biết. Đối với các hệ điều hành khác, ví dụ như Linux, ngủ đông và thức tỉnh mất nhiều thời gian hơn là chỉ tắt và khởi động lại, ít nhất là trên mọi hệ thống của tôi mà tôi đã thử. Nó tiện lợi nhưng không nhanh.
CarlF

Bắt đầu tốt một số chương trình là khá chậm thời gian, đặc biệt là firefox. Chưa kể cáu kỉnh là tốt.
apoorv020

3
Closing the program and then restarting it only requires copying it from the hard disk. Bạn đang quên để thêm trong thời gian cần thiết để có được những chương trình trở lại vào tình trạng đó là trong Ví dụ, mở lại một loạt các tab trình duyệt, mở một tập tin trong một biên tập viên, vv.
Synetech

-2

Vì bạn đang ở trên Windows, bạn luôn có thể tạo hai tài khoản người dùng và sử dụng chức năng chuyển đổi tài khoản nhanh trong các cửa sổ và sử dụng từng tài khoản cho các bộ ứng dụng khác nhau. Vì Windows ngủ đông khá nhiều, những cái nhìn khác được mở trên máy tính. Tôi nghĩ vậy.


2
Chuyển đổi giữa các tài khoản người dùng trong Windows 7 không ngủ đông hoặc bằng bất kỳ cách nào khác tạm dừng hoạt động trong tài khoản không hoạt động. Bạn có thể tự chứng minh điều này bằng cách phát một số âm thanh trong một tài khoản sau đó chuyển sang tài khoản khác và quan sát rằng âm thanh đó tiếp tục phát.
Tôi nói Phục hồi Monica

Wellllllllll ..... thực sự nó sẽ dừng vẽ màn hình.
djsmiley2k - CoW
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.