Vì vậy, Linux "gắn" một ổ cứng để thực hiện một số thao tác như đọc / ghi. Windows có "gắn kết" theo cùng một cách không?
Nó được gọi là một cái gì đó khác nhau trong bối cảnh của Microsoft?
Vì vậy, Linux "gắn" một ổ cứng để thực hiện một số thao tác như đọc / ghi. Windows có "gắn kết" theo cùng một cách không?
Nó được gọi là một cái gì đó khác nhau trong bối cảnh của Microsoft?
Câu trả lời:
Nếu bạn biết nội bộ Windows, xin vui lòng sửa lỗi của tôi.
"Gắn kết" bao gồm hai phần chính, giống nhau trong cả hai hệ thống nhưng sự tách biệt của chúng có phần khác nhau:
Trên Linux, cùng một mount()
chức năng thực hiện cả hai công việc; một hệ thống tập tin phải được gắn kết rõ ràng trên một đường dẫn do người dùng chọn và vẫn được mở miễn là nó được gắn trên ít nhất một đường dẫn (có thể nhiều hơn). Khi tất cả các đường dẫn đến hệ thống tập tin đó là umount()
ed, nó sẽ bị đóng.
Windows tự động gắn kết âm lượng khi âm lượng xuất hiện - nó ngay lập tức mở hệ thống tập tin và gán một ký tự ổ đĩa và / hoặc bất kỳ tên được cấu hình nào khác cho nó.
Một đĩa có thể được "gỡ bỏ" tạm thời bằng cách sử dụng các chức năng FSCTL_LOCK_VOLUME
và / hoặc ioctl - ví dụ, trong khi chạy trên nó - nhưng được tự động gắn lại khi chương trình mở khóa hoặc thoát. Hành vi này có thể được xem là loại đối nghịch với Linux. Vì việc hủy bỏ một hệ thống tập tin là tạm thời, nó giữ lại các tên được gán ngay cả khi bị hủy bỏ. (Chức năng "Xóa an toàn" sẽ loại bỏ hệ thống tệp và vô hiệu hóa thiết bị bên dưới, để ngăn Windows nhìn thấy hệ thống tệp và truy cập lại hệ thống tệp.)FSCTL_DISMOUNT_VOLUME
chkdsk
Một hệ thống tập tin có thể có một vài tên được gán cho nó:
Ký tự ổ đĩa ( A:
, C:
, [:
) - tự động gán cho ổ đĩa mới và bị mất trên khởi động lại, mặc dù Windows nhớ bài tập cấu hình bởi người sử dụng. Theo cách này, chúng tương tự như các điểm gắn kết Unix.
(Các ký tự ổ đĩa cũng có thể được gán cho các thiết bị tùy ý, bao gồm các hệ thống tệp mạng được Windows hỗ trợ. Bạn có thể thấy các mục tiêu của chúng tại \GLOBAL??\
và \Sessions\<session>\DosDevices\<loginid>\
trong WinObj .)
Lưu ý: Các ký tự ổ đĩa thường là toàn hệ thống, nhưng chúng cũng có thể được chỉ định toàn phiên bằng cách sử dụng subst
hoặc DefineDosDevice()
, và vâng, nó chấp nhận [:
. Các bài tập toàn phiên không bao giờ được lưu trữ ở bất cứ đâu và biến mất khi khởi động lại.
Điểm gắn thư mục ( C:\Disks\Music
) - một hệ thống tệp có thể được gắn trên bất kỳ thư mục tùy ý, như trong Unix; tuy nhiên, chúng thực sự được lưu trữ trên đĩa đích, dưới dạng các điểm lặp lại (một dạng liên kết tượng trưng mạnh hơn) dùng để chỉ đĩa được gắn theo tên âm lượng của nó .
(Các loại điểm lặp lại khác nhau cũng tồn tại; một vài điểm tiêu chuẩn là điểm gắn kết, liên kết tượng trưng, mối nối thư mục.)
Đường dẫn GUID khối lượng ( \\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\
) (ít nhất là cách gọi của nó) - các đường dẫn đặc biệt trong không gian tên Win32\\?\
, chứa UUID mà Windows gán cho âm lượng cụ thể đó trên hệ thống Windows cụ thể này. Họ không thể thay đổi. Chúng được liệt kê bởi mountvol
, hoặc dưới \GLOBAL??\
trong WinObj. Không giống như ký tự ổ đĩa, đây là giống nhau cho tất cả người dùng.
Đường dẫn giao diện thiết bị \\?\STORAGE#Volume#<something>Signature<hex>Offset<hex>Length<hex>#<uuid>\
Không giống như đường dẫn GUID âm lượng, mỗi ổ có chính xác một đường dẫn giao diện thiết bị.
\Device\HarddiskVolume23
- không giống như tất cả các tên trước đó, chỉ là các liên kết tượng trưng, tên này trực tiếp đặt tên cho âm lượng. Bạn biết điều này bởi vì nó trong \Device
không gian tên, không phải không \\?
gian tên. Điều đó cũng có nghĩa là bạn không thể sử dụng nó với các chức năng như CreateFile
.diskmgmt.msc
, mountvol
Và diskpart
có thể quản lý cả hai ký tự ổ đĩa và các điểm gán.
Ngay cả khi ổ đĩa không có bất kỳ ký tự ổ đĩa nào và không được "gắn" vào bất kỳ thư mục nào, nó vẫn mở và nội dung của nó vẫn có thể được truy cập thông qua tên ổ đĩa của nó; ví dụ
\\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\Windows\Explorer.exe
[:
..? Có thật không?
DefineDosDevice()
chấp nhận thực tế mọi thứ, mặc dù bạn sẽ không gặp nhiều may mắn khi thuyết phục hầu hết các ứng dụng chấp nhận nó. Hãy thử subst [: C:\Users
, sau đódir [:
[:
mountvol.exe
là tương đương với Windows.
mountvol
in trên máy của tôi. Vì vậy, nó không phải là bất cứ điều gì quá khó để tái sản xuất. Nếu tôi đặt văn bản đơn giản vào đây, nó sẽ trở nên khó đọc hơn vì hộp có thanh cuộn :( Nếu bạn muốn chỉnh sửa câu trả lời để cải thiện nó, hãy tiếp tục :)
Có, nhưng nói chung, nó được xử lý tự động (giả sử với ổ USB).
Tiện ích Quản lý đĩa (một phần của Máy tính Mgmt), cho phép bạn thao tác với khối lượng và điểm gắn kết. Explorer làm tương tự cho các chia sẻ mạng. Có các phiên bản dòng lệnh (drivepart.exe trong WIn 7) cũng tùy thuộc vào phiên bản Windows bạn chạy.
Safely Remove Hardware
menu. Để gắn lại các thiết bị đó, rút cáp kết nối (USB / FireWire / eSATA) và cắm lại hoặc tắt USB / FireWire / vv. thiết bị từ Trình quản lý thiết bị và bật lại thiết bị và Windows sẽ tự động gắn lại thiết bị.
Câu trả lời ngắn nhất, rõ ràng nhất để điền vào _ _ _ _ _ _ của bạn là "mount". Linux gắn kết (và unmounts) hệ thống tệp và Windows cũng vậy.
Mỗi cái đều tự động hóa quá trình này ở mức độ khác nhau tùy thuộc vào một loạt các yếu tố hỗn hợp mà tôi không có khả năng liệt kê, nhưng tôi nghĩ các chiến lược lưu trữ, kiểu / sở thích của người dùng và bằng sáng chế là những ảnh hưởng đáng kể đến quá trình tự động hóa của quy trình này.