HOME


Top 10 List of Week 03

  1. Apa itu bash_aliases?
    Pada week 3 ini, saya cukup tertarik dengan pembahasan bash_aliases ini. Sebelumnya, yang saya tau adalah hanya mengenai alias, dimana kita dapat mempersingkat command yg biasa kita tulis adalah panjang, tetapi jadi lebih singkat. Pada macOs, saya biasanya menulis “sudo nano .zprofile” untuk mengubah atau menambah alias yang dapat membantu produktivitas. Tetapi, sebenarnya apa itu bash_aliases? Bash alias adalah sebuah metode untuk melengkapi atau mengganti perintah Bash dengan yang baru. bash alias ini dapat membantu kita sebagai user untuk menyesuaikan pengalaman kita menggunakan terminal. Misalnya, seperti yang kita ketahui, jika kita ingin mengakses tunnel, kita perlu menulis panjang kali lebar kali tinggi, tetapi dengan adanya bash alias ini, kita dapat dengan mudah mengakses tunnel hanya tinggal mengetik “tunnel” pada terminal kita. Bash alias ini sifatnya harus dibuat sendiri, karena apabila kita melakukan copy langsung, kita akan kesulitan sendiri untuk menyesuaikannya dengan terminal sistem operasi kita. Seperti yang dicontohkan pada tutorial, dimana kita copy .bash_aliases yang ada, tetapi isinya merefer kepada user cbkadal (bukan user osp kita).

  2. File-System Interface
    Dalam sistem operasi, file merupakan aspek yang paling terlihat, yang mana terdapat mekanisme dalam penyimpanan online dan diakses ke data dan program sistem operasi dan semua pengguna sistem komputer. File system sendiri adalah suatu implementasi file dengan menggunakan disk. File dapat dipetakan oleh system operasi ke perangkat fisik. Perangkat fisik ini, merupakan suatu perangkat penyimpanan yang sifatnya non-volatile sehingga data yang disimpan tidak akan hilang meskipun komputer tersebut sedang tidak dijalankan (mati). Contohnya, kita bisa membuat file, menulis file, membaca file, bahkan menghapus file. File juga memiliki beberapa atribut, mislanya terdapat nama, tipe file (.java, .pdf, .sh, .txt, .mp4, .3gp, dll) lokasi penyimpanan yg bisa kita track melalu command pwd pada terminal, ukuran file nya, proteksi yang artinya siapa yang dapat mengakses file tersebut, serta identifikasi file, misalnya kapan file tersebut dibuat (dalam bentuk jam dan tanggal) maupun kapan terakhir dilakukan modifikasi pada file tersebut.

  3. File-System Structure
    Disks menyediakan sebagian besar penyimpanan sekunder tempat file sistem dipertahankan. Terdapat dua karakteristik, yaitu:
    • Disk dapat ditulis ulang pada tempatnya, artinya kita dapat membaca satu blok dari disk, memodifikasi, serta menuliskannya kembali pada blok yang sama.
    • Disk dapat mengakses langsung setiap konten/informasi dari setiap blok. Sehingga, cukup memudahkan kita untuk mengakses file baik secara terurut, acak, serta saat beralih dari suatu file ke file lainnya dengan drive yang menggerakan pointer untuk membaca maupun menulis. </a> file sistem memiliki lapisan secara terurut dari dalam, yaitu application programs > logical file system > file-organization module > basic file system > I/O control > devices.
  4. Metode Akses File
    Dalam mengakses file, ada 3 metode yang biasa dikenal.
    • Sequiential Access Method, adalah metode akses file yang paling sederhana. Informasi pada file diakses secara berurutan, jadi setiap file selanjutnya akan diakses setelah file yang sebelumnya. Metode akses ini berdasarkan dari model tape dari suatu file yang bekerja dengan perangkat Sequiential Accesse atau Random Access. Misal operasi yang digunakan yaitu, read next, write next, dan reset.
    • Direct Access Method, adalah metode akses file yang berdasarkan model disk dari suatu file, yang dapat memungkinkan kita untuk membaca dan menulis file secara acak ke sembarang blok file. Operasi file dimodifikasi untuk memasukan nomor blok sebagai parameter file yang ingin dilakukan modifikasi. Nomor blok ditentukan oleh user merupakan nomor blok relatif, misalnya indeks relatif ke awal dari file.
    • Other Access Method, adalah metode akses file yang sebenarnya dapat merefer seperti metode direct access method. Metode tambahan ini biasanya melibatkan konstruksi untuk file. Jika kita ingin menentukan masukan dalam file, kita perlu mencari indeks, dan kemudian menggunakan pointer untuk mengakses file secara langsung dan menemukan kira-kira masukan apa yang tepat. Indeks suatu file dapat disimpan dalam memori, yang jika file nya besar, indeks juga akan relatif besar untuk disimpan didalam memori. Kita bisa memecahkannya dengan membuat file indeks didalam file indeks. Misalnya, kita memiliki file indeks primer yang berisi pointer ke file indeks sekunder, yang menunjuk ke data item aktual. Mungkin, implementasinya adalah mirip dengan penggunaan folder pada sistem komputer kita, dimana kita dapat mengelompokkan file yang begitu banyak, ke folder-folder yang mudah kita kenali dalam pencarian.
  5. File-System Hierarchy Standard
    File-System Hierarchy Standard adalah sebuah aturan standar penempatan lokasi berkas dan direktori yang ada pada sistem operasi. Dengan adanya standar ini, maka pengguna dan perangkat lunak dapat mengetahui dimana letak suatu berkas atau direktori yang tersimpan di suatu komputer. File-System Hierarchy ini dapat dibuat dengan cara:
    • Menentukan petunjuk-petunjuk dasar untuk setiap area pada sistem berkas.
    • Menentukan ebrkas dan direktori minimum yang dibutuhkan.
    • Menandai setiap exception.
    • Menandai setiap kasus spesifik yang pernah mengalami konflik.
  6. Virtual File-System
    adalah pemrograman yang membentuk antarmuka antara kernel dan sistem file yang lebih konkret. Virtual File-System berfungsi sebagai lapisan abstraksi yang memberikan akses aplikasi ke berbagai jenis sistem file dan perangkat penyimpanan lokal dan jaringan. Oleh karena itu, Virtual File-System juga dikenal sebagai saklar dari sistem file virtual. VFS ini juga mengelola penyimpanan dan pengambilan data antara sistem operasi dengan sub-sistem penyimpanan. VFS memelihara cache pencarian direktori untuk mengaktifkan lokasi yang mudah dari direktori yang sering diakses.

  7. Directory Implementation
    Pemilihan algoritma alokasi direktori dan manajemen direktori secara signifikan dapat mempengaruhi efisiensi, kinerja, serta performance pada file system. Algoritma implementasi direktori diklasifikasikan menurut struktur data yang digunakan. Terdapat dua algoritma yang biasa digunakan, yaitu Linear List dan Hash Table

  8. Allocation Methods
    Sebenarnya, bagaimana cara mengalokasikan ruang untuk file-file agar ruang penyimpanan dapat digunakan secara efektif dan file dapat diakses dengan cepat? Ternyata, terdapat 3 metode utama pengalokasian ruang penyimpanan sekunder yang biasa digunakan, yaitu:
    • Contiguous Allocation, alokasi ini mengharuskan setiap file menempati sekumpulan blok yang berdekatan pada suatu perangkat. Alamat perangkat menentukan pengurutan linear pada perangkatnya.
    • Linked Allocation, alokasi ini dapat menyelesaikan masalah alokasi yang berdekatan, dimana setiap file adalah daftar blok penyimpanan yang dikaitkan, blok dapat tersebar. Direktori berisi penunjuk ke blok pertama dan terakhir pada file.
    • Indexed Allocation, ketika kita memperhatikan mengenai Linked Allocation, bahwa alokasi tersebut dapat menyelesaikan masalah fragmentasi eksternal dan deklarasi ukuran dari Contiguous Allocation. Tetapi, jika kita tidak terdapat FAT, Linked Allocation tidak dapat mendukung akses langsung yang efisien, karena pointer ke blok tersebar dengan blok itu sendiri di seluruh disk dan harus diambil secara berurutan. Indexed Allocation memecahkan masalah ini dengan menyatukan semua penunjuk kedalam satu lokasi, yaitu blok indeks. Setiap file memiliki blok indeksnya sendiri, yang merupakan array dari alamat blok penyimpanan.
  9. Apa itu FUSE?
    File-System in User Space atau biasa dikenal FUSE adalah sebuah framework di mana komponen kernel berinteraksi dengan program aplikasi, file sistem mode pengguna, serta menampilkannya ke aplikasi sehingga terlihat seperti layaknya file sistem. Dalam FUSE, kita tidak perlu melakukan editing kernel code. FUSE biasanya tersedia di banyak sistem operasi, seperti Linux, FreeBSD, OpenSolaris, Minix 3, serta macOs.

  10. Free Space Management
    Adalah bagaimana sistem file bertanggung jawab untuk mengalokasikan ruang blok yang masih kosong ke file. Untuk menggunakan kembali ruang kosong pada blok yang dilepaskan dari penghapusan file, manajemen ruang kosong menjadi suatu hal yang cukup penting yaitu dengan cara men-trace blok mana yang kosong pada disk. Daftar ruang kosong dapat diimplementasikan sebagai Bitmap or Bit vector, Linked List, Grouping, dan Counting.