LINUX EXTENDED FILE SYSTEM
Sejarah perkembangan Extended File System
Versi mLinux yang pertama berbasis pada file sistem Minix. Setelah Linux semakin
berkembang, Extended File System (Ext FS) diperkenalkan. Ada beberapa perubahan signifikan
tetapi kinerjanya masih kurang memuaskan. Pada tahun 1994 Second Extended Filesystem (Ext2)
diperkenalkan. Di samping adanya beberapa fitur baru, Ext2 sangat efisien, handal dan fleksibel
sehingga menjadi file sistem Linux yang paling banyak digunakan.
Linux Second Extended File System (Ext2FS)
Untuk sebagian besar user dan system administration tasks yang umum, file dan direktori mudah
untuk diterima seperti struktur pohon. Komputer bagaimanapun tidak bisa melihat hal tersebut
seperti struktur pohon.
Setiap partisi memiliki sistem file sendiri. Dengan membayangkan sistem file bersamaan, kita
dapat membentuk sebuah ide mengenai struktur pohon dari seluruh sistem, tapi tidak
sesederhana itu. Dalam sebuah sistem file, file direpresentasikan dengan inode, sejenis nomor
seri unik yang berisi informasi tentang data sebenarnya yang membentuk sebuah file: milik siapa
file tersebut, dan dimana file tersebut terletak pada harddisk.
Setiap partisi memiliki himpunan inode tersendiri, pada sistem yang memiliki banyak partisi,
bisa terdapat beberapa file dengan nomor inode yang sama.
Setiap inode menggambarkan struktur data pada harddisk, menyimpan properti dari file,
termasuk lokasi fisik dari data file. Ketika harddisk disiapkan untuk menerima peyimpanan data,
biasanya selama proses instalasi sistem awal atau ketika menambahkan disket tambahan ke
dalam sistem yangada, sejumlah inode per partisi yang pasti diciptakan. Jumlah ini akan menjadi
jumlah maksimum file, dari berbagai tipe (termasuk direktori, file khusus, link, dll.) yang dapat
muncul pada saat yang sama pada sebuah partisi. Pada umumnya terdapat 1 inode setiap 2
sampai 8 KB.
Mekanisme Second Extended File System (Ext2FS)
Ext2fs menggunakan mekanisme yang mirip dengan BSD Fast File System (ffs) dalam
mengalokasikan blok-blok data dari file, yang membedakan adalah :
• Pada ffs, file dialokasikan ke disk dalam blok sebesar 8KB, dan blok-blok itu dibagi
menjadi fragmen-fragmen 1KB untuk menyimpan file-file berukuran kecil atau blok-blok
yang terisi secara parsial di bagian akhir file.
• Ext2fs tidak menggunakan fragmen, pengalokasian dalam unit-unit yang lebih kecil.
Ukuran blok secara default pada ext2fs adalah 1KB, meskipun mendukung juga
pengalokasian 2KB dan 4KB.
• Alokasi pada Ext2fs didesain untuk menempatkan blok-blok lojik dari file ke dalam blokblok
fisik pada disk, dengan demikian I/O request untuk beberapa blok-blok disk secagai
operasi tunggal.
Kehandalan Second Extended File System Ext2FS
• Administrator sistem dapat memilih ukuran blok yang optimal (dari 1024 sampai 4096
bytes), tergantung dari panjang file rata-rata, saat membuat file sistem.
• Administrator dapat memilih banyak inode dalam setiap partisi saat membuat file sistem.
• Strategi update yang aman dapat meminimalisasi dari system crash.
• Mendukung pengecekan kekonsistensian otomatis saat booting.
• Mendukung file immutable (file yang tidak dapat dimodifikasi)dan append-only (file yang
isinya hanya dapat ditambahkan pada akhir file tersebut).
Informasi yang Disimpan pada Inode
• Device tempat inode berada
• Mode file
• Locking information
• Pemilik dan grup pemilik dari file tersebut.
• Jenis file (regular, direktori, dll.)
• Hak akses atas file.
• Waktu pembuatan, pembacaan, dan perubahan terakhir.
• Waktu perubahan informasi pada inode.
• Jumlah link yang menunjuk ke file ini.
• Ukuran file.
• Alamat yang menunjukan lokasi sebenarnya dari data file.
Satu – satunya informasi yang tidak tersimpan pada inode adalah nama file dan direktori.
Informasi ini tersimpan pada file direktori khusus. Dengan membandingkan nama file dan nomor
inode, sistem dapat membangun struktur pohon yang dapat dimengerti user. User dapat melihat
nomor inode dengan menggunakan opsi –i pada perintah ls. Masing-masing inode memiliki
ruang memori yang terpisah pada disk.
Pembagian Blok
Layout dari partisi dan group block Ext2FS
Keterangan:
Setiap partisi terbagi menjadi:
• Boot block, yang merupakan blok pertama, dipakai untuk booting, sehingga tidak diurusi
oleh Ext2FS.
• Block group sebanyak n buah. Setiap block group berukuran sama dan terdiri dari:
o Super Block, disimpan dalam struktur ext2_super_block
o Group Descriptor, disimpan dalam bentuk xt2_group_desc
o Data Block Bitmap
o Inode Bitmap
o Inode Table, terdiri dari kumpulan block yang berurutan, dan masing-masing blok
mengandung sejumlah inode yang terlah terdefinisi sebelumnya. Semua inode
memiliki ukuran sama.
o Data Blocks, menyimpan data sebenarnya dari file.
Struktur inode dalam Linux diimplementasikan sebagai berikut :
struct inode {
struct list_head i_hash;
struct list_head i_list;
struct list_head i_dentry;
unsigned long i_ino;
unsigned int i_count;
kdev_t i_dev;
umode_t i_mode;
nlink_t i_nlink;
uid_t i_uid;
gid_t i_gid;
kdev_t i_rdev;
off_t i_size;
time_t i_atime;
time_t i_mtime;
time_t i_ctime;
unsigned long i_blksize;
unsigned long i_blocks;
unsigned long i_version;
unsigned long i_nrpages;
struct semaphore i_sem;
struct inode_operations *i_op;
struct super_block *i-sb;
wait_queue_head_t i_wait;
struct file_lock *i_flock;
struct vm_area_struct *i_mmap;
struct page *i_pages;
spinlock_t i_shaerd_lock;
struct dquot *i_dquot(MAXQUOTAS);
struct pipe_inode_info *i_pipe;
unsigned long i_state;
unsigned long i_flags;
unsigned char i_sock;
atomic_t i_writecount;
unsigned int i_attr_flags;
_u32 i_generation;
union {
...
struct extfs_inode_info ext2_i;
...
struct socket socket_i;
void *generic)ip;
}u;
};
Linux Third Extended File System (Ext3FS)
Ext3FS merupakan pengembangan dari Ext2FS. Ext3FS memiliki beberapa kelebihan antara
lain:
• Optimasi waktu pengecekan jika terjadi kegagalan sumber daya, kerusakan sisem atau
unclean shutdown.
Setelah mengalami kegagalan sumber daya, unclean shutdown, atau kerusakan
sistem, Ext2FS harus melalui proses pengecekan. Proses inidapat membuang waktu
sehingga proses booting menjadi sangat lama, khususnya untuk disk besar yang
mengandung banyak sekali data. Dalam proses ini, semua data tidak dapat diakses.
Jurnal yang disediakan oleh EXT3 menyebabkan tidak perlu lagi dilakukan
pengecekan data setelah kegagalan sistem. EXT3 hanya dicek bila ada kerusakan
hardware seperti kerusakan hard disk, tetapi kejadian ini sangat jarang. Waktu yang
diperlukan EXT3 file sistem setelah terjadi unclean shutdown tidak tergantung dari
ukuran file sistem atau banyaknya file, tetapi tergantung dari besarnya jurnal yang
digunakan untuk menjaga konsistensi. Besar jurnal default memerlukan waktu kirakira
sedetik untuk pulih, tergantung kecepatan hardware.
• Integritas data dan kecepatan akses yang fleksibel.
o Ext3FS menjamin adanya integritas data setelah terjadi kerusakan atau unclean
shutdown. Ext3FS memungkinkan kita memilih jenis dan tipe proteksi dari data.
• Mudah melakukan migrasi dari Ex2FS.
o Kita dapat berpindah dari EXT2 ke sistem EXT3 tanpa melakukan format ulang.
• Cepat
o Daripada menulis data lebih dari sekali, EXT3 mempunyai throughput yang lebih
besar daripada EXT2 karena EXT3 memaksimalkan pergerakan head hard disk.
Kita bisa memilih tiga jurnal mode untuk memaksimalkan kecepatan, tetapi
integritas data tidak terjamin.
Mekanisme Fourth Extended File System (Ext4FS)
Filesystem Ext4, generasi baru, pengembangan lebih lanjut dari filesystem Ext3 akan hadir di Ubuntu 9.04. Filesystem Ext4 telah dinyatakan stabil dan didukung sejak kernel linux 2.6.28.
Filesystem Ext4 didesain untuk memberikan performance yang lebih baik dan peningkatan kemampuan. Filesystem Ext4 juga meningkatkan daya tampung maksimal filesystem ke 1 exabyte dan mengurangi wktu yang diperlukan untuk melakukan pengecekan hardisk (fsck yang mana pada Filesystem Ext3, setiap 20-30 kali mount).
Berdasarkan test benchmark yang dilakukan oleh beberapa benchmarker, Filesystem Ext4 memiliki keunggulan performance yang significant dalam menulis dan membaca file berukuran besar.
Filesystem Ext4 menyisihkan filesystem lain seperti xfs, jfs, Reiserfs dan ext3.
Filesystem Ext4 menyisihkan filesystem lain seperti xfs, jfs, Reiserfs dan ext3.
Dalam kasus Ubuntu 9.04, filesystem ext4 di curigai sebagai faktor utama yang mempercepat waktu boot Ubuntu 9.04.
Filesystem ext4 juga meningkatkan umur hidup media flash seperti SSD. Karena filesystem ext4 tidak melakukan penulisan data layaknya Filesystem ext3 yang menulis beberapa kali (journaling).
-vfat dan ntfs
merupakan file sytem yang digunakan oleh sistem operasi windows(FAT32)
-swap
merupakan file system yang digunakan oleh linux dalam memdukung penggunaan memori fisik/RAM.
thankz infonya
BalasHapusfollow balik :
http://endbook.blogspot.com