Samsung Creates New File System F2Fs For Linux & Android
sfcrazy writes "Samsung has created a new Linux file system called F2FS. Jaegeuk Kim of Samsung writes on the Linux Kernel Mailing List: F2FS is a new file system carefully designed for the NAND flash memory-based storage devices. We chose a log structure file system approach, but we tried to adapt it to the new form of storage. Also we remedy some known issues of the very old log structured file system, such as snowball effect of wandering tree and high cleaning overhead."
While the primary benefit will initially be for Android devices, this will be great news for solid state drives as well. Great job Samsung!
Well yeah, McDonalds isn't going to going to manufacture couches when it has no benefit to them.
Commercial hardware companies contributing to open-source and the kernel, I mean.
It’s nice to see that Linux and the open-source philosophy more and more just is generally accepted.
Let's hope it.s because they have seen the advantages of humans working together, helping each other out... and not just for nefarious dog-eat-dog (aka capitalist aka "free market" aka law of the jungle*) purposes.
* Don’t worry. I know they're not supposed to be the same. The point I want to make, is that nowadays it gets all used to describe the same thing.
Sure, and they might not have released it to the public if it weren't for the GPL. On the other hand, they've developed something that looks like it may be very useful, and have released it without batting an eye. They're one of only seven Platinum members of the Linux Foundation. I think it's clear they understand how the ecosystem works, and they're happy to participate. Hard to fault them for that.
And actually, as I understand it, they use Linux for a lot more than just Android devices. They also have embedded Linux in other systems, like TVs.
That's the beauty of the open source model. People and businesses contribute things that benefit them directly, but they benefit everyone indirectly. Large companies don't contribute to the Linux kernel to be nice guys, they generally contribute code and patches to benefit their own products and systems. Their contributions benefit everyone, however.
Some freezers too. They are actually involved with the development of the ELF end the enlightenment windows manager.
I think Samsung likes Linux a lot
Glad to see proof that Samsung does innovate and not steal everything from AAPL like all Apple Fanboys think.
What are you talking about? This is clearly a copy of Apple's original filesystem concept THAT THEY INVENTED when they created HFS! Why doesn't Samdung ACTUALLY innovate and find a new way to store data on a collection of sectors instead of just copying Apple all the time.
The worst part is that Samdung didn't also copy the MARVELOUS AND CLEARLY CORRECT INVENTION of hiding the filesystem (which Apple invented) from the users. They're so far behind Apple that they can only BLATANTLY STEAL the easy parts!
And actually, as I understand it, they use Linux for a lot more than just Android devices. They also have embedded Linux in other systems, like TVs.
Really? Well that explains why my Samsung TV has such a horrible interface*.
* Kidding. :P
"I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)
Hope Apple wasn't planning on using this in their iPads...
Peter predicted that you would "deliberately forget" creation 2000 years ago...
No. SSDs present themselves to the OS as contiguous block devices. Filesystems intended for bare NAND flash like jffs(2), yaffs, and this new F2Fs would be totally useless for SSDs. They're intended for bare NAND, which SSDs are not.
You're wrong
f2fs work on top of block devices. f2fs sends TRIM (ATA command) down to the device. Bare NAND flash doesn't grok ATA commands.
Bogus
Watch out, Apple.. we have a FILE SYSTEM!!!
You know who else had a filesystem?...
the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff
Apple created the LFS, Litigation File System. The unique innovation looks ahead for a user copying a file from one directory to another, blocks the request, and transfers the operation to a county in Texas to be tied up in I/O for years.
The irony being that a McDonalds couch would likely contain more actual meat than one of their hamburgers.
I think Samsung likes Linux a lot
Considering that a Platinum membership in the Linux Foundation requires plopping down at least half a million bucks, I suspect you're probably right. :)
Heck, Google only has a Gold membership, and we know they like Linux. Samsung is in elite territory with corporations like IBM and Intel.
I know you're kidding, but I should point out that Linux is not a requirement for building bad interfaces (though one might claim that it helps). TV engineers in general seem to have some impressive skills at building bad interfaces. My last three TVs all had terrible interfaces, and none of them were Linux-based. :)
You can find a lot of details in the txt file: https://lwn.net/Articles/518719/
int main() { while(1) fork(); }
This cannot replace FAT, since the whole point of FAT is to be interoperable with all those Windows machines out there. For as long as Windows only understands FAT and NTFS on removable devices, any consumer device will use those (and specifically FAT, for certain other reasons) in any of its memory that is directly exposed to be mounted as a block device.
On the other hand, for internal device memory, Android has already moved to a high-level protocol (MTP) to expose that to PCs, so they don't care what file system backs it internally. I haven't checked, but I'd expect that any 4.x device has its internal memory fully in ext4 or other Linux native FS already.
Well considering the vast size of Samsung, they probably do far more work with Linux than Google does as well.
People forget we're talking about a company that not only builds products in pretty much every home electronics category but also ships, CCTV, aircraft (for a while), artillery and automated turrets. None of this counting the bits and pieces they research and build that go into each of those products.
Actually, it's not for bare nand like you find in android devices... it's for SSDs like their recently released 840 series.
Windows has some built-in support for MTP (at least since Vista), though it's not on FS level - instead, it's hooked up into Shell/Explorer, much like Libraries in 7. So if you're content with Explorer, or some file manager that's using Shell interfaces, then it should just work.
For automation, when you actually want to see it as FS, yeah, it's a mess. Ideally a driver-source-compatible port of FUSE would solve this, and people have made several attempts at FUSE-Win32, but apparently writing Win32 FS drivers is not for the faint of heart, so I don't know of anything stable.
While the primary benefit will initially be for Android devices, this will be great news for solid state drives as well. Great job Samsung!
Before you go congratulating them on a great job, remember this is the second time they did this. The original attempt was called Robust File System. It was an abortion based on FAT16/32 with a duplicated file allocation table and some sort of journalling hacked on top.
It was claimed to be optimised for NAND devices and all that other good stuff, but the community quickly came to rename it Really Fucking Slow.
This file system was so slow that on the original Galaxy S the kernel would think software locked up while writing to the disk and prompt the user to force close the device. Search for "lagfix" if you're interested in what a disaster this was. There were users world wide trying to find fixes for the slow system performance, and the fix was often in the form of a kernel which supported ext4 or yaffs and a utility which converted the entire /system and /data partitions in the phone to the more common file systems.
I don't have high hopes in Samsung's competence here.
It looks to me like most the problems they are solving have already been solved. There are already several open source log-structured file systems. This list excludes experimental and similar software from educational institutions:
- Yaffs - http://www.yaffs.net/ - designed from the ground up for NAND
- JFFS2 - http://sourceware.org/jffs2/jffs2-html/jffs2-html.html - ditto.
- NANDFS - http://wiki.freebsd.org/NAND - BSD style licence
Plus there's Ext4 - which is used in Android now - not designed for NAND, but seems to work ok.
This work by Samsung fixes the problems with their previous file system. It's good, but it's not unique. Good PR though.