Câu hỏi Gracefully giết defrag.exe khi chạy trong dấu nhắc lệnh


Khi tôi chạy defrag trong dấu nhắc lệnh là có cách nào để duyên dáng dừng quá trình trước khi nó kết thúc?

Không giết nhiệm vụ trong TM gây ra bất kỳ vấn đề nếu nó là ở giữa di chuyển một tập tin?

Windows 7 Pro 64bit


4
2017-08-08 01:17


gốc




Các câu trả lời:


Về lý thuyết, cần an toàn để chấm dứt chương trình (trong trường hợp của bạn, bạn có thể sử dụng CTRL-C) bởi vì một nỗ lực được thực hiện trong thiết kế của ứng dụng Microsoft Disk Defragmenter để ngăn chặn mất dữ liệu trong trường hợp gián đoạn bất ngờ. Đây là tài liệu trên trang web của Microsoft như sau:

The following steps are the processes by which Disk Defragmenter and
file system defragment an NTFS volume and update the MFT.

   1. Locate the fragments of each file throughout the disk.
   2. Copy the fragments to contiguous locations on the disk.
   3. Verify that the copy is an exact duplicate of the original file.
   4. Update the MFT in NTFS with the new location of the beginning of
      the file.
   5. Free up the space previously used by the file.

Microsoft - Trình chống phân mảnh đĩa hoạt động như thế nào
http://technet.microsoft.com/en-us/library/cc778290 (WS.10).aspx
(các văn bản trên có thể được tìm thấy dưới "Cập nhật bảng tệp chính")

Về cơ bản, dữ liệu là đã sao chép cho các lĩnh vực mới, các con trỏ đến dữ liệu đã được di chuyển được cập nhật để trỏ đến các lĩnh vực mới này, và sau đó các lĩnh vực cũ được giải phóng như là kết quả. Đây là một cách tiếp cận rất an toàn để sử dụng trong trường hợp xảy ra sự cố vì trong trường hợp xấu nhất (như một sự cố vào màn hình màu xanh), bạn sẽ có hai bản sao của cùng một dữ liệu, một bản trên các lĩnh vực chưa phân bổ và trên các lĩnh vực được phân bổ. Từ góc độ đọc dữ liệu, nó sẽ xuất hiện cùng một cách.

Ngoài ra, có nhiều cải tiến có thể được thực hiện cho các kỹ thuật Disk Defragmentation mà Microsoft sử dụng (mà đã được nhiều hơn đủ cho nhiều người), và một loạt các sản phẩm thay thế được kiểm tra và so sánh chi tiết ở đây:

Defragger (từ Bảng thuật ngữ Java của Roedy Green)
http://www.mindprod.com/jgloss/defragger.html


4
2017-08-08 02:09



Tuyệt vời như thường lệ Randolf! - Moab


Kiểm soát C để hủy bỏ nó.

Tôi không mong đợi người quản lý Task làm bất kỳ tác hại nào, vì nó đầu tiên yêu cầu chương trình đóng lại trước khi nó tấn công nó.


6
2017-08-08 01:29



Lý do tôi hỏi là một vài năm trước, tôi đã đẩy một cài đặt XP, buộc defrag phải đóng bằng gui, nó sẽ không trả lời và vì vậy tôi đã giết nó trong TM, cố gắng nhiều lần nhưng TM cuối cùng đã giết nó, sau khi khởi động lại nó đã bị đè bẹp. Tôi đã thiếu kiên nhẫn trong những năm tháng của cuộc đời mình. - Moab
Yeah, giết bởi TM không phải luôn luôn là một ý tưởng tốt. Một trong những bài học khó nhất mà tôi đã học được từ C ++ là việc tạo ra một quy trình rất dễ dàng. Kết thúc một quy trình một cách duyên dáng là những gì ngăn cách các chàng trai khỏi đàn ông. - surfasb
Phần bạo lực của nó liên quan đến tôi, đó là lý do tại sao tôi hỏi nếu có một phương pháp duyên dáng. - Moab
@Moab, chỉ cần sử dụng Ctrl + C; nó không giết chết quá trình vì bạn có thể thấy nó tiếp tục sau đó (nó phát hiện các phím bấm, hủy bỏ chống phân mảnh, sau đó in ra một tin nhắn). Tôi nhớ lại trong những ngày DOS, rằng có một cách để cài đặt một trình xử lý Ctrl + C (tôi đã sử dụng một trong một chương trình Pascal), do đó, không có gì ngạc nhiên khi các ứng dụng giao diện điều khiển Windows 7 có thể làm điều đó. - Synetech
@moab: không sử dụng TM. Hoặc lấy một bản sao của mydefrag cung cấp cho bạn quyền kiểm soát chi tiết hơn đối với các phân mảnh của bạn. Đừng lo lắng. Nó sử dụng cùng một API như chống phân mảnh. Nghĩ lại thì, tôi không thể nhớ lần cuối tôi phải đốt cháy chương trình chống phân mảnh. Nó phải ở trước Vista. . . - surfasb


Chủ đề này có rất nhiều thông tin hữu ích về việc có sự chống phân mảnh đĩa bị hỏng trong khi mất điện (trong khi không giống với tình huống của bạn, bạn vẫn đột ngột dừng chương trình - như người bình luận vui lòng chỉ ra, nếu hệ thống có thể phục hồi từ một sự gián đoạn phần cứng, một phần mềm gián đoạn có thể sẽ không bị tổn thương).

Nó có vẻ như là mặc dù defrag đang theo dõi thông qua nhật ký xảy ra trong quá trình sử dụng bình thường.


2
2017-08-08 01:32



Tôi nghĩ rằng bạn có thể muốn thêm một cái gì đó như "nếu ngay cả một tắt cứng có lẽ sẽ không làm hỏng nó, sau đó cho một phần mềm tắt máy sẽ không" - soandos
Bài viết hay nhưng không thực sự trả lời câu hỏi của tôi về cách chấm dứt một cách duyên dáng. - Moab
@soandos Đó là một điểm tốt. Thực sự, cả hai cách đều dừng phần mềm trước khi nó có cơ hội để dọn dẹp. - jonsca
@Moab Tôi nghĩ cả hai chúng tôi đều nói rằng các phương pháp thông thường của Ctrl-C hoặc giết chết nó khỏi trình quản lý tác vụ sẽ không làm tổn thương gì cả. Chỉ cần chạy một chkdsk (hoặc tương đương) để chắc chắn. - jonsca
Có, nhưng theo cách này bạn trực tiếp trả lời câu hỏi, chỉ cần một cái gì đó bạn có thể muốn thêm vào câu trả lời của bạn. - soandos