Apakah sistem file bagian dari sistem operasi?

9

Saya bertanya-tanya apakah sistem file pada perangkat penyimpanan adalah bagian dari OS?

Saya kira tidak. Sebaliknya itu adalah bagian dari perangkat penyimpanan, dan ada di luar OS apa pun meskipun dibuat oleh OS. Apakah pemahaman saya benar?

Namun di Wikipedia :

Sebagian besar sistem operasi menyediakan sistem file, karena sistem file adalah bagian integral dari sistem operasi modern.

Untuk LVM, apakah ini bagian dari OS? Jika ya, maka sistem file virtual yang dibangun di atas LVM adalah bagian dari OS?

Tim
sumber
Karena OS itu sendiri berada di dalam sistem file, saya akan mengatakan itu adalah bagian integral dari OS, tidak ada jalan lain.
Moab
Menurut alasan Anda, bukankah OS bagian dari sistem file lebih cocok daripada sebaliknya?
Tim
Sebenarnya saya pikir sistem file adalah persyaratan media penyimpanan, karena OS dapat berada di memori tanpa menggunakan hard disk atau perangkat penyimpanan lainnya.
Moab

Jawaban:

10

Sistem file itu sendiri, diwakili oleh urutan fisik informasi pada representasi-penyimpanan, tidak tergantung pada OS. OS berisi driver yang memungkinkannya untuk bekerja dengan sistem file. Beberapa sistem file mungkin hanya memiliki satu OS yang dapat berbicara dengannya, dan OS tersebut memiliki sistem file yang dikodekan ke dalamnya (pikirkan sistem file asli Novell NetWare); tetapi itu tidak menghentikan beberapa orang yang giat menulis driver seperti itu untuk OS lain hanya karena.

LVM bukan sistem file, ini adalah pengelola volume. Manajer volume, seperti sistem file, bergantung pada data yang disimpan pada presentasi penyimpanan logis untuk lebih menentukan bagaimana mengakses penyimpanan itu untuk volume logis lebih lanjut. Dalam kasus LVM, baik Linux dan BSD dapat menggunakan format penyimpanan yang sama untuk implementasi LVM masing-masing.

Manajer volume Windows adalah Disk Dinamis, dan beberapa orang giat telah membuat driver Linux untuk mengaksesnya.

Jika Anda akan mengambil satu set disk, instal Linux dari beberapa jenis, set up dengan LVM, instal beberapa ext3filesystem pada volume logis dan kemudian letakkan drive di mesin FreeBSD, bahwa mesin FreeBSD akan dapat membaca disk . Mungkin. Ini karena FreeBSD memiliki driver yang memahami tata letak fisik LVM dan ext3, dan mengimplementasikan memori in-OS yang diperlukan dan struktur akses yang diperlukan untuk berinteraksi dengannya.

The driver yang diperlukan untuk menafsirkan tata letak penyimpanan hampir selalu "di OS", tetapi penyimpanan sebenarnya tata letak sendiri tidak dianggap.

SysAdmin1138
sumber
4

Saya menjawab ini di ServerFault . Inilah jawabannya lagi:

Masalahnya di sini adalah kata "filesystem". Dalam dunia POSIX / Unix / Linux, digunakan untuk mengartikan beberapa hal berbeda.

  1. "Filesystem" kadang-kadang seluruh sistem file, di-root pada /dan seperti yang disajikan ke perangkat lunak aplikasi oleh kernel sistem operasi. Dengan makna ini, orang berbicara tentang sistem operasi POSIX yang memiliki " pohon sistem file tunggal ", misalnya.
  2. "Filesystem" kadang-kadang merupakan satu (atau lebih) irisan dari (atau beberapa) perangkat penyimpanan akses-langsung atau DASD (s) - satu atau lebih koleksi sektor-sektor disk yang berdekatan yang diformat sebagai volume tunggal dengan format yang diberikan - sebagaimana ditandai oleh beberapa skema partisi disk. Dengan makna ini, orang berbicara tentang, katakanlah, "memformat /usrsistem file saya ".
  3. "Filesystem" kadang-kadang merupakan pohon abstrak yang dapat digabungkan dengan direktori dan file, disajikan oleh driver sistem file (yaitu lapisan VFS) ke seluruh sistem. Dengan makna ini, orang berbicara tentang, katakanlah, "memasang sistem file proc pada /proc".

Prosa Wikipedia berarti # 1. Ini memang bagian dari sistem operasi, karena merupakan sistem operasi yang disediakan, dan abstraksi khusus sistem operasi yang disediakan untuk aplikasi perangkat lunak yang berjalan pada sistem operasi.

Arti # 2 bukan bagian dari sistem operasi. Ini adalah struktur data pada disk yang dapat dipahami oleh satu atau lebih sistem operasi. Struktur data pada disk untuk LVM, khususnya, menyediakan cara untuk mengiris satu atau lebih DASD menjadi satu atau lebih volume. Mereka bukan bagian dari sistem operasi itu sendiri. (Tetapi, sama halnya, "LVM" memiliki banyak makna, dan dapat berarti driver dan utilitas LVM dalam sistem operasi sebanyak itu dapat berarti struktur data pada disk yang dimanipulasi oleh driver dan utilitas tersebut. Mis. "Saya menjalankan LVM dari disk penyelamat. ")

Arti # 3 adalah abstraksi khusus sistem operasi yang disediakan oleh driver sistem file sistem operasi tertentu. Driver filesystem, memang, adalah bagian dari sistem operasi, meskipun mereka biasanya berbeda dan terpisah dari kernel sistem operasi .

