Offtopic:
Although multicore and multithreaded cpu's are relatively new, multiprocessing dates back to the mid-fifties. Already in 2000 I had a dual Pentium II machine running NT4.0, Linux and Solaris (not at the same time, mind you). They all made use of both CPU's. It's remarkable that it has taken such a long time to come up with the idea of multicore/threading and that programming them still is a problem.
A fine example of early custom chip (multi)processing was the Amiga, where already in 1985 the chips Agnus, Paula and Denise did work for the 68K CPU to produce graphics, sound, control I/O and memory access. Agnus essentially being the first ever successful GPU and DMAC and sometimes even controlling the CPU and being able to manipulate graphics without using CPU cycles. Programmers didn't even need to use the multitasking kernel.
Had programmers and hardware designers of the x86 platform taken a closer look at the way the Amiga solutions were implemented, these things would've been easier a long time ago.
|