> On Thu, Apr 17, 2008 at 03:20:00PM -0600, Theo de Raadt wrote: > > BTW, you don't mean mips. You mean sgi. mips is a cpu architecture, not > > a machine. > > This is an issue that has always confused me. It is obvious that the > binaries for OpenBSD must be different for each cpu architecture, but > why are they sometimes different for machines that have the same cpu > architecture?
Because the machines are VERY DIFFERENT. > For example, there are different binaries for OpenBSD on hp300 and > mvme68k machines, even though they both have a Motorola 680x0 cpu. They don't boot the same way. The cpu is wired via a different mmu to the memory. Yes, hp300's can have alternative mmu's. The interrupt pins are different. The rom of the machine is different, and you need to talk to it, in different ways. The memory is in a different place, yes, physical memory is mapped differently. The serial ports are different chips, in different places. You need to talk to them early, sometimes. The clock chips are different. etc etc etc etc A processor is not a complete machine. > There are also different binaries for zaurus and armish machines, even > though they both have an ARM cpu. Why? The packages are the same for a cpu architeecture. But the binaries do contain small differences from time to time. We try to constrain the issues which leak into userland, but nothing is perfect yet. Shrug. The real answer for now is a very simple: Because. > Is it because these machines have limited memory, and there is only room > for those drivers that are needed by the specific machine, or is there > something more subtle going on? No. It is because the machines are FUNDUMENTALLY VERY DIFFERENT. No go put that Ford part into your Toyota car.