Bu yüzden Linux, okuma / yazma gibi bazı işlemleri gerçekleştirmek için bir sabit sürücüyü "takar". Windows aynı şekilde "bağlanır" mı?
Microsoft bağlamında farklı bir şey mi deniyor?
Bu yüzden Linux, okuma / yazma gibi bazı işlemleri gerçekleştirmek için bir sabit sürücüyü "takar". Windows aynı şekilde "bağlanır" mı?
Microsoft bağlamında farklı bir şey mi deniyor?
Yanıtlar:
Windows içindelerini biliyorsanız, lütfen hatalarımı düzeltin.
"Montaj" her iki sistemde de aynı olan iki ayrı parçadan oluşur, ancak ayrılmaları biraz farklıdır:
Linux'ta, aynı mount()
işlev her iki işi de yapar; Bir dosya sisteminin kullanıcı tarafından seçilen bir yola açıkça monte edilmesi ve en az bir yola (muhtemelen daha fazla) monte edildiği sürece açık kalması gerekir. Bu dosya sistemine giden tüm yollar umount()
kapatıldığında, kapatılır.
Windows, birim göründüğünde birimleri otomatik olarak bağlar - dosya sistemini hemen açar ve kendisine bir sürücü harfi ve / veya yapılandırılmış diğer adları atar .
Bir disk FSCTL_LOCK_VOLUME
ve / veya ioctl işlevleri kullanılarak geçici olarak "çıkarılabilir" (örneğin üzerinde çalışırken) - ancak program kilidini açtığında veya çıktığında otomatik olarak tekrar takılabilir. Bu davranış Linux'un tam tersi olarak görülebilir. Bir dosya sisteminin kaldırılması geçici olduğu için, çıkarılmış olsalar bile atanmış adları korur. ("Güvenle Kaldır" işlevi, Windows'un dosya sistemini görmesini ve yeniden ayarlamasını önlemek için dosya sistemini kaldırır ve temeldeki aygıtı devre dışı bırakır.)FSCTL_DISMOUNT_VOLUME
chkdsk
Bir dosya sisteminde kendisine atanmış birkaç isim olabilir:
Sürücü harfler ( A:
, C:
, [:
) - otomatik olarak yeni diskler atanan ve Windows kullanıcı tarafından yapılandırılan atamaları hatırlar rağmen, yeniden başlatmada kaybetti. Bu şekilde, Unix bağlama noktalarına benzerler.
(Sürücü harfleri de Windows tarafından desteklenen ağ dosya sistemleri de dahil olmak üzere keyfi cihazlara atanabilir. Sen kendi hedeflerini görebilirsiniz \GLOBAL??\
ve \Sessions\<session>\DosDevices\<loginid>\
içinde Winobj .)
Not: Sürücü harfleri normalde sistem çapındadır, ancak oturumlar boyunca subst
veya kullanarak DefineDosDevice()
ve genel olarak de kabul edilirse atanabilirler [:
. Oturum genelindeki ödevler hiçbir zaman hiçbir yere kaydedilmez ve yeniden başlatılmasında kaybolur.
Klasör bağlama noktaları ( C:\Disks\Music
) - bir dosya sistemi, Unix'teki gibi herhangi bir isteğe bağlı dizine monte edilebilir; bununla birlikte, hedef diskin üzerine, asıl adlarına göre monte edilmiş diske atıfta bulunan yeniden değerlendirme noktaları (daha güçlü bir sembol bağlantı şekli) biçiminde depolanırlar .
(Farklı reparse noktaları da vardır; birkaç standart nokta montaj noktaları, sembolik bağlantılar, dizin kavşaklarıdır.)
Birim GUID yolları ( \\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\
) (en azından nasıl göründüğü gibi) - Windows'un belirli bir Windows sistemindeki belirli bir birime atadığı bir UUID içeren , Win32 ad alanındaki\\?\
özel yollar . Değiştirilemezler. WinObj'de mountvol
veya altında listelenir \GLOBAL??\
. Sürücü harflerinden farklı olarak, bunlar tüm kullanıcılar için aynıdır.
Cihaz arayüz yolları \\?\STORAGE#Volume#<something>Signature<hex>Offset<hex>Length<hex>#<uuid>\
Bir birim GUID yolundan farklı olarak, her birimin tam olarak bir cihaz arayüz yolu vardır.
\Device\HarddiskVolume23
- sadece sembolik bağlantılar olan öncekilerin aksine, bu ses seviyesini doğrudan adlandırır. Bunu biliyorsun çünkü \Device
isim alanında, isim alanında değil \\?
. Bu aynı zamanda gibi fonksiyonlarla kullanamayacağınız anlamına gelir CreateFile
.diskmgmt.msc
, mountvol
Ve diskpart
her iki sürücü harfleri yönetmek ve puan monte edebilirsiniz.
Bir birimde sürücü harfleri olmasa ve herhangi bir klasöre "takılı" olmasa bile, açık kalır ve içeriğine yine de birim adına erişilebilir; Örneğin
\\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\Windows\Explorer.exe
[:
..? Gerçekten mi?
DefineDosDevice()
hemen hemen her şeyi kabul eder, ancak çoğu uygulamayı kabul etmeye ikna etme şansınız yoktur. Deneyin subst [: C:\Users
, o zamandir [:
[:
mountvol.exe
Windows eşdeğerdir.
mountvol
makinemde basılanların örnek çıktısı . Bu yüzden çoğaltılması çok zor bir şey olmamalıdır. Düz metni buraya koyarsam, kaydırma çubuklu kutudan dolayı okumak zorlaşır :( Geliştirmek için cevabı düzenlemek istiyorsanız, devam edin :)
Evet, ancak genel olarak, otomatik olarak kullanılır (örneğin, bir USB sürücü ile).
Disk Yönetimi yardımcı programı (Bilgisayar Yönetimi'nin bir parçası), birimleri yönetmenize ve noktaları birleştirmenize olanak sağlar. Explorer ağ paylaşımları için de aynısını yapar. Çalıştırdığınız Windows sürümüne bağlı olarak komut satırı sürümleri (WIn 7'de diskpart.exe) vardır.
Safely Remove Hardware
menüden yapılır . Bu cihazları tekrar monte etmek için bağlantı kablosunu (USB / FireWire / eSATA) çıkarın ve tekrar takın veya USB / FireWire / etc'yi devre dışı bırakın. Aygıt Yöneticisi'nden bir aygıtı alın ve yeniden etkinleştirin; Windows otomatik olarak yeniden bağlayacaktır.
_ _ _ _ _ _ 'Nızı doldurmanız için en kısa ve en açık cevap "mount" dır. Linux dosya sistemlerini bağlar (ve bağlantısını keser) ve Windows da yapar.
Her biri, listeleme kabiliyetine sahip olmayan bir dizi karışık faktöre bağlı olarak bu süreci farklı derecelerde otomatikleştiriyor, ancak önbellek stratejilerinin, kullanıcı stilinin / tercihinin ve patentlerin, bu işlemin otomasyonu üzerinde önemli etkileri olduğunu düşünüyorum.