Tabel Alokasi Berkas (bahasa Inggris: File Allocation Table) adalah sebuah sistem
Berkas yang menggunakan struktur
Tabel Alokasi Berkas sebagai cara dirinya beroperasi. Untuk penyingkatan, umumnya orang menyebut
Tabel Alokasi Berkas
sebagai FAT saja. Kata FAT sendiri adalah singkatan dari File Allocation Table, yang jika diterjemahkan secara bebas ke dalam Bahasa Indonesia menjadi
Tabel Alokasi Berkas. Arsitektur FAT sekarang banyak digunakan secara luas dalam sistem komputer dan kartu memori yang digunakan dalam kamera digital atau pemutar media portabel.
FAT pertama kali dikembangkan oleh Bill Gates dan Marc McDonald, pada tahun 1976-1977. Sistem
Berkas ini merupakan sistem
Berkas utama untuk sistem operasi yang ada saat itu, termasuk di antaranya adalah Digital Research Disk Operating System (DR-DOS), OpenDOS, FreeDOS, MS-DOS, IBM OS/2 (versi 1.1, sebelum berpindah ke sistem HPFS), dan Microsoft Windows (hingga Windows Me). Untuk disket, FAT telah distandardisasikan sebagai ECMA-107 dan ISO/IEC 9293. Standar-standar tersebut hanya mencakup FAT12 dan FAT16 tanpa dukungan nama
Berkas panjang, karena memang beberapa bagian dalam standar nama file panjang di dalam sistem
Berkas FAT telah dipatenkan.
Sistem
Berkas ini digunakan oleh sistem operasi MS-DOS (hanya versi FAT12 dan FAT16), Windows (hampir semua versi Windows; untuk versi FAT yang didukung olehnya lihat pada bagian versi), GNU/Linux, dan masih banyak sistem operasi lainnya yang juga mendukung, termasuk Macintosh Mac OS/X.
Versi
Ada beberapa versi dari sistem
Berkas FAT, yang dibedakan dari berapa banyak unit
Alokasi yang didukungnya, yakni sebagai berikut:
FAT12
FAT16
FAT32
exFAT
= FAT12
=
FAT12 adalah sistem
Berkas yang menggunakan ukuran unit
Alokasi yang memiliki batas hingga 12-bit, sehingga hanya dapat menyimpan maksimum hingga 212 unit
Alokasi saja (4096 buah). Sistem
Berkas ini adalah sistem
Berkas asli dari FAT yang pertama kali digunakan dalam sistem operasi MS-DOS.
Karena beberapa sistem operasi Windows menggunakan ukuran unit
Alokasi sistem
Berkas yang dibuat berdasarkan ukuran sektor (kelipatan 512 byte, dari 1 sektor hingga 16 sektor), FAT12 memiliki batasan pada kapasitasnya, yakni hingga 32 Megabyte. Karena itulah, FAT12 umumnya hanya digunakan sebagai sistem
Berkas untuk media penyimpanan floppy disk.
Tabel berikut berisi informasi sistem operasi apa saja yang mendukung sistem
Berkas FAT12.
= FAT16
=
FAT16 adalah sistem
Berkas yang menggunakan unit
Alokasi yang memiliki batas hingga 16-bit, sehingga dapat menyimpan hingga 216 unit
Alokasi (65536 buah). Sistem
Berkas ini memiliki batas kapasitas hingga ukuran 4 Gigabyte saja.
Ukuran unit
Alokasi yang digunakan oleh FAT16 bergantung pada kapasitas partisi yang hendak diformat: jika ukuran partisi kurang dari 16 Megabyte, maka Windows akan menggunakan sistem
Berkas FAT12, dan jika ukuran partisi lebih besar dari 16 Megabyte, maka Windows akan menggunakan sistem
Berkas FAT16.
Tabel berikut berisi informasi sistem operasi apa saja yang mendukung sistem
Berkas FAT16.
= VFAT (Virtual FAT)
=
VFAT adalah sebuah variasi sistem
Berkas FAT16 yang mendukung nama
Berkas panjang, hingga 255 karakter. Sistem
Berkas ini diintegrasikan ke dalam sistem operasi Windows 95 dan Windows NT 3.51. Meskipun mendukung nama
Berkas panjang, sebenarnya dalam struktur sistem
Berkas ini tidak ada perubahan yang signifikan. Bahkan nama
Berkas panjang akan memakai beberapa entri direktori secara sekaligus.
= FAT32
=
FAT32 adalah versi sistem
Berkas FAT yang paling baru, yang diperkenalkan ketika Microsoft merilis Windows 95 OEM Service Release 2 (Windows 95 OSR2).
Tabel sistem operasi Windows yang mendukung sistem
Berkas FAT32 ini sebagai berikut.
Karena menggunakan
Tabel Alokasi Berkas yang besar (32-bit), FAT32 secara teoretis mampu mengalamati hingga 232 unit
Alokasi (4294967296 buah). Meskipun demikian, dalam implementasinya, jumlah unit
Alokasi yang dapat dialamati oleh FAT32 adalah 228 (268435456 buah). Ukuran unit
Alokasi maksimum dapat mencapai 32768 byte (64 sektor), sehingga secara teoretis dapat mengalamati 8 terabytes (8192 Gigabytes), meski tidak disarankan. Selain itu, program instalasi beberapa keluarga sistem operasi Windows NT 5.x ke atas hanya mengizinkan pembuatan partisi FAT32 hingga 32 Gigabyte (jika partisi lebih besar dari 32 GB, maka program instalasi Windows hanya menyediakan sistem
Berkas NTFS). Dalam instalasi sistem operasi Windows NT 5.x ke atas, jika ukuran partisi di mana Windows diinstalasikan kurang dari 2 Gigabyte, program instalasi akan menggunakan sistem
Berkas FAT16; dan berlaku sebaliknya, jika partisi di mana Windows hendak diinstalasikan lebih dari 2 Gigabyte, program instalasi akan menggunakan sistem
Berkas FAT32.
FAT32 menggunakan ukuran unit
Alokasi yang lebih kecil dibandingkan dengan sistem
Berkas FAT12/FAT16, sehingga FAT32 lebih efisien ketika diaplikasikan pada partisi yang besar (ukurannya lebih besar daripada 512 Megabyte). Penghematan yang dilakukan oleh FAT32 dibandingkan dengan FAT16/FAT12 kira-kira adalah 20% hingga 27%. Windows 98 memiliki utilitas yang dapat digunakan untuk mengonversi partisi FAT16 menjadi FAT32 tanpa kehilangan data.
Karakteristik dan fitur setiap versi
Berikut ini adalah
Tabel perbandingan ukuran partisi dan ukuran unit
Alokasi sistem
Berkas (default) yang digunakan oleh sistem
Berkas FAT.
Tabel berikut berisi informasi mengenai karakteristik dan fitur sistem
Berkas FAT
Tabel Alokasi Berkas atau File Allocation Table merupakan sebuah
Tabel yang dipelihara di dalam hard disk atau media penyimpanan lainnya oleh sistem operasi yang bertindak sebagai "daftar isi media penyimpanan", yang menunjukan di mana direktori dan
Berkas disimpan di dalam disk.
Ketika sebuah media penyimpanan diformat dengan menggunakan FAT, sistem
Berkas ini akan membuat sebuah
Tabel Alokasi Berkas yang disimpan pada lokasi yang dekat dengan permulaan media penyimpanan tersebut. Media penyimpanan yang dimaksud adalah media penyimpanan seperti sebuah hard disk, sebuah partisi dalam sebuah hard disk, atau media penyimpanan portabel. Selain membuat satu
Tabel Alokasi Berkas, sistem
Berkas tersebut juga membuat salinan dari sistem
Berkas tersebut, dan berada pada media penyimpanan yang sama. Jika salah satu salinan mengalami kerusakan, maka sistem
Berkas akan menggunakan salinan yang lain, dan mengganti
Tabel yang rusak tersebut dengan salinan yang masih baik (cara kerja ini disebut dengan FAT Mirroring, yang bekerja seperti layaknya RAID 1). Lokasi
Tabel Alokasi Berkas ditentukan di dalam sebuah area yang disebut dengan BIOS Parameter Block (BPB) dalam boot sector sebuah media penyimpanan yang menggunakan sistem
Berkas FAT.
FAT16 akan membuat dua buah
Tabel Alokasi Berkas, yang diberi nama FAT1 dan FAT2.
Tabel Alokasi Berkas akan diletakkan pada area tertentu, yakni pada lokasi yang berdekatan dengan boot sector.
Tabel Alokasi Berkas akan berisi informasi-informasi berikut:
Unused, yang menandakan bahwa unit
Alokasi tersebut tidak terpakai
In use, yang menandakan bahwa unit
Alokasi tersebut tidak dapat digunakan karena sedang digunakan oleh sebuah
Berkas tertentu.
Bad, yang menandakan bahwa unit
Alokasi tersebut tidak dapat digunakan karena mengalami kerusakan.
Last cluster, yang menandakan bahwa unit
Alokasi tersebut merupakan unit
Alokasi terakhir yang dimiliki oleh sebuah
Berkas.
Dalam strukturnya, FAT16 membedakan antara direktori akar (root directory) dan direktori lainnya, karena memang desain FAT16 menentukan lokasi direktori akar pada lokasi yang spesifik, dan memiliki batasan jumlah entri yang dapat disimpan (hanya dapat menampung 512 entri).
Direktori akar pada sistem
Berkas FAT16 terdiri dari sebuah ukuran yang tetap dan diketahui, karena
Berkas-
Berkas sistem operasi biasanya langsung diletakkan segera setelah direktori akar tersebut. Lokasi yang diketahui untuk
Berkas-
Berkas sistem operasi ini mengizinkan sistem operasi DOS, OS/2, atau Windows NT untuk langsung memulai proses booting sistem operasi. Tetapi, keputusan desain ini juga membatasi jumlah file yang dapat ditampung di dalam sebuah direktori akar dari sebuah volume FAT16.
Entri-entri di dalam direktori akar dan juga sub-direktori tidak diurutkan sehingga proses pencarian terhadap
Berkas-
Berkas tertentu dapat memakan waktu yang lama, apalagi jika volume tersebut mengandung banyak
Berkas dalam sebuah direktori.
Tabel Alokasi Berkas dan juga direktori akar selalu diletakkan pada awal sebuah volume, atau biasanya terletak pada lokasi track terluar dari sebuah disk. Entri-entri tersebut merupakan entri-entri yang sering sekali dibaca dari sebuah disk, utamanya pada sistem operasi yang mendukung multitasking, yang membutuhkan banyak pergerakan head hard disk yang lamban.
= Bagaimana sebuah Berkas disimpan dalam volume FAT16
=
Sistem
Berkas FAT-16 menggunakan unit
Alokasi (atau cluster) sebagai unit terkecil bagaimana ia dapat menyimpan
Berkas. FAT-16 mendukung ukuran cluster dari 1 hingga 128 sektor. Selanjutnya, ada juga entri direktori yang menyediakan ruangan yang cukup untuk menampung
Berkas dengan nama
Berkas berformat 8.3 (delapan nama
Berkas plus tiga nama ekstensi). Entri direktori pada sistem
Berkas FAT-16 memiliki entri sebesar 32 byte untuk setiap
Berkas dan subdirektori yang dikandung oleh direktori tersebut. Entri direktori tersebut mengandung field-field berikut.
Struktur organisasi dalam sistem
Berkas FAT16 tidaklah terlalu rumit rumit.
Berkas-
Berkas akan diberikan lokasi yang pertama kali ditemukan oleh sistem
Berkas dalam sebuah partisi. Selanjutnya, sistem
Berkas akan memberikan nomor terhadap lokasi tersebut, yang disebut dengan cluster number, yang merupakan alamat lokasi cluster di mana
Berkas dimulai. Setiap cluster berisi penunjuk (pointer) terhadap cluster berikutnya untuk
Berkas yang sama, atau indikasi bahwa cluster yang bersangkutan merupakan akhir dari rangkaian cluster sebuah
Berkas yang ditandai dengan bilangan basis 16 (hexadecimal) 0xFFFF (FAT16), atau 0xFFF (FAT12). Sebagai contoh, pada sebuah
Berkas yang menggunakan 10 buah cluster,
Berkas tersebut akan memiliki 10 buah entri di dalam
Tabel Alokasi file, dan juga 9 buah tautan terhadap
Tabel Alokasi file tersebut, sedangkan 1 cluster terakhir berisi tanda bahwa ia adalah cluster terakhir, dan berisi bilangan 0xFFFF. Umumnya, struktur sistem
Berkas seperti ini disebut sebagai struktur linked-list.
exFAT
exFAT (singkatan dari Extended File Allocation Table, atau sering disebut sebagai FAT64) adalah sebuah sistem
Berkas proprietary yang cocok untuk digunakan oleh media-media penyimpanan berbasis memori flash. Sistem
Berkas ini pertama kali dibuat oleh Microsoft untuk perangkat-perangkat benam di dalam Windows Embedded CE 6.0 dan Windows Vista Service Pack 1. Diperkenalkan pada bulan November 2006, sistem
Berkas ini dapat digunakan sebagai alternatif dari sistem
Berkas NTFS, karena memang NTFS memiliki struktur data yang relatif lebih besar ketimbang exFAT.
= Keunggulan exFAT
=
Beberapa keunggulan yang ditawarkan oleh exFAT adalah sebagai berikut:
Skalabilitas untuk HDD (hard disk drive) berukuran besar.
Ukuran
Berkas teoretis maksimal 264 (16 EiB). Sebagai perbandingan, FAT-32 hanya mendukung ukuran
Berkas maksimal hingga 232 (4 GB).
Ukuran Cluster yang didukung hingga 2255 Sector, dengan batasan implementasi hingga 32 MB (Megabyte).
Performa untuk
Alokasi ruangan kosong dan penghapusan ditingkatkan karena file system ini memperkenalkan implementasi baru, yaitu Free Space Bitmap
Mendukung lebih dari 216 (65536)
Berkas di dalam sebuah direktori tunggal.
Mendukung fitur access control list (ACL), seperti halnya NTFS. Sayangnya, fitur ini belum didukung sepenuhnya di dalam Windows Vista Service Pack 1.
Mendukung Transaction-Safe FAT File System (sebuah fungsi opsional untuk Windows CE yang diaktifkan).
Memiliki ruangan tersendiri yang bisa digunakan oleh OEM untuk melakukan kustomisasi terhadap sistem
Berkas untuk karakteristik perangkat tertentu.
Timestamp dapat ditampilkan dalam UTC, tidak hanya dalam local time saja.
= Kelemahan exFAT
=
Beberapa kelemahan yang dimiliki oleh exFAT, jika dibandingkan dengan file system FAT sebelumnya (FAT12, FAT16, atau FAT32) adalah:
Perangkat yang menggunakan file system exFAT tidak bisa menggunakan kemampuan ReadyBoost milik Windows Vista (namun pada Windows 7, Microsoft sudah membuat file system exFAT yang baru dengan dukungan ReadyBoost).
Status lisensi yang belum jelas. Akan tetapi, Microsoft telah mempatenkan beberapa bagian dari file system FAT.
Tidak bisa diakses oleh sistem-sistem operasi Windows terdahulu, sebelum Windows Vista Service Pack 1 atau Windows CE 6.0.
Belum tersedia implementasi dalam proyek open source.
Pranala luar
(Inggris) FAT File System
(Inggris) FAT32 File System Specification