Anda di halaman 1dari 3

Riffa Rufaida / 13507007

File Sistem pada Windows - NTFS (NT File System)


NTFS atau Windows NT File System merupakan standar file sistem dari Windows NT, termasuk versi-
versi baru dari Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows
Vista, dan Windows 7. NTFS menggunakan 64-bit alamat disk dan dapat (secara teoritis) mendukung
partisi-partisi disk hingga 264 byte, meskipun banyak pertimbangan lain yang membatasi ke ukuran yang
lebih kecil. Windows 2000 juga mendukung file sistem read-only untuk CD-ROM dan DVD. Hal ini
memungkinkan untuk memiliki sistem sama yang berjalan memiliki akses ke beberapa tipe file sistem
yang tersedia pada saat yang bersamaan.

Sistem berkas NTFS memiliki sebuah desain yang sederhana tapi memiliki kemampuan yang lebih
dibandingkan keluarga file sistem FAT. NTFS menawarkan beberapa fitur yang dibutuhkan dalam sebuah
lingkungan yang terdistribusi, seperti halnya pengaturan akses (access control) siapa saja yang berhak
mengakses sebuah berkas atau direktori, penetapan kuota berapa banyak setiap pengguna dapat
menggunakan kapasitas hard disk, fitur enkripsi, serta toleransi terhadap kesalahan (fault tolerance).
Fitur-fitur standar sebuah file sistem, seperti halnya directory hashing, directory caching, penggunaan
atribut direktori, dan atribut file telah dimiliki oleh NTFS. Salah satu keunggulan NTFS dibandingkan
dengan file sistem lainnya adalah bahwa NTFS bersifat extensible (dapat diperluas) dengan
menambahkan sebuah fungsi yang baru di dalam sistem operasi, tanpa harus merombak desain secara
keseluruhan (perombakan mungkin dilakukan, tapi tidak secara signifikan).

1. Model/konsep file system

Masing-masing nama file dalam NTFS dibatasi hingga 255 karakter; path lengkap dibatasi hingga 32.767
karakter. NTFS mendukung penamaan dengan case sensitive. Ini berarti nama file mar akan berbeda
dengan MAR. File NTFS bukan hanya sebuah urutan linier dari byte, melainkan beberapa atribut, yang
masing-masing diwakili oleh stream(aliran) dari byte. Kebanyakan file memiliki beberapa stream yang
pendek, seperti pada nama file dan pada 64-bit obyek ID-nya, ditambah satu stream panjang (tak
bernama). Namun, sebuah file dapat juga memiliki dua atau lebih data stream. Setiap stream memiliki
nama yang terdiri dari nama file, titik dua, dan nama stream, seperti mar:stream1. Setiap stream
memiliki ukuran masing-masing dan terkunci secara independen dari semua stream lain.

Penggunaan skema file stream dapat diperlihatkan dalam pengolah kata. Program-program ini seringkali
membuat dua versi dokumen, satu versi sementara untuk digunakan selama pengeditan dan versi final
ketika pengguna selesai. Dengan skema file stream, versi sementara dijadikan stream yang telah
bernama dan versi final menjadi stream yang tak bernama, maka kedua versi secara otomatis akan
berbagi nama file, informasi sekuriti, timestamps, dan lain-lain tanpa usaha ekstra.

Panjang stream maksimum adalah 264 byte. File pointer digunakan untuk melacak proses di mana di
dalam setiap stream, dan memiliki lebar 64-bit untuk menangani panjang maksimum stream, yaitu
sekitar 18,4 exabyte.
Riffa Rufaida / 13507007

NTFS merupakan file sistem dengan bentuk hierarki. Pemisah di antara nama-nama komponennya
adalah ‘\’. Terdapat konsep dari direktori kerja yang sedang digunakan dan nama path yang dapat
bersifat relatif atau absolut.

2. Implementasi (struktur sistem file)

Masing-masing volume NTFS (misalnya, partisi disk) berisi file, direktori, bitmaps, dan struktur data
lainnya. Setiap volume diatur sebagai urutan linear dari blok (cluster dalam terminologi Microsoft),
dengan ukuran blok yang tetap untuk setiap volume dan berada di antar 512 byte sampai 64 KB,
tergantung pada ukuran volume. Kebanyakan NTFS disk menggunakan blok dengan ukuran 4-KB sebagai
kompromi antara blok besar (untuk transfer yang efisien) dan blok kecil (untuk fragmentasi internal yang
rendah). Blok ditunjuk oleh offset-nya dari awal volume menggunakan angka-angka 64-bit.

Struktur data utama dalam setiap volume adalah MFT (Master File Table), yang merupakan
urutan linier dari record dengan ukuran tetap sebesar 1-KB. Masing-masing record MFT
menggambarkan satu file atau satu direktori. Ini berisi atribut dari file, seperti nama dan timestamps,
dan daftar alamat disk dimana blok tersebut berada. Jika sebuah file memiliki ukuran yang sangat besar,
maka terkadang perlu untuk menggunakan dua atau lebih record MFT untuk menyimpan daftar seluruh
blok, dalam hal ini record dari MFT yang pertama -disebut record dasar-, menunjuk ke record MFT yang
lain. Sebuah bitmap akan mencatat entri MFT yang bebas.

