photography

 

Overview

This is the base page of the section of photography.

filesystems in memory cards

here is what I can remember for a table of filesystems that various types of cards use, based on the limitations of the various filesystems. ahh, here is a microsoft technet article on some of their filesystems.

memory card size and the filesystem probably used by the card
sizefilesystem
2GB and lowerFAT12
2GB(4GB)FAT16
8GB-32GBFAT32
64GB and upexFAT/FAT64

some applications don't like the 4GB size on FAT16 due to signed/unsigned integers. so it's usually safer to stick with the 2GB limit for FAT16.

FAT32 can actually handle 127TiB (4177918 clusters*65535bytesPerCluster*512bytesPerSector/2^40=127.497TiB). but the

exFAT/FAT64 can handle MUCH larger datasets. on the order of 2^64 blocks=18,446,744,073,709,551,616 at 4k/block means just a huge amount of data we are not likely to reach any time soon, so you are not likely to need to change the filesystem again for a very long time if you are currently using 64GB cards and up.

older cameras and devices don't support newer filesystems. that is the reason why you can't put a 32GB card into a camera that says it can take 4GB max - it's the filesystem I am pretty sure.

NTFS is only for internal fixed disks. it is not meant for external drives. for that you should format using exFAT/FAT64.

memory card care

large cards should not be formatted on a computer. they should be formatted with card SD/SDHC/SDXC card formatting software in the case of SD cards or formatted in the device.

WARNING: I bricked a good not-too-old card by using Windows to format the card with FAT32! I think somehow maybe the camera filesystem is somewhat different, or maybe it's the way the software writes to the flash memory (could be). I was told FAT32 on an SSD on windows 98 bangs on a very few sectors a lot and wears the sectors out and makes them go bad, because anything below win7 does not have TRIM (however win2k can be optimized greatly for SSD's and it runs rings around everything else) - I could stand to learn more about memory card technology.

a computer puts the filesystem on the wrong way, there is something just lightly different about memory card filesystem formatting, I don't know what it is yet, but something is different enough that I found I bricked a card using a computer to format the card without proper software in the case of SD cards. I didn't want to do that again. the card wasn't very old either.

about OS disk/removable disk cache, and why not to just remove the card when done

today's typical operating systems (not talking abotu DOS here) cache disk writes. that includes removable disks, under which category you find memory cards and mempory card readers. what this means is, let's say you saved some pix on a card or deleted some pix on a card. that means writes. those writes are held back until they can be done in a burst or at a more convenient time by the OS, usually when the removeable disk/extrnal disk (memory card) is ejected/unmounted. the situation is fine and the filesystem remains stable as long as the card gets ejected before being taken out. but if it's taken out before being ejected in windows/mac/linux, those writes won't make it to the card, also any changes to the card's filesystem also won't make it. 50/50 chance of it being OK. after doing something like this, get the files off of the card, and reformat the card in the device to fix the filesystem or use the SD card formatging software for an SD/SDHC/SDXC card.

when working with memory cards, if you want to keep your photos in good condition (not lose anything), you should know that the computer's operating system has cached some of the data it intends to write to the card. that means the cache has not been flushed. to flush the cache, in windows you simply eject the card using windows explorer or "safely remove hardware" green arrow icon. in the mac I am told you drag the device into the trash to eject/unmount it, but I don't know if this is still true, I think it's not now, it seems the mac manuals have an eject feature.

once the drive is unmounted/ejected, you can safely remove the card. you will probably find that as long as you follow this procedure, you won't have to format the card again.

memory card wear - it's not for quite a long while!

users of memory cards should know that there is a fixed number of block writes that the flash memory card can take.

this is calculable as the size of the card times the number of Program/Erase cycles for type of flash memory the card uses (mfr's typically don't tell you what kind they use, but you can usually assume it's MLC I have read.

memory card size and the filesystem probably used by the card
flash memory typemaximum Program/Erase cycle count
TLC800 (very fast and inexpensive, large sizes)
MLC3300-5000 tpyical, 10,000 sometimes, 30,000 enterprise SSD's at $750/pop
SLC100,000 (typically comes in very small sizes, but very fast and very expensive)

MLC is the type of memory you will usually find in consumer stuff, unless maybe it's called a very fast card it MIGHT be TLC or SLC (more likely TLC). if it's really expensive, it could be SLC if they were being nice and it's a pro card (I would have to ask a mfr about that).

example: Sandisk "8GB" SDHC card from Costco (or Radio Shack, etc), taking worst case of 3300PE cycles for MLC:

8GiB*3300PE Cycles=8*2^30*3300=28,346,784,153,600 bytes of writing, or 25.78125TiB.

my Nikon Coolpix P90 (12.1MP) uses about 2.5MiB/jpeg 4000x3000 (12.1MP) picture. that means you could store 8*2^30*3300/(2.5*2^20)=10,813,440 photos before the card utterly and completely fails and it's all bad blocks. that's a lot of photos! let's look at that number in terms of photo vacation trips. assuming you take 3000 photos/trip, 10,813,440/3000=3,604 trips. still a lot! :-)

even if Pro cards do use TLC, if that were the case, let's look at the situation:

8*2^30*800/(2.5*2^20)=2,621,440 photos at 2.5MiB each. at 3,000 photos per trip, you are looking at roughly 2,621,440/3000=873 trips. that still seems like a lifetime...

8*2^30*800/2^40=6.25TiB worth of writes. not bad!

and no moving parts!

the calculator I am using is ttcalc. it handles big numbers up to 99 digits.