Extended File System Android

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.

ext
Full nameExtended file system
IntroducedApril 1992 (Linux)
Structures
File allocationbitmap (free space), table (metadata)
Bad blocksTable
Features
File system permissionsPOSIX
Transparent encryptionNo



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).

Extended File System Android

ext2
DeveloperRémy Card
Full nameSecond extended file system
IntroducedJanuary 1993 (Linux)
Partition identifierApple_UNIX_SVR2 (Apple Partition Map)
0x83 (Master Boot Record)
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7(GPT)
Structures
File allocationbitmap (free space), table (metadata)
Bad blocksTable
Limits
Max file size16 GB - 2 TB
Max number of files1018
Max filename length255 bytes
Max volume size2-32 TB
Allowed characters in filenamesAny byte except NULL and '/'
Features
Dates recordedmodification (mtime), attribute modification (ctime), access (atime)
Date rangeDecember 14, 1901 - January 18, 2038
Date resolution1s
File system permissionsPOSIX
Transparent compressionNo (Available through patches)
Transparent encryptionNo
Supportedoperating systemsLinux, 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

-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.

ext3
DeveloperStephen Tweedie
Full nameThird extended file system
IntroducedNovember 2001 (Linux 2.4.15)
Partition identifier0x83 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT)
Structures
Directory contentsTable, hashed B-tree with dir_index enabled
File allocationbitmap (free space), table (metadata)
Bad blocksTable
Limits
Max file size16 GiB – 2 TiB
Max number of filesVariable, allocated at creation time[1]
Max filename length255 bytes
Max volume sizeTiB – 16 TiB
Allowed characters in filenamesAll bytes except '\0' and '/'
Features
Dates recordedmodification (mtime), attribute modification (ctime), access (atime)
Date rangeDecember 14, 1901 - January 18, 2038
Date resolution1s
Attributesallow-undelete, append-only, h-tree (directory), immutable, journal, no-atime, no-dump, secure-delete, synchronous-write, top (directory)
File system permissionsUnix permissions, ACLs and arbitrary security attributes (Linux 2.6 and later)
Transparent compressionNo
Transparent encryptionNo (provided at the block device level)
Data deduplicationNo
Supportedoperating systemsLinuxBSDWindows(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.


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.
Extended File System Android
ext4
DeveloperMingming Cao, Andreas Dilger, Alex Zhuravlev (Tomas), Dave Kleikamp, Theodore Ts'o, Eric Sandeen, Sam Naghshineh, others
Full nameFourth extended file system
IntroducedStable: 21 October 2008 Unstable: 10 October 2006 (Linux 2.6.28, 2.6.19)
Partition identifier0x83 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT)
Structures
Directory contentsLinked listhashed B-tree
File allocationExtents/Bitmap
Bad blocksTable
Limits
Max file size16 TiB (for 4k block filesystem)
Max number of files4 billion (specified at filesystem creation time)
Max filename length256 bytes (characters)
Max volume sizeEiB
Allowed characters in filenamesAll bytes except NUL ('\0') and '/'
Features
Dates recordedmodification (mtime), attribute modification (ctime), access (atime), delete (dtime), create (crtime)
Date range14 December 1901 - 25 April 2514
Date resolutionNanosecond
ForksNo
Attributesacl, 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 permissionsPOSIX
Transparent compressionNo
Transparent encryptionNo
Data deduplicationNo
Supportedoperating systemsLinux Windows (using ext2fsd)
Jika ada yang salah pada artikel ini mohon kiranya anda comment, dan menjadikan koreksi bagi saya.
Tambahan: Jika anda melakukan browsing dengan menggunakan PC atau laptop dengan OS windows dan anda mempunyai masalah dalam explorer file ext, maka ada baiknya anda menggunakan ext2read yang dapat anda download di sini.
Sumber: wikipedia, kaskus, beberapa forum linux dan android
Suka artikel ini ?

About Lek. Andri

Admin Blog