A CPU, or central processing unit, is the core electronic circuitry that executes basic operations defined by a computer program through a three-step process: fetch, decode, and execute. CPUs can be single-core or multi-core; while single-core processors handle one task at a time, multi-core processors manage several tasks simultaneously. Additionally, CPUs may support multithreading to run multiple execution threads concurrently. Key components of a CPU include the arithmetic logic unit (ALU) for performing calculations and logical operations; the address generation unit (AGU) for calculating memory addresses; the memory management unit (MMU) for translating logical into physical addresses with protection features; and cache memory to speed up data access from main RAM.