Skip to main content

2. Konsep Filesystem

Informasi Umum

  • Penulis: rorre
  • Semester: 0

Filesystem

Filesystem adalah cara suatu sistem operasi melakukan organisasi dan penyimpanan file di suatu hard drive atau alat penyimpanan lainnya. Konsep ini memberi fondasi untuk sistem operasi dalam menyimpan dan melacak bagaimana suatu file itu disimpan, dan hubungannya dengan file lain.

Catatan untuk pengguna Windows

Untuk memahami secara penuh mengenai konsep filesystem, kamu harus membuat Windows menampilkan extension suatu file. Hal ini dapat dilakukan dengan cara:

  1. Buka File Explorer
  2. Pada panel di atas, cari tab View atau Tampilan.
  3. Dalam grup Show/Hide atau Pelihatkan/Sembunyikan, centang kotak File name extensions atau Ekstensi nama file.
    Opsi ekkstensi nama file

File

File adalah berkas yang biasa kamu temui dalam mengoperasikan suatu komputer. Suatu file dapat menyimpan berbagai macam informasi. Biasanya, suatu file terdiri dari dua bagian, nama file dan juga extension-nya. Sebagai contoh, saat kamu membuka suatu dokumen word, kamu berinteraksi dengan suatu file dengan extension .docx (atau .doc).

Namun, perlu diketahui bahwa nama lengkap suatu file tidak perlu terbentuk dari dua bagian itu. Suatu file bisa saja bernama seperti .env atau hello, dan tersebut tetaplah nama yang valid. Jadi, jangan kaget apabila kamu menemukan suatu file yang terlihat tidak mempunyai "nama" atau extension.

Perlu diketahui juga bahwa tidak semua file dapat dibuka dengan cara mengeklik dua kali. Bisa saja suatu file harus dibuka dengan cara khusus sendiri. Oleh karena itu, apabila kamu tidak bisa membuka suatu file dengan klik dua kali, jangan panik! Coba lakukan GSGS terlebih dahulu untuk mencari tahu cara membukanya. Ada kemungkinan juga bahwa file tersebut tidak dimaksud untuk dibuka.

Penggunaan suatu file dapat dilakukan oleh program juga. Sehingga tidak hanya pengguna yang dapat melakukan akses dan mengubah suatu file. Sebagai contoh, suatu game RPG harus melakukan akses pada save file agar pemain bisa menyimpan progress dari permainannya. Kamu akan belajar bagaimana suatu aplikasi dapat mengakses suatu file pada topik Command Line nanti.

Folder

Folder adalah suatu "kotak" virtual yang digunakan untuk menyimpan file-file yang berkaitan. Tidak hanya itu, suatu folder bisa menyimpan folder lain, dimana folder tersebut dinamakan sub-folder. Pada umumnya, kamu ingin membuat suatu folder memiliki isi yang berkaitan dengan satu sama lain.

Sebagai contoh, kamu mempunyai folder bernama DDP-1, di mana dalam folder tersebut memiliki dua folder lagi, yaitu TP, dan Lab. Untuk masing-masing folder, kamu menyimpan source code dari setiap tugas TP atau Lab kamu. Berikut ilustrasi dari folder tersebut:

Contoh folder DDP-1

Path

Setelah mengenal folder dan file, filesystem tentu saja membutuhkan lokasi di mana folder atau file tersebut disimpan. Seperti pada contoh folder DDP-1 di atas, pada umumnya suatu filesystem menyimpan lokasi seperti suatu "tree", di mana untuk setiap folder atau file mempunyai suatu parent hingga root dari file system tersebut. Perlu diingat bahwa path dapat merepresentasikan folder maupun file.

Sebagai contoh, terdapat suatu file di C:\Users\User\halo.txt. Maka:

  • Parent dari file tersebut adalah folder C:\Users\User
  • Root dari file system tersebut adalah C:\

Apabila kamu menggunakan Linux/macOS, contoh tersebut dapat berupa /home/user/halo.txt. Sehingga:

  • Parent dari file tersebut adalah folder /home/user
  • Root dari file system akan selalu /

Representasi Path

Suatu path memiliki dua cara representasi: relative atau absolute. Suatu path yang direpresentasikan secara absolute pasti memiliki root-nya. Sebagai contoh, C:\Users\User\halo.txt untuk Windows dan /home/user/halo.txt untuk Linux/macOS. Path yang bersifat absolute pasti memiliki informasi total mengenai arah ke folder/file tersebut.

Suatu path yang bersifat relative hanya memiliki sebagian dari informasi path tersebut. Sebagai contoh, halo.txt dan user/halo.txt merupakan contoh valid dari relative path. Tidak hanya itu, relative path juga dapat digunakan untuk mereferensikan parent dari folder tersebut, menggunakan .. sebagai penanda. Kamu akan melihat contoh penggunaannya di bawah.

Untuk mengakses file yang direferensikan oleh relative path, perlu digabung dengan informasi lain yang diberikan program agar file yang diminta dapat ditemukan. Pada umumnya, relative path biasa digabungkan dengan folder dimana program itu dijalankan. Kamu akan mempelari hal ini lebih lanjut pada topik Command Line.

Contoh

Sebagai contoh, lihat kondisi folder berikut:

Folder

Isi dari folder foo adalah sebagai berikut: Subfolder folder

Pada Windows

Berikut cara merepresentasikan setiap file dan folder yang ada di dalam folder D:\contoh (relatif terhadap folder D:\contoh, seperti pada explorer):

AbsoluteRelativeJenis
D:\ ..Folder
D:\contoh.Folder
D:\contoh\bar.txtbar.txtFile
D:\contoh\foofooFolder
D:\contoh\foo\foobar.txtfoo\file2.txtFile

Apabila relatif terhadap folder D:\contoh\foo:

AbsoluteRelativeJenis
D:\ ..\..Folder
D:\contoh..Folder
D:\contoh\bar.txt..\bar.txtFile
D:\contoh\foo.Folder
D:\contoh\foo\foobar.txtfile2.txtFile

Pada Linux/macOS

Berikut cara merepresentasikan setiap file dan folder yang ada di dalam folder /d/contoh (relatif terhadap folder /d/contoh, seperti pada explorer):

AbsoluteRelativeJenis
/d/..Folder
/d/contoh.Folder
/d/contoh/bar.txtbar.txtFile
/d/contoh/foofooFolder
/d/contoh/foo/foobar.txtfoo/file2.txtFile

Apabila relatif terhadap folder /d/contoh/foo:

AbsoluteRelativeJenis
/d/../..Folder
/d/contoh..Folder
/d/contoh/bar.txt../bar.txtFile
/d/contoh/foo.Folder
/d/contoh/foo/foobar.txtfile2.txtFile

Quiz!

Jika terdapat suatu file pada /home/user/saya/cinta/pacil, dan kamu berada padda /home/user, apakah relative path file tersebut?