Proc'a neden dosya sistemi denir?


20

procDosya sistemi çekirdeği Linux sisteminde her işleme hakkında bilgileri iletmek için izin verir.

Neden procdosya sistemi denir? Gerçek bir dosya sistemi gibi değil ext4. Sadece çalışan işlemler hakkında bilgi içeren bir dosya koleksiyonudur.

Yanıtlar:


25

/prockullanıcı işlemleri tanıdık sistem çağrıları ve kütüphane çağrıları gibi olan o gezinebilirsiniz çünkü bir dosya sistemidir opendir(), readdir(), chdir()ve getcwd(). Hatta open(), read()ve close()görünür "dosya" bir sürü iş /proc. Çoğu amaç ve neredeyse tüm amaçlar için, /procdosyalarının bazı disklerde blok işgal etmemesine rağmen, bir dosya sistemidir.

Sanırım hepimiz şu anda kullandığımız “dosya sistemi” teriminin hangi tanımını kullandığımızı açıklığa kavuşturmalıyız. Ext4 bağlamında, “dosya sistemi” yazdığımızda, muhtemelen bir disk bloğu düzeninin kombinasyonu, diskte bir yerde bulunan disk blokları hakkında meta veri bilgilerinin belirtilmesi ve bununla ilgili koddan bahsediyoruz. bu disk üzerinde düzen. Bağlamında /usr, /tmp, /var/runve böylece bir anlayış ya da bazı şeyleri isim nasıl ortak bir kavramsallaştırma hakkında Bizler yazma, üzerinde. “Dosya sistemi” teriminin bu iki kullanımı aslında oldukça farklıdır. /procbelirttiğiniz gibi, ikinci tür “dosya sistemi” dir.


9
/procDosyaların her zaman disk destekli (veya bant destekli veya CD destekli veya her türlü desteklenmediğini düşünmediği sürece dosyalar için korkutucu alıntılar kullanmanın bir nedeni yoktur9. Her zaman değil - RAM disklerini düşünün. örneğin "gerçek" bir dosyaya sahip bir açma / yazma / kapatma dizisi /home, her zaman, bu dosyanın durumunu kalıcı olarak yansıtmayı amaçlayan ilgili değişikliklerin ondisk depolama alanının zaten yapılmış ve tamamlanmış olduğu anlamına gelmeyebilir
Hagen von Eitzen

10
tl; dr: çünkü bir dosya sistemi mi?
Jörg W Mittag

1
Bunun "Linux'ta her şey bir dosyadır" ifadesini de açıkladığını unutmayın.
dr01

Ekranın "masaüstü" olmasına benzer bir dosya sistemidir. Bilgisayar terminolojisi metaforlarla doludur.
Barmar

18

sadece bilgi içeren bir dosya alanı

Ama bu tam olarak bir dosya sistemi ne olduğunu . Dosya sistemlerinin yazılabilir olması ve kalıcı depolama alanında bulunması gerekmez.

Not: procfs(çekirdeğin sözde dosya sistemi uygulaması) ile geleneksel bağlama noktası arasında bir ayrım vardır /proc. Teorik olarak bir procfsyere monte edebilirsiniz , ancak bu nadirdir. Bu nedenle, insanlar /procgerçekten ne zaman kastedildikleri hakkında konuşurlar procfs.

procfssözde dosya sistemi olarak adlandırılır, çünkü bir dosyadaki dosyalar procfsolağan dosya sistemi işlemleri tarafından oluşturulmaz, ancak çekirdeğin başka bir yerinde olup bitenlere dayanarak dosya sistemi uygulaması tarafından eklenir ve kaldırılır.


Peki neden / etc / boot dosya sistemi denmiyor ???
Makhlouf GHARBI

7
Çünkü bunlar bir dosya sistemindeki dizinlerdir. (Eh, /bootsıklıkla ayrı bir dosya sistemi, ama ayrı değil tür dosya sisteminin.)
CJM

9

Veriler dosya sistemleri için kullanılan mekanizmalar aracılığıyla erişilebilecek şekilde düzenlenmişse, her şeyi bir dosya sistemi olarak adlandırabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.