32-bit vs. 64-bit Architecture

I will probably learn this in my Operating Systems class. But it is so much more helpful.

I never took the time to understand this. I always just though 64-bit was better, because it was a bigger number, but what is really happening under the hood?

And as I run into things like GDB not supported on arm64, but is supported on arm32, I wonder, why is that the case?

  • So it does work on arm64, just not the M1 Macbook

The actual difference is the use of 32-bit registers or 64-bit registers. In ECE222, you learned RV32I, which uses 32-bit registers.

Resources:

A 32-bit system has a RAM limit of 4GB, which is TINY.

Note

A 64-bit processor system can run either a 32-bit or 64-bit version of an installed operating system (OS), but a 32-bit process cannot run 64-bit OS at full capacity.

Okay, all modern computer architectures use 64-bit, because 32-bit cannot use enough ram (unless you’re working with like Raspberry Pi).

The real difference in computer architecture that causes headaches, is x86 vs. ARM.

  • x86-64 / amd64 used by Intel and amd uses amd64
  • arm64 used by ARM, and Apple

Differences https://www.analyticssteps.com/blogs/understanding-arm-processor-vs-x86