Developing an iOS apps, there was a thing that drove me mad: executing the same app that created the same files at the same path, the iPhone simulator worked the correct way, while a real iPhone didn't. I eventually discovered that i mistyped a character (uppercase instead of lowercase) and consequently the iPhone created a folder starting with an uppercase character, while putting the file in a path with that folder starting with the lowercase version of that character. The simulator however, didn't care of that difference. I suppose that was because the simulator, running on a case-insensitive system (OS X/mac OS), inherits its "case-insensitivity", while the iPhone (seems to me) is natively case-sensitive.

Is there any known explanation/documentation by Apple (or other trusted sources) on why the iOS filesystem is case-sensitive, given that is an OS based on a case-insensitive one (OS X)?