cari
Rumahtutorial komputerpengetahuan komputerIngin mengetahui cara sistem fail Linux berfungsi?

Ingin mengetahui cara sistem fail Linux berfungsi?

Feb 20, 2024 am 09:54 AM
linuxJadual kandungansistem failcapaian dataPenyimpanan berterusan

Ingin mengetahui cara sistem fail Linux berfungsi?

Sistem fail Linux ialah komponen teras sistem pengendalian, dan mekanisme pengendaliannya adalah perkara yang perlu difahami dan dikuasai oleh pengaturcara. Cakera menyediakan storan berterusan yang paling asas untuk sistem, dan sistem fail menyediakan semua fail dalam sistem asas cakera Di Linux, semuanya adalah fail Bukan sahaja fail dan direktori biasa, tetapi juga peranti blok, soket, paip, dan lain-lain, mesti diuruskan melalui sistem fail bersatu. Hari ini kita akan bercakap bersama: Bagaimanakah cakera dan sistem fail berfungsi?

Nod indeks dan entri direktori

Dalam sistem fail Linux, metadata fail termasuk: entri direktori, nod indeks dan blok data.

  • Entri direktori: dirujuk sebagai dentry, digunakan untuk merekodkan nama fail, penunjuk nod indeks dan kaitan dengan entri direktori lain. Berbilang entri direktori yang berkaitan membentuk struktur direktori sistem fail. Entri direktori ialah struktur data memori yang dikekalkan oleh kernel, jadi ia sering dipanggil cache kemasukan direktori (Cache).
  • Nod indeks: dirujuk sebagai inod, digunakan untuk merekodkan metadata fail, termasuk nombor inod, saiz fail, kebenaran akses, tarikh pengubahsuaian, lokasi data, bilangan pautan, dsb. Maklumat nod indeks akan disimpan pada cakera untuk penyimpanan, menduduki ruang cakera.
  • Blok data: dirujuk sebagai blok, tempat data fail disimpan. Unit storan terkecil cakera dipanggil sektor Setiap sektor menyimpan 512 bait, yang bersamaan dengan 0.5KB Apabila sistem pengendalian membaca cakera keras, ia tidak akan membacanya mengikut sektor, yang terlalu tidak cekap membaca pelbagai sektor secara berterusan pada satu masa, iaitu membaca satu "blok" pada satu masa. "Blok" yang terdiri daripada pelbagai sektor ini ialah unit akses fail terkecil. Saiz "Sekat", yang paling biasa ialah 4KB (lapan sektor).

Untuk mempercepatkan akses fail, nod indeks biasanya dimuatkan ke dalam memori, dan cakera keras dibahagikan kepada tiga kawasan storan: blok super, kawasan nod indeks dan kawasan blok data apabila diformatkan.

  • Super block digunakan untuk menyimpan maklumat terperinci sistem fail, seperti bilangan blok, saiz blok, blok percuma, dll.
  • Kawasan nod indeks, digunakan untuk menyimpan nod indeks.
  • Kawasan blok data, digunakan untuk menyimpan data fail atau direktori.

Sistem Fail Maya

Sistem fail maya (VFS, Sistem Fail Maya) sistem Linux ialah lapisan abstraksi utama yang menyediakan pengguna dan aplikasi dengan antara muka sistem fail yang konsisten, membolehkan mereka mengakses pelbagai jenis sistem fail dengan cara yang bersatu perlu bimbang tentang butiran pelaksanaan sistem fail asas.

Kedua-dua program pengguna dan perpustakaan glibc adalah milik ruang pengguna, dan operasi fail diselesaikan dengan memanggil fungsi lapisan panggilan sistem (SCI). Fungsi ini adalah antara muka yang disediakan oleh kernel Linux untuk pengguna meminta operasi daripada sistem. Sebagai contoh, arahan kucing dalam sistem akan memanggil fungsi open() untuk membuka fail, kemudian memanggil fungsi read() untuk membaca kandungan fail, dan akhirnya memanggil fungsi write() untuk mengeluarkan kandungan fail ke konsol . Jenis sistem fail biasa boleh dibahagikan kepada beberapa kategori yang luas.

  • Berdasarkan cakera setempat: EXT3, EXT4, XFS, OverlayFS, dll. Ciri sistem fail jenis ini ialah data disimpan terus dalam cakera yang dipasang secara tempatan pada komputer, dengan prestasi yang baik dan tiada penggunaan akses IO rangkaian.
  • Berdasarkan sistem fail rangkaian: NFS, CIFS/SMB, CephFS, GlusterFS, dll. Ciri-ciri fail jenis ini ialah ia membenarkan pengguna mengakses dan mengurus fail melalui rangkaian. Pengedaran, merentas platform, fleksibiliti dan skalabiliti adalah kelebihan terbesar mereka.
  • Sistem fail berasaskan memori: tmpfs, ramfs, /proc, dsb. Sistem fail berasaskan memori ini biasanya digunakan untuk tujuan tertentu, seperti storan fail sementara, caching, akses data pantas, dsb. Mereka menyediakan penyelesaian berprestasi tinggi untuk membaca dan menulis fail dalam ingatan, tetapi mereka juga perlu sedar tentang had memori dan turun naik data.

Fail I/O

Kami membahagi dan memformat cakera untuk mencipta pelbagai jenis sistem fail, yang mesti dipasang pada direktori tertentu pada VFS Linux sebelum ia boleh digunakan oleh sistem. Terdapat jenis I/O yang berbeza untuk operasi membaca dan menulis fail, dan program aplikasi memilih kaedah yang sesuai mengikut keperluan.

Timbal lwn. I/O Tidak Tertimbal

  • Apa yang dipanggil tiada penimbalan tidak bermakna kernel tidak menyediakan penimbalan, tetapi hanya panggilan sistem yang mudah, bukan panggilan perpustakaan berfungsi. Kernel sistem menyediakan penimbal blok untuk membaca dan menulis ke cakera Apabila menggunakan fungsi tulis untuk menulis data kepadanya, panggilan sistem dipanggil terus untuk menulis data ke penimbal blok dan beratur apabila penampan blok mencapai a jumlah tertentu, penimbal blok akan beratur Data ditulis ke cakera. Oleh itu, apa yang dipanggil unbuffered I/O bermakna proses tersebut tidak menyediakan fungsi buffering. Setiap kali fungsi tulis atau baca dipanggil, ia dipanggil terus oleh sistem. (Disampan oleh kernel).
  • Buffered I/O bermaksud proses itu menambah baik aliran input dan output serta menyediakan penimbal strim. Apabila menggunakan fungsi tulis untuk menulis data, data pertama kali ditulis ke dalam penimbal strim Apabila keadaan tertentu dicapai, seperti penimbal strim penuh, data akan dihantar ke penimbal blok yang disediakan oleh kernel sekali gus. kemudian ditulis melalui penimbal blok ke dalam cakera. (penimbalan berganda)
  • Oleh itu, I/O buffer akan memerlukan lebih sedikit panggilan sistem daripada I/O yang tidak buffer apabila menulis jumlah data yang sama ke cakera.

I/O terus dan I/O tidak langsung

  • I/O Terus: Aplikasi mengakses data cakera secara langsung tanpa melalui penimbal kernel Tujuannya adalah untuk mengurangkan salinan data daripada penimbal kernel ke cache program pengguna.
  • I/O Tidak Langsung: Apabila fail dibaca atau ditulis, ia mesti melalui cache halaman sistem dahulu, dan kemudian ditulis ke cakera melalui kernel atau panggilan sistem tambahan.
  • Untuk I/O langsung, jika data yang diakses tiada dalam cache aplikasi, maka data akan dimuatkan terus dari cakera setiap kali, dan kecekapan pemuatan langsung ini akan menjadi lebih perlahan. Walau bagaimanapun, untuk aplikasi seperti sistem pengurusan pangkalan data, mereka lebih cenderung untuk memilih mekanisme caching mereka sendiri, kerana sistem pengurusan pangkalan data sering mengetahui data yang disimpan dalam pangkalan data lebih baik daripada sistem pengendalian, dan I/O langsung adalah lebih sesuai.

