Remix.run Logo
VogonPoetry 3 months ago

I think that making the iPod mount like a filesystem would have had significant impact on other aspects of the device.

There is no filesystem level abstraction over USB (or Firewire). So plugging in presents as a hard drive / block device, which then means it needs to have a filesystem. For "built-in" cross OS compatibility that means it would be have to be a FAT filesystem. If you change these decisions either a new filesystem or device driver would need to be installed for some machines.

Most devices that present a FAT filesystem when plugged in stop working like they do when unplugged. i.e. the device itself and the connected computer cannot access the data at the same time. For the iPod this would mean it wouldn't be possible to play music while syncing.

I think it might be possible to build a "fake" drive and FAT filesystem when plugged in, but it would take quite a bit of work and have lots of odd corner cases. For example, the user on the computer attempting to re-format the drive, perhaps with a different filesystem.

mulmen 3 months ago | parent [-]

Ok but the iPod could literally act as external storage.

https://en.wikipedia.org/wiki/IPod

> Some versions of the iPod can serve as external data storage devices, like other digital music players. Prior to macOS 10.15, Apple's iTunes software (and other alternative software) could be used to transfer music, photos, videos, games, contact information, e-mail settings, Web bookmarks, and calendars to the devices supporting these features from computers using certain versions of Apple macOS and Microsoft Windows operating systems.

VogonPoetry 3 months ago | parent [-]

This is / was implemented as a custom protocol to transfer files. It doesn't work out of the box with all programs on any system after the iPod is plugged in - it needs a program (consider it a driver) to be installed on the host computer for it to work. It only works with the programs that speak the protocol - installing the program does make it available to all programs on the host. This is quite different from making the iPod behave like an external hard drive.