The MFT sendiri adalah sebuah file dan dengan demikian dapat ditempatkan di manapun dalam volume,
sehingga menghilangkan masalah sektor cacat di track pertama. Selanjutnya, file
dapat berkembang dan bertambah besar sesuai kebutuhan, sampai ukuran maksimum 248 record .

Setiap record MFT terdiri atas sebuah header record yang diikuti oleh urutan dari pasangan header
atribut dan nilai. Header recor mengandung nomor tertentu yang digunakan untuk mengecek validitas,
urutan nomor yang diperbaharui setiap kali record digunakan ulang untuk file baru, identifier (index,
rangkaian nomor) dari record dasar (digunakan hanya untuk perpanjangan record), dan beberapa field
lainnya. Sebuah record header akan diikuti oleh header dari atribut pertama, lalu nilai dari atribut
pertama, header dari atribut kedua, nilai dari atribut kedua, dan seterusnya.

NTFS mendefinisikan 13 atribut yang dapat muncul pada record MFT. Setiap record MFT terdiri atas
urutan dari header atribut, masing-masing mengidentifikasi atribut yang mengikutinya dan memberikan
informasi panjang serta lokasi dari isi nilai atribut, bersama dengan beberapa macam penanda dan
informasi lainnya. Biasanya, nilai atribut berada tepat di belakang header atributnya, tetapi jika sebuah
nilai terlalu panjang untuk disimpan pada record MFT, nilai tersebut dapat disimpan pada blok di disk
yang terpisah. Atribut yang seperti itu disebut atribut nonresident. Atribut data merupakan kandidat
yang sangat mungkin. Beberapa atribut, seperti nama, dapat berulang, tetapi semua atribut harus
muncul dalam urutan yang tetap di record MFT. Header untuk atribut resident memiliki panjang 24 byte;
sedangkan atribut nonresident headernya lebih panjang karena menyimpan informasi mengenai lokasi
untuk menemukan atribut pada disk.

Tabel 1. Atribut yang Digunakan pada record MFT


Riffa Rufaida / 13507007

Atribut Deskripsi
Standard information Bit penanda, timestamps, dll
File name Nama file dalam Unicode
Security descriptor Tidak terpakai. Informasi keamanan sekarang
menggunakan ExtendSecure
Attribute list Lokasi dari record MFT tambahan, jika dibutuhkan
Object ID 64-bit identifier file yang unik pada volume ini
Reparse point Digunakan untuk link simbolis
Volume name Nama dari volume ini
Volume information Versi volume
Index root Digunakan untuk direktori
Index allocation Digunakan untuk direktori yang sangat besar
Bitmap Penanda bebas
Logged utility stream Mengontrol logging ke LogFile
Data Stream data, mungkin berulang

Field standar informasi mengandung pemilik file, informasi keamanan, timestamps, dll. Merupakan field
yang berukuran tetap dan selalu ada. Variabel nama file memilik panjang yang berbeda-beda dalam
Unicode. Pada NT 4.0, informasi keamanan dapat disimpan pada atribut, tetapi pada Windows 2000 ini
disimpan pada file tunggal sehingga beberapa buah file dapat berbagi deskripsi keamanan yang sama.
List atribut dibutuhkan pada kasus atribut yang tidak mencukupi untuk disimpan pada record MFT.
Atribut ini memberi tahu dimana letak lokasi untuk menemukan perpanjangan dari record. Setiap entri
pada list akan berisi 48-bit index yang memberi tahu MFT dimana record perpanjangannya dan 16-bit
urutan nomor untuk memungkinkan verifikasi sehingga record perpanjangan dengan record dasar
sesuai.

Atribut objek ID memberi file nama yang unik. Titik reparse memberi tahu prosedur untuk parsing nama
file melakukan hal yang istimewa. Mekanisme ini dibutuhkan untuk link yang simbolis. Kedua atribut
volume berikutnya digunakan dalam mengidentifikasi volume. Ketiga atribut setelahnya berurusan
dengan bagaimana direktori diimplementasikan. Direktori yang kecil hanya akan berupa daftar dari file,
tetapi direktori yang besar akan diimlplementasikan menggunakan pohon. Atribut logged utility stream
digunakan oleh enkripsi file sistem.

Atribut terakhir adalah data. Nama stream, jika ada, akan terdapat pada header atribut ini. Di belakang
header terdapat daftar dari alamat pada disk yang menginformasikan blok yang berisi file, atau untuk
file yang memiliki beberapa ratus byte, adalah file itu sendiri. Menyimpan file data yang sebenarnya
pada record MFT disebut file immediate. Kebanyakan data tidak cukup disimpan pada record MFT,
sehingga atribut ini biasanya bersifat nonresident. Menjaga jejak dari atribut yang nonresident dilakukan
NTFS dengan menugaskan atribut tersebut pada blok yang saling berurutan, atau berkaitan.

Sumber :
[1] Tanenbaum, Andrew S. 2001. Modern Operating System 2nd Edition. Prentice Hall.
[2] http://en.wikipedia.org/wiki/NTFS
[3] http://id.wikipedia.org/wiki/NTFS