Most new desktop computers will contain a single main CPU chip that has multiple cores. Each core acts much like an independent CPU.
Sometimes, each core has a feature called simultaneous multithreading (SMT) which makes each core appear to the operating system as two or more virtual cores. Intel call this HyperThreading.
So one CPU chip may contain four cores, each of which has two virtual cores resulting in the operating system seeing eight CPUs.
The main conceptual difference between a CPU, core and virtual-core is in the amount of shared resources within the chip.
In the past it was common for high powered servers to have several separate CPU chips (and this is probably still true), sometimes on separate CPU boards that plug into a common backplane.
Desktop computers will also have one or more GPUs, primarily for graphics. These are much like CPUs and can be used for specialised general computation such as bitcoin mining.
Desktop computers will also contain numerous other chips that are not CPUs. These perform specialised functions such as providing USB interfaces and so on. The term chip is used for any integrated circuit (IC) in a package that can be soldered to a printed circuit board (PCB).
Here's a random example of a PC motherboard of the sort you might find in a desktop PC:
- "AMD Socket 942" - where a single main CPU chip is installed.
- "AMD SB950 Southbridge" chip - helper chips for the CPU
- "AMD 990FX Chipset" - Graphics Processing Unit (GPU)
- "Intel Ethernet GameFirst II" - chip for network interface.
Each CPU chip has an internal logical architecture, here's an example that shows one way of arranging shared resources inside a single chip.
Image from AMD
The exact details can be very different between manufacturers and between generations and ranges of chips from the same manufacturer. It is a rapidly changing area. The general idea still holds.