Thursday, April 30, 2009

PS3 vs PC

One of the things sponging up my regular blog writing time is my ongoing attempt to build a PlayStation 3 theme. While looking at the default cursors, I noticed that one was missing:

No hourglass! It was easy to notice since I believe the hourglass icon has burned itself onto my LCD screen at work.

On the other hand I had a nagging issue with my PlayStation 3 about a month ago that involved random lockups. I didn't get any hard drive errors and when the lockups always occurred when the system was loading something. These lockups always required a forced power-off.

The issue started happening while we were playing Army of Two and it then spread to other games. To be fair the copious amounts of pet hair in my house have me blowing the unit out on a fairly regular basis or the PS3 will become prone to heat lockups (an issue I also had with my PS2). I think between that and the fact that Army of Two would cause the system to crash and reboot when attempting to exit the game caused some file system issues (the lack of logging on the PS3 means the operator has to guess).

The issue (I think) is that the PS3 uses an encrypted, proprietary file system so there's no third party "chkdsk" or "scandisk" that can be run against the volume. The fact that there's no "first party" tools is an egregious oversight by Sony (who I'm sure isn't alone in this regard) since anything encrypted can be rather finicky. A minor corruption that would be barely noticeable on a regular old FAT partition could bring down an encrypted volume and then on top of that there are no tools available to bring it back!

I'd put off fixing this issue for about a week or two, but when we bought Resident Evil 5 I figured I'd better have the PlayStation 3 in perfect working order before we sunk a huge amount of time into our new game. I figured what would give me the best shot at clearing up the issue was to backup the data, format the drive, and restore the data while hoping that Sony backs the files up rather than imaging the partition (which would be easier and generally faster from a technical standpoint, but it would do nothing to clear the issue). At this point I entered into an aggravating adventure with the external hard drive I was going to use to back the data up onto.

Between demos, music, pictures, etc. my backup needed about 70GB worth of space. This was fine I figured as I had a 500GB hard drive. The first issue, which I knew about, is that Windows will only create up to 32GB FAT partitions. The reason for this is that FAT is horribly inefficient ('FAT32', FATs current incarnation, was originally designed to optimize space on 500MB to 2GB drives) so if one was to partition a 500GB drive using FAT a small 1,000 byte file file would probably still wind up eating up 32,000 bytes worth of space, not to mention the fact that the partition table itself would ring in at about 64MB (source). However, I didn't care about any of that. Even if the inefficiency of FAT meant that I'd only be able to use 60% of the space, that was still a good deal more than I needed.

With my Linux boot CD in hand, I booted up and formatted my monster drive FAT (which can take quite a bit of time) and then hooked it to the PS3. Nothing. Maybe it was a partitioning problem in Linux (the tools don't exactly give a lot of feedback)? I redid the partition. Nothing, the PlayStation 3 still didn't see the drive. I hooked it to a Windows system and it saw it fine (Windows won't make large FAT partitions, but it can use them, a most aggravating 'feature'). I then attempted (at around midnight) to make a smaller partition within Linux, but the OS showed me no love (making fractional FAT partitions in Linux isn't something I do every day, or ever).

Discouraged I dumped data off of the PS3 until I could cram the backup onto a 32GB partition, backed it up, formatted it and restored. Thankfully I was rewarded for my efforts by having a behaving PS3.

From what I've read (one uncorroborated forum post) the PS3 maxes out on readable partitions at around 500GB because the size of the partition table exceeds the PlayStation 3s drive management memory limits. I wanted to find out how far 'around' 500GB that was, but I haven't had time to sink into it.

No comments: