Jika anda seorang
developer atau user android, sering kali kita menemukan beberapa istilah
pada android seperti contohnya: ext2, ext3, ext4 dan masih banyak lagi.
Namun tahukah anda bahwa itu merupakan bagian dari extended file
system? Apakah extended file system tersebut? Mari kita berbagi bersama
tentang extended file system pada android.
Sebelum kita membahas tentang extended file system pada android, maka kita akan membahas tentang file system terlebih dahulu.
Apakah file system?
File system merupakan struktur logika yang digunakan untuk mengendalikan akses terhadap data yang ada pada sebuah media penyimpanan. File system juga merupakan pengorganisasian data atau file pada sebuah perangkat yang menggunakan sebuah media penyimpanan sebagai contohnya menggunakan harddisk, memory card, chipset, DVD-ROM atau media penyimpanan lainnya. Ia berfungsi menyediakan mekanisme untuk penyimpanan data dan program yang dimiliki oleh sistem operasi serta seluruh pengguna dari sistem pada perangkat tersebut
Pada android terdapat
file system tersebut agar android dapat berfungsi, android merupakan
bagian pengembangan dari linux, oleh karena itu jika anda seorang
pengguna linux, tentu saja tidak asing lagi dalam menggunakan android.
Baik pada kernel maupun pada file system. Namun pada artikel ini saya
lebih memfokuskan pembahasan pada system berkas pada android tersebut.
System berkas pada android (sumber: wikipedia)
Semua sistem operasi
memiliki sistem berkas untuk meletakkan file dalam sebuah struktur
hirarki. Sistem berkas juga menentukan konvensi penamaan berkas dan
peletakan berkas pada stuktur direktori.
Pada android, system
berkas yang digunakan menyerupai dengan system berkas pada linux (serupa
namun tidak sama). Mari kita bahas lebih lanjut tentang system berkas
pada android.
1. Extended File System (Ext)
Extended file system
atau ext, diliris pada April 1992 sebagai sistem file pertama dibuat
khusus untuk kernel Linux. Memiliki struktur metadata terinspirasi dari
File System Unix tradisional (UFS) dan dirancang oleh Rémy Card untuk mengatasi keterbatasan tertentu dari sistem file MINIX. Ini adalah implementasi pertama yang menggunakan sistem file virtual (VFS),
yang dukungannya telah ditambahkan dalam kernel Linux dalam versi
0.96c, dan bisa menangani sistem file hingga 2 gigabyte (GB).
Ini adalah yang pertama dalam rangkaian sistem file yang diperluas, menjadi ext2 dan xiafs,
namun ext2 lebih popular dibanding xiafs karena jangka panjang
kelangsungan hidup. ext2 memperbaiki masalah pada ext, seperti ketetapan
dari inode dan fragmentasi.
Full name | Extended file system |
---|---|
Introduced | April 1992 (Linux) |
Structures | |
File allocation | bitmap (free space), table (metadata) |
Bad blocks | Table |
Features | |
File system permissions | POSIX |
Transparent encryption | No |
2. Second Extended (Ext2) (sumber: kaskus)
Second Extended File
system (Ext2) dirancang oleh Rémy Card, sebagai file sistem yang
extensible dan powerful untuk digunakan pada sistem operasi Linux. Ext2 adalah
file system untuk kernel linux (termasuk android) yang digunakan
sebagai pengganti untuk file system ext. Ext2 adalah file system default
di beberapa distribusi linux (distro linux) , Debian, Red Hat Linux
(RHEL), beberapa android versi pendahulu sampai akhirnya ini diganti
dengan ext3.
Latar belakang
Ext2 pertama kali dikembangkan dan diintegrasikan pada kernel Linux, dan sekarang ini sedang dikembangkan juga penggunaannya pada sistem operasi lainnya.
Tujuan
Untuk membuat suatu file system yang powerful, yang dapat mengimplementasikan file-file semantik dari UNIX dan mempunyai pelayanan advance features.
Kemampuan dasar EXT2
-File system EXT2 mampu
menyokong beberapa tipe file yang standar dari UNIX, seperti regular
file, directories, device special files, dan symbolic links.
-EXT2 mampu mengatur file-file system yang dibuat dalam partisi yang besar.
-File system EXT2 mampu menghasilkan nama-nama file yang panjang. Maximum 255 karakter.
-EXT2 memerlukan beberapa blok untuk super user (root).
Developer | Rémy Card |
---|---|
Full name | Second extended file system |
Introduced | January 1993 (Linux) |
Partition identifier | Apple_UNIX_SVR2 (Apple Partition Map) 0x83 (Master Boot Record) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7(GPT) |
Structures | |
File allocation | bitmap (free space), table (metadata) |
Bad blocks | Table |
Limits | |
Max file size | 16 GB - 2 TB |
Max number of files | 1018 |
Max filename length | 255 bytes |
Max volume size | 2-32 TB |
Allowed characters in filenames | Any byte except NULL and '/' |
Features | |
Dates recorded | modification (mtime), attribute modification (ctime), access (atime) |
Date range | December 14, 1901 - January 18, 2038 |
Date resolution | 1s |
File system permissions | POSIX |
Transparent compression | No (Available through patches) |
Transparent encryption | No |
Supportedoperating systems | Linux, BSD, Windows (through an IFS), Mac OS X (through an IFS) |
Keterangan tentang ext2 lebih lanjut dapat anda baca di sini.
3. Third Extended File System (Ext3) (sumber: kaskus)
Ext3 adalah pengembangan dan versi perbaikan dari ext2, beberapa yang dijelaskan tentang ext3:
-EXT3 merupakan suatu journalled file system
-EXT3 merupakan suatu journalled file system
-Journalled file system didesain untuk membantu melindungi data yang ada di dalamnya.
-Dengan adanya journalled file system, maka kita tidak perlu lagi untuk melakukan pengecekan kekonsistensian data, yang akan memakan waktu sangat lama bagi harddisk yang berkapasitas besar.
-EXT3 adalah suatu filesystem yang dikembangkan untuk digunakan pada sistem operasi Linux.
-EXT3 merupakan hasil perbaikan dari EXT2 ke dalam bentuk EXT2 yang lebih baik dengan menambahkan berbagai macam keunggulan
Keunggulannya:
Availability
EXT3 tidak mendukung
proses pengecekan file system, bahkan ketika system yang belum
dibersihkan mengalami “shutdown”, kecuali pada beberapa kesalahan
hardware yang sangat jarang.
Hal seperti ini terjadi
karena data ditulis atau disimpan ke dalam disk dalam suatu cara
sehingga file system-nya selalu konsisten.
Waktu yang diperlukan
untuk me-recover ext3 file system setelah system yang belum dibersihkan
dimatikan tidak tergantung dari ukuran file system atau jumlah file;
tetapi tergantung kepada ukuran “jurnal” yang digunakan untuk memelihara
konsistensi. Jurnal dengan ukuran awal (default)
membutuhkan sekitar 1 sekon untuk recover (tergantung dari kecepatan hardware).
Integritas Data
-Dengan menggunakan file
sistem ext3 kita bisa mendapatkan jaminan yang lebih kuat mengenai
integritas data dalam kasus dimana sistem yang belum dibersihkan
dimatikan (shutdown).
-Kita bisa memilih tipe dan level proteksi yang diterima data.
-Kita bisa memilih untuk
menjaga agar file system tetap konsisten, tetapi tetap mengijinkan
kerusakan terhadap data dalam file system dalam kasus dimatikannya
(shutdown) system yang belum dibersihkan; ini bisa memberikan
peningkatan kecepatan pada beberapa keadaan.
-Secara alternatif kita
bisa memilih untuk lebih memastikan bahwa data konsisten dengan bagian
dari file system; ini berarti kita tidak akan pernah melihat “garbage
data” pada file-file yang baru ditulis ulang setelah terjadi “crash”.
-Pilihan yang aman yakni menjaga kekonsistenan data sebagai bagian dari file system adalah pilihan default
Perbandingan EXT2 dengan EXT3
-Secara umum prinsip-prinsip dalam EXT2 sama dengan EXT3.
-Metode pengaksesan file, keamanan data, dan penggunaan disk space antara kedua file system ini hampir sama.
-Perbedaan mendasar antara kedua file system ini adalah konsep journaling file system yang digunakan pada EXT3.
-Konsep journaling ini menyebabkan EXT2 dan EXT3 memiliki perbedaan dalam hal daya tahan dan pemulihan data dari kerusakan.
-Konsep journaling ini
menyebabkan EXT3 jauh lebih cepat daripada EXT2 dalam melakukan
pemulihan data akibat terjadinya kerusakan.
Ext3 merupakan successor dari ext4, untuk lebih lanjut tentang ext3 dapat anda baca di sini.
Developer | Stephen Tweedie |
---|---|
Full name | Third extended file system |
Introduced | November 2001 (Linux 2.4.15) |
Partition identifier | 0x83 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT) |
Structures | |
Directory contents | Table, hashed B-tree with dir_index enabled |
File allocation | bitmap (free space), table (metadata) |
Bad blocks | Table |
Limits | |
Max file size | 16 GiB – 2 TiB |
Max number of files | Variable, allocated at creation time[1] |
Max filename length | 255 bytes |
Max volume size | 2 TiB – 16 TiB |
Allowed characters in filenames | All bytes except '\0' and '/' |
Features | |
Dates recorded | modification (mtime), attribute modification (ctime), access (atime) |
Date range | December 14, 1901 - January 18, 2038 |
Date resolution | 1s |
Attributes | allow-undelete, append-only, h-tree (directory), immutable, journal, no-atime, no-dump, secure-delete, synchronous-write, top (directory) |
File system permissions | Unix permissions, ACLs and arbitrary security attributes (Linux 2.6 and later) |
Transparent compression | No |
Transparent encryption | No (provided at the block device level) |
Data deduplication | No |
Supportedoperating systems | Linux, BSD, Windows(through an IFS) |
3. Fourth Extended File System (Ext4)
Ext4 (fourth extended
filesystem ) dibentuk sebagai penerus filesystem ext3. dimaksudkan untuk
memperpanjang batas penyimpanan dan menambahkan perbaikan kinerja
lainnya.
Ext4 dirilis secara komplit dan stabil berawal dari kernel 2.6.28 jadi apabila android anda yang secara default memiliki versi pengembangan dari kernel tersebut atau di atas nya otomatis system anda sudah support ext4 (dengan catatan sudah di include kedalam kernelnya) selain itu versi e2fsprogs harus mengunakan versi 1.41.5 atau lebih.
Ext4 dirilis secara komplit dan stabil berawal dari kernel 2.6.28 jadi apabila android anda yang secara default memiliki versi pengembangan dari kernel tersebut atau di atas nya otomatis system anda sudah support ext4 (dengan catatan sudah di include kedalam kernelnya) selain itu versi e2fsprogs harus mengunakan versi 1.41.5 atau lebih.
Keuntungan yang bisa
didapat dengan mengupgrade filesystem ke ext4 dibanding ext3 adalah
mempunyai pengalamatan 48-bit block yang artinya dia akan mempunyai 1EB =
1,048,576 TB ukuran maksimum filesystem dengan 16 TB untuk maksimum
file size nya, Fast fsck, Journal checksumming, Defragmentation support.
Developer | Mingming Cao, Andreas Dilger, Alex Zhuravlev (Tomas), Dave Kleikamp, Theodore Ts'o, Eric Sandeen, Sam Naghshineh, others |
---|---|
Full name | Fourth extended file system |
Introduced | Stable: 21 October 2008 Unstable: 10 October 2006 (Linux 2.6.28, 2.6.19) |
Partition identifier | 0x83 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT) |
Structures | |
Directory contents | Linked list, hashed B-tree |
File allocation | Extents/Bitmap |
Bad blocks | Table |
Limits | |
Max file size | 16 TiB (for 4k block filesystem) |
Max number of files | 4 billion (specified at filesystem creation time) |
Max filename length | 256 bytes (characters) |
Max volume size | 1 EiB |
Allowed characters in filenames | All bytes except NUL ('\0') and '/' |
Features | |
Dates recorded | modification (mtime), attribute modification (ctime), access (atime), delete (dtime), create (crtime) |
Date range | 14 December 1901 - 25 April 2514 |
Date resolution | Nanosecond |
Forks | No |
Attributes | acl, bh, bsddf, commit=nrsec, data=journal, data=ordered, data=writeback, delalloc, extents, journal_dev, mballoc, minixdf, noacl, nobh, nodelalloc,noextents, nomballoc, nouser_xattr, oldalloc, orlov, user_xattr |
File system permissions | POSIX |
Transparent compression | No |
Transparent encryption | No |
Data deduplication | No |
Supportedoperating systems | Linux Windows (using ext2fsd) |
Jika ada yang salah pada artikel ini mohon kiranya anda comment, dan menjadikan koreksi bagi saya.
Sumber: wikipedia, kaskus, beberapa forum linux dan android dan beberapa penambahan dari saya.
0 Komentar untuk "Extended File System Android"