People could get an OS already set up to use the Pi's boot system and drivers and desktop customizations and low RAM/CPU use, and wouldn't want to lose that. With the Pi 2, a new CPU was used that was ARM HF v7, which meant that it now supported other OSes out of the box without the need for the Pi Foundation to distribute them, but they kept doing so for two reasons: Thus there was a legitimate reason to create another competing OS. Raspbian was thus compiled from scratch specifically for the Raspberry Pi (and was partially a community effort at first, IIRC). That particular ARM CPU did not have support in any OS at the time (I forget if it wouldn't work or if the hard-float bit wasn't used, but at minimum the performance would have been poor if it worked at all). ![]() The next issue was that, all those years ago (and I feel old now), the original Pi computers had ARM hard-float version 6. Fortunately, there exist versions of Debian and Ubuntu (popular "Linux" OS builds) that are compiled for ARM. The end result is that "Linux" for a desktop won't run on a Raspberry Pi since the instruction sets are very different (there are ways, but you'd need to emulate it or port the code anyway). A string capitalization program would need to be written while index nonzero, compare numeric range and subtract 32 if in range, which is much more complex than the hypothetical single instruction an x86 device may have. ARM is a reduced instruction set language, and each instruction is designed to complete in 1-2 processor cycles, with a few other caveats I won't go into here. X86 is a complex instruction set, where operations can perform very complex tasks slowly and with varying times of completion (stuff like "capitalize a string" might be a single instruction, but takes a while depending on the length of the string).ĪRM is both the name of the company that licenses the CPU designs used in, among other things, the Raspberry Pi, and also the name of the instruction set used on those CPUs. A desktop machine uses what is known as an x86 processor, running a very old instruction set back from when Intel first started making CPUs (it's based on the numbering scheme used for those CPUs back then, although the scheme has changed since). You asked a rather involved question, which needs answers from several different sets of knowledge.įirst off, the Raspberry Pi uses a vastly different CPU than a regular desktop or laptop computer would.
0 Comments
Leave a Reply. |