Menyekat I/O dan tidak menyekat I/O

  • Menyekat I/O: Proses aplikasi disekat apabila memanggil operasi I/O Ia hanya kembali selepas menunggu data dikendalikan untuk disediakan dan disalin ke penimbal proses permohonan. Ciri-cirinya ialah: kesukaran pelaksanaan yang rendah, pembangunan aplikasi yang mudah, dan sesuai untuk pembangunan aplikasi rangkaian dengan konkurensi kecil.
  • I/O tidak menyekat: bermakna selepas aplikasi menjalankan operasi I/O, ia tidak akan menyekat urutan semasa dan boleh terus melaksanakan tugas lain, dan kemudian mendapatkan keputusan panggilan melalui undian atau pemberitahuan acara. Ciri-cirinya ialah: agak kompleks. Sesuai untuk pembangunan aplikasi rangkaian yang mempunyai jumlah concurrency yang kecil dan tidak memerlukan respons tepat pada masanya

I/O segerak dan tak segerak

  • I/O Segerak: bermakna selepas aplikasi melakukan operasi I/O, ia mesti menunggu sehingga keseluruhan I/O selesai sebelum ia boleh mendapatkan respons I/O.
  • I/O tak segerak: bermakna selepas aplikasi menjalankan operasi I/O, ia tidak perlu menunggu untuk selesai dan respons selepas selesai, tetapi boleh terus melaksanakan. Selepas I/O ini selesai, maklum balas akan dimaklumkan kepada permohonan dalam bentuk pemberitahuan acara.

Beberapa pengetahuan umum tentang fail

Masih terdapat banyak ruang yang tinggal pada cakera, dan ruang tidak mencukupi untuk fail dan direktori baharu.

  • Idea penyelesaian masalah: Terdapat kebarangkalian tinggi bahawa terdapat terlalu banyak fail kecil dan inod telah digunakan. Anda boleh menggunakan df -i.

Statistik penggunaan cakera keras antara du dan df adalah tidak konsisten.

  • du mengira saiz setiap fail yang direkodkan oleh sistem fail, dan kemudian mengumpul jumlah saiz, yang diperoleh melalui sistem fail. df terutamanya membaca maklumat penggunaan cakera keras daripada superblock (superblock) Apa yang df peroleh ialah penggunaan blok cakera. Keadaan ini berkemungkinan besar disebabkan oleh fail yang dipadamkan, tetapi proses lain sedang menggunakannya (memiliki pemegang), yang boleh didapati melalui lsof | grep deleted. Apabila proses berhenti atau dimatikan, ruang ini akan dilepaskan.

Apabila kami menanyakan kapasiti cakera, mengapa saiz Used+Avail sentiasa lebih kecil daripada jumlah kapasiti (SAIZ).

  • Untuk mengelakkan kecemasan, sistem fail ext Linux akan menempah sebahagian daripada ruang cakera keras Nilai simpanan khusus boleh dilihat melalui tune2fs -l [dev_name] | , yang dikhaskan di sini Ruang akan dikira oleh df ke dalam ruang yang digunakan, menyebabkan statistik tidak konsisten antara df dan du. Jika anda perlu melaraskan saiz ruang yang dikhaskan, kami boleh menggunakan tune2fs -m [saiz] [dev_name] untuk membuat pelarasan.

Atas ialah kandungan terperinci Ingin mengetahui cara sistem fail Linux berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:每日运维. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Perbezaan antara pemulihan RAID dan pemulihan cakera kerasPerbezaan antara pemulihan RAID dan pemulihan cakera kerasApr 17, 2025 am 12:50 AM

Pemulihan data sentiasa menjadi topik yang dipanaskan. Untuk berjaya memulihkan data dari peranti anda, anda harus tahu bagaimana ia menyimpan data. Anda boleh mempelajari perbezaan antara pemulihan RAID dan pemulihan cakera keras dari pos php.cn ini.

Microsoft Word Memadamkan Teks Windows 10/11? Betulkan sekarang!Microsoft Word Memadamkan Teks Windows 10/11? Betulkan sekarang!Apr 17, 2025 am 12:48 AM

Adakah anda mengalami teks perkataan yang hilang semasa menaip? Beberapa huruf atau bahkan perenggan mungkin hilang dari dokumen anda. Apa yang salah dengannya? Dalam siaran ini dari laman web php.cn, kami akan melihat dengan lebih dekat perkataan yang memadamkan masalah teks secara automatik

Bagaimana untuk memperbaiki kod ralat LC-208 pada Overwatch 2? Berikut adalah panduan! - MinitoolBagaimana untuk memperbaiki kod ralat LC-208 pada Overwatch 2? Berikut adalah panduan! - MinitoolApr 17, 2025 am 12:47 AM

Apabila anda cuba log masuk ke Overwatch 2, anda boleh menerima mesej ralat LC-208 dan ia menghalang permainan anda daripada menyambung ke pelayan permainan. Siaran ini dari Php.CN memperkenalkan cara membetulkan ralat Overwatch LC-208.

Google Drive Hilang dari File Explorer - Kelulusan MudahGoogle Drive Hilang dari File Explorer - Kelulusan MudahApr 17, 2025 am 12:46 AM

Umumnya, anda boleh dengan cepat mengakses dan mengedit fail Google Drive dari File Explorer. Walau bagaimanapun, kadang -kadang anda mungkin menghadapi masalah "Google Drive hilang dari File Explorer". Di sini siaran ini di php.cn memberitahu anda bagaimana untuk mendapatkan google drive untuk muncul i

Bagaimana untuk memperbaiki skrin selamat datang Windows 7 perlahan? Petua ada di sini!Bagaimana untuk memperbaiki skrin selamat datang Windows 7 perlahan? Petua ada di sini!Apr 17, 2025 am 12:45 AM

Mengapa komputer saya di skrin selamat datang sekian lama? Bagaimana untuk memperbaiki skrin selamat datang Windows 7 perlahan? Jika anda masih menjalankan Windows 7 di PC anda dan memenuhi isu ini, anda berada di tempat yang betul dan pelbagai penyelesaian akan diberikan di sini oleh Php.Cn.

Bagaimana Membuka Pengurus Kredensial di Windows 11? 6 cara untuk anda! - MinitoolBagaimana Membuka Pengurus Kredensial di Windows 11? 6 cara untuk anda! - MinitoolApr 17, 2025 am 12:44 AM

Mahu menggunakan alat pengurusan kata laluan terbina dalam-pengurus kelayakan untuk menguruskan kelayakan log masuk anda untuk web dan aplikasi? Bagaimana anda boleh membuka Pengurus Kredensial di Windows 11? Dalam siaran ini, Php.cn mengumpulkan pelbagai cara untuk mengakses utiliti ini, dan biarkan '

Cara Mengaktifkan/Melumpuhkan Pengimbasan Berkala di Microsoft Defender - MinitoolCara Mengaktifkan/Melumpuhkan Pengimbasan Berkala di Microsoft Defender - MinitoolApr 17, 2025 am 12:43 AM

Microsft Defender Antivirus mempunyai ciri yang dipanggil Pengimbasan Berkala, yang boleh diaktifkan apabila anda telah memasang produk antivirus lain pada peranti Windows 11/10. Sekarang, jawatan ini dari php.cn mengajar anda bagaimana untuk membolehkan/melumpuhkan pengimbasan berkala di WI

Teknik Pintar untuk Hiperpautan Excel tidak berfungsi dengan kemenanganTeknik Pintar untuk Hiperpautan Excel tidak berfungsi dengan kemenanganApr 17, 2025 am 12:42 AM

Pernahkah anda menghadapi masalah "Hyperlink Excel tidak berfungsi"? Adakah anda tahu bagaimana menanganinya? Dalam jawatan ini dari php.cn, anda boleh mendapatkan beberapa penyelesaian yang layak untuk menyingkirkan masalah ini. Dan anda akan mengetahui alat pemulihan data profesional t

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa