Daher "hängt" Linux eine Festplatte ein, um bestimmte Vorgänge wie Lesen / Schreiben auszuführen. Wird Windows auf die gleiche Weise "gemountet"?
Heißt es im Kontext von Microsoft etwas anderes?
Daher "hängt" Linux eine Festplatte ein, um bestimmte Vorgänge wie Lesen / Schreiben auszuführen. Wird Windows auf die gleiche Weise "gemountet"?
Heißt es im Kontext von Microsoft etwas anderes?
Antworten:
Wenn Sie Windows-Interna kennen, beheben Sie bitte meine Fehler.
"Montage" besteht aus zwei Hauptteilen, die in beiden Systemen gleich sind, aber sich in ihrer Trennung unterscheiden:
Unter Linux mount()
erledigt dieselbe Funktion beide Aufgaben. Ein Dateisystem muss explizit in einen vom Benutzer gewählten Pfad eingebunden werden und bleibt geöffnet, solange es in mindestens einen Pfad eingebunden ist (möglicherweise in mehrere). Sobald alle Pfade zu diesem Dateisystem umount()
bearbeitet wurden, wird es geschlossen.
Windows stellt Volumes automatisch bereit, wenn das Volume angezeigt wird - es öffnet sofort das Dateisystem und weist ihm einen Laufwerksbuchstaben und / oder andere konfigurierte Namen zu.
Eine Festplatte kann mit den Funktionen FSCTL_LOCK_VOLUME
und / oder ioctl vorübergehend " entladen" werden, z. B. während ein Laufwerk darauf ausgeführt wird. Sie wird jedoch automatisch erneut geladen , wenn das Programm sie entsperrt oder beendet. Dieses Verhalten könnte als eine Art Gegenteil von Linux angesehen werden. Da das Aufheben der Bereitstellung eines Dateisystems nur vorübergehend ist, bleiben die zugewiesenen Namen auch beim Aufheben der Bereitstellung erhalten. (Die Funktion "Sicher entfernen" deaktiviert das Dateisystem und das zugrunde liegende Gerät, um zu verhindern, dass Windows das Dateisystem sieht und es erneut bereitstellt.)FSCTL_DISMOUNT_VOLUME
chkdsk
Einem Dateisystem können mehrere Namen zugewiesen werden:
Laufwerksbuchstaben ( A:
, C:
, [:
) - automatisch auf neue Datenträger zugewiesen und verlor beim Neustart, obwohl Windows - Zuweisungen erinnert durch den Benutzer konfiguriert. Auf diese Weise ähneln sie Unix-Mountpunkten.
(Laufwerksbuchstaben können auch an beliebigen Geräten zugewiesen werden, einschließlich Netzwerk - Dateisysteme von Windows unterstützt. Sie ihre Ziele sehen \GLOBAL??\
und \Sessions\<session>\DosDevices\<loginid>\
in WinObj .)
Hinweis: Laufwerksbuchstaben sind normalerweise systemweit, sie können jedoch auch sitzungsweit mit subst
oder zugewiesen werden DefineDosDevice()
, und ja, sie werden akzeptiert [:
. Die sitzungsweiten Zuweisungen werden niemals irgendwo gespeichert und verschwinden beim Neustart.
Einhängepunkte für Ordner ( C:\Disks\Music
) - Ein Dateisystem kann in ein beliebiges Verzeichnis eingehängt werden, z. B. in Unix. werden sie jedoch auf der Zielplatte tatsächlich gespeichert ist , in der Form von Analysepunkten (a leistungsfähigeren Form von symbolischen Links) die mich auf die Platte von ihrem montierten Namen Volumen .
(Es gibt auch verschiedene Arten von Analysepunkten. Einige Standardpunkte sind Mountpunkte, Symlinks und Verzeichnisknoten.)
Volume-GUID-Pfade ( \\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\
) (so scheint es zumindest zu heißen) - spezielle Pfade im Win32-Namespace\\?\
, die eine UUID enthalten, die Windows diesem bestimmten Volume auf diesem bestimmten Windows-System zuweist. Sie können nicht geändert werden. Sie werden von mountvol
oder unter \GLOBAL??\
in WinObj aufgelistet. Im Gegensatz zu Laufwerksbuchstaben sind diese für alle Benutzer gleich.
Geräteschnittstelle Pfade \\?\STORAGE#Volume#<something>Signature<hex>Offset<hex>Length<hex>#<uuid>\
Im Gegensatz zu einem Volumen GUID Pfades jedes Volumen hat genau eine Geräteschnittstelle Pfad.
\Device\HarddiskVolume23
- Im Gegensatz zu allen vorherigen Geräten , bei denen es sich nur um symbolische Verknüpfungen handelt, wird hiermit das Volume direkt benannt. Sie wissen das, weil es sich im \Device
Namespace befindet, nicht im \\?
Namespace. Das bedeutet auch, dass Sie es nicht mit Funktionen wie verwenden können CreateFile
.diskmgmt.msc
, mountvol
Und diskpart
können beide Laufwerksbuchstaben und Bereitstellungspunkte verwalten.
Selbst wenn ein Volume keine Laufwerksbuchstaben hat und nicht in einem Ordner "gemountet" ist, bleibt es geöffnet und auf den Inhalt kann über den Namen des Volumes zugegriffen werden. z.B
\\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\Windows\Explorer.exe
[:
..? "Ja wirklich?"
DefineDosDevice()
akzeptiert praktisch alles, obwohl Sie nicht viel Glück haben, die meisten Anwendungen davon zu überzeugen, es zu akzeptieren. Versuchen Sie es subst [: C:\Users
danndir [:
[:
mountvol.exe
ist das Windows-Äquivalent.
mountvol
auf meinem Computer gedruckt wird. Es sollte also nicht zu schwierig sein, etwas zu reproduzieren. Wenn ich den Klartext hier einfüge, ist das Lesen aufgrund des Kästchens mit Bildlaufleisten schwieriger geworden :( Wenn Sie die Antwort bearbeiten möchten, um sie zu verbessern, fahren Sie fort :)
Ja, aber im Allgemeinen wird es automatisch verarbeitet (z. B. mit einem USB-Laufwerk).
Mit dem Dienstprogramm zur Datenträgerverwaltung (Teil von Computer Mgmt) können Sie Volumes und Bereitstellungspunkte bearbeiten. Der Explorer macht dasselbe für Netzwerkfreigaben. Abhängig von der von Ihnen ausgeführten Windows-Version gibt es auch Befehlszeilenversionen (diskpart.exe in WIn 7).
Safely Remove Hardware
Menü. Ziehen Sie das Verbindungskabel (USB / FireWire / eSATA) heraus und schließen Sie es wieder an, oder deaktivieren Sie das USB / FireWire / etc. Gerät aus dem Geräte-Manager und aktivieren Sie es erneut, und Windows wird es automatisch erneut bereitstellen.
Die kürzeste und naheliegendste Antwort zum Ausfüllen Ihres _ _ _ _ _ _ lautet "mount". Linux stellt Dateisysteme bereit (und hebt die Bereitstellung auf), ebenso wie Windows.
Jeder von ihnen automatisiert diesen Prozess in unterschiedlichem Maße, abhängig von einer Reihe von gemischten Faktoren, die ich nicht aufzählen kann, aber ich denke, dass Caching-Strategien, Benutzerstil / Vorlieben und Patente einen signifikanten Einfluss auf die Automatisierung dieses Prozesses haben.