JdeBP
sumber
2

Sistem file dibuat, dipelihara, dan digunakan oleh sistem operasi, tetapi Anda berhak menyimpulkan bahwa representasinya dapat eksis secara independen dari sistem operasi.

Zian Choy
sumber
Semua tanggapan berharga, yang ini adalah yang utama.
conner.xyz
2

Tidak ada definisi formal "sistem operasi". Beberapa digunakan untuk mempertahankan bahwa "sistem operasi" dan "API manajemen file" adalah satu dan sama, dengan OS tidak memiliki hal lain untuk dilakukan selain menyediakan penganalisa perintah. (Bagaimanapun, ini semua yang dilakukan oleh MS-DOS.)

Saya selalu berpendapat bahwa DOS bukan sistem operasi nyata - bahwa tugas sistem operasi adalah untuk mengabstraksikan dan memvirtualisasikan perangkat keras, dan mengelola sumber daya perangkat keras. DOS pada dasarnya tidak melakukan hal itu.

Seperti apakah sistem file adalah bagian dari OS atau bagian dari "perangkat penyimpanan", banyak tergantung pada apa yang Anda maksud dengan "sistem file". Ada tata letak fisik, seperti tata letak pada floppy disk atau CD, dan ada FUNGSI sistem file, yang tergantung pada memiliki beberapa entitas cerdas (CPU atau prosesor periferal semacam) untuk mengambil omong kosong pada disk dan kembali itu sebagai urutan byte yang berarti. Tata letaknya mungkin sesuai dengan beberapa standar, sehingga Anda dapat, misalnya, merekam CD pada satu perangkat dan membaca / memutarnya di perangkat lain. Pertanyaannya adalah apakah tata letak ini adalah "sistem file", atau apakah "sistem" itu berada di perangkat yang cukup pintar untuk membaca / menulis tata letak.

Dalam kebanyakan konteks komputer, seseorang menggunakan istilah "sistem file" untuk merujuk ke API yang memungkinkan Anda membaca / menulis file, dan kombinasi CPU dan perangkat periferal, yang beroperasi di bawah kendali beberapa OS, yang mengimplementasikan API tersebut - istilah ini biasanya tidak merujuk pada format fisik media, atau media individual, apakah dapat dilepas atau tidak.

Daniel R Hicks
sumber
Poin menarik.
Maks.
Bahkan di MS-DOS, OS-nya MSDOS.SYS, dan shell command-line-nya COMMAND.COM.
user1686
1

Implementasi khusus adalah bagian dari OS. Gagasan abstrak, spesifikasi, dan data yang disimpan tidak.

pengguna541686
sumber
1

Disk drive dan perangkat seperti drive disk adalah "bodoh." Anda memintanya untuk LBA, itu memberi Anda kembali 512, 2048, atau 4096 byte yang dikandungnya; begitu pula sebaliknya untuk menulis.

Lapisan filesystem memungkinkan Anda mengatakan "Saya ingin c: \ pengguna \ publik \ dokumen \ apa pun.doc" dan melakukan operasi streaming untuk itu (buka, baca, tulis, cari, tutup) - ini menerjemahkan dari lokasi yang dapat dialamatkan nama ke serangkaian permintaan untuk membaca / menulis LBA.

Jadi lapisan sistem file memiliki dua sisi, satu sisi yang berkomunikasi dengan perangkat (atau blok) seperti drive disk, dan sisi lain yang berbicara dengan sistem operasi. Di sinilah kekhususan sistem operasi ikut berperan. Biasanya sisi perangkat blok sistem file adalah driver perangkat, dan sisi sistem operasi adalah API yang dapat digunakan oleh aplikasi. Tetapi ini hanya antarmuka dan tidak benar-benar harus mempengaruhi operasi yang mendasari lapisan sistem file.

Semua sistem file menyebabkan data tambahan ditulis dan membaca data file di luar, untuk melacak informasi tentang file, yaitu untuk merekam izin, atribut, dll.

Ada sedikit masalah ayam-dan-telur dengan boot - karena file sistem operasi disimpan pada sistem file, tetapi bagaimana mereka dimuat jika lapisan sistem file belum aktif? Linux memecahkan masalah ini dengan disk ram awal atau dengan membangun kode sistem file sebagai bagian dari kernel. Windows memecahkan masalah ini dengan memberikan bootloader Windows kemampuan untuk membaca partisi FAT dan NTFS. Bootloader dapat menjadi bodoh, seperti kebanyakan bootloader BIOS klasik yang hanya memuat LBA 0 dan menjalankannya dan mengharapkan kode itu untuk mengambil setelahnya, atau cukup cerdas dan dengan lapisan sistem file kecil sendiri, seperti UEFI, U-boot, dll.

LVM bukan sistem file. Dibutuhkan satu atau lebih perangkat blok dan abstrak ke perangkat blok "virtual" lain (in /dev/mapper- anything in /dev/mapperadalah perangkat blok virtual). Anda meletakkan filesystem "di atas" sebuah LVM dengan cara yang sama Anda akan meletakkan filesystem "di atas" partisi. LVM adalah lapisan lain di antara satu atau lebih driver perangkat dan sistem file, mengubah membaca dan menulis ke LBA pada perangkat blok virtual ke satu atau lebih perangkat blok lainnya. Ya, LVM dapat menjadi perangkat blok virtual dan Anda dapat memiliki kaskade.

LawrenceC
sumber