▲ | jerome-jh 6 days ago | |
This is a modularity vs integration tradeoff. - Linux is a patchwork of SW, written in a variety of programming languages, using a variety of libraries, some of which having the same functionality. There is duplication, misalignment, legacy. - MacOS is developed by a single company. It is much more integrated and coherent. Same for the CPU: - x86 accesses memory through an external bus. The ability to install a third party GPU requires an external bus, with a standardized protocol, bus width, etc. This is bound to lag behind state of the art - Apple chips have on die memory, GPU (actually same package but not same die). Higher speeds, optimization, evading from standardized protocols: all this is possible. This has an impact on kernel/drivers/compilers: - x86: so many platforms, CPU versions, protocol revisions to support. Often with limited documentation. This wastes hell a lot of engineering time! - Apple: limited number of HW platforms to support, full access to internals. |