Is the production year really a requirement for running the newest os with the newest xcode? Shouldn't it be enough fulfilling the hardware requirements such as cpu, ram, hdd, etc? If I in theory buy a mac from 2008 with the same hardware as a mac from 2016 will I really not be able to upgrade to the most recent os just because of the production year?
While the production year might not be relevant, new features introduced after a certain period might be required.
Nordis already mentioned CPU efficiency, but if you dive down to components you will also see newer instruction which are only available on newer CPU, more modern firmwares (UEFI) ect. etc.
All of which are not available on older hardware.
If the software is compiled to use these then they simply require those features. ... and Apple could mention that in specific jargon and be technically correct.
But given that this is Apple, and their average target audience it makes sense to put it in an easy to understand way, even if it is not 100% technical perfect.
Much in the same way a city might require a car which to be at most 20 years old, but actually mean any car that has a catalytic convertor.
If you could get in theory get a mac with exact the same specifications, it wouldn't be a problem.
You can see two intel CPUs with at least some similarities (I don't know if the second was used in a mac, but I doubt it)
- A intel CPU produced in 2008 Intel Core 2 Extreme Q9000 4 Cores, 2.0GHz, 45nm, 6MB Cache
- A intel CPU produced in 2016 Intel Xeon E3-1578L v5 4 Cores, 2.00GHz, 14nm, 8MB Cache
although the number of cores and and the base clock speed is the same, the newer CPU is more efficient (8 Threads, Turbo speed of 3.4GHz, integrated Graphics, smaller Lithography)
The reason newer OSX do not run on older macs is that the required drivers are not included in the OS or if they are, the OS requires higher CPU speed, or....
As time goes on apps/OS/etc. require faster CPUs, more Memory, better graphics, etc.