forgive my ignorance, there must be a really simple answer to this, but im unaware of it, also, tried google-ing for it, but didnt know what to look for exactly, and didnt get much good answers either.
my question is, since 2^32 is around 4Gb, so max usable RAM on 32bit pc is 4GB.
then in what way HDDs with hundreds of GBs are happily supported by the same os...
The maximum size of a hard drive partition is not determined by the operating system (32 bit or 64 bit). It is determined by the file system. Thus, NTFS can manage a larger partition than FAT or FAT32. Whether the medium is solid state memory or magnetic platters is irrelevant.
The ATA-6 /Ultra DMA100 standard provides for a 48 bit LBA address space for sectors [Ultra DMA133 is just faster], so that is the current hardware limit, I believe. 2^48 * 512B sector size = 144 * 10^15, or 128 * 2^50. That is 128PB. 2^50 is a PiB.
NTFS itself uses 32 bit addressing internally, although it is capable of 64 bits; NTFS uses 4KB clusters as address blocks by default, so theoretically you have a partition size maximum of 16TB. 2^32 * 4096 = 17.6 * 10^ 12, or 16 * 2^40. 2^40 is a Tib.
But if you forgo file compression capability you can set a cluster size up to 64KB with the format command.... and the limit for NTFS is then 256TB. Who needs file compression on a volume like that?
Why would one want to keep so much data on a single drive? The ball bearings must be made with something really special in these gigantic GB and TB HDD for folk to have so much faith in them.
Call me old fashioned, but I prefer not to keep all my eggs (data) in the one basket(HDD) and even though small capacity HDD are becoming like hens teeth, any chance I get to buy them, I do.