I have never understood this.
This is what i know: 64 bits OS if you want to handle more than 2GB RAM. Else, 32 bits OS.
So on Ubuntu's homepage you can download either 64 bits or 32 bits. But the 64 bits is called amd64 and the 32 bits is called i386.
So i have to have a AMD processor to run amd64? And intel to run i386?
And if someone codes a software (lets say Apache). Does he have to code one 32 bits and one 64 bits? Do some softwares only exist for 32 and not 64 and vice versa?
Thanks in advance!