The idea of porting RISC OS to x86 comes up regularly, and although it sounds like a good idea, it’s not. This article discusses the problems, and why in reality, it’s simply not a good use of resources.
RISC OS On x86 – Not Again
2005-08-26 7:11 pmtrapexit
Who cares if it’s a “good architecture.” It is the most common, at least in regards to what people use on their desktops… that’s why people want things ported to it. English may not be the best spoken language but if you want to get by in the USA you need to know it. Just about everyone uses it. Thats why books are printed and signs written in it.
2005-08-26 8:12 pmhelf
Still doesn’t mean *everything* should run on x86 .. I hate people trying to port everything under the sun the x86 if it doesnt already run on it.
people are all “you will get instant benefits! like all the cheap hardware out there for x86!!” .. okaay… one word. Drivers.
anyways, I hope RISC OS stays on arm. risc os 4 select is really nice and its getting better. I’d rather see them spend all their time developing it than trying to port it.
The worst problem would be trying to name what you have when you are done…CISC OS? x86 OS? What they need to come up with is a low cost(sub $500) ARM based PC and make it popular somehow so that everyhone wants to use it.
I think people need to ask, why a person would want RISCOS running on their x86? if it is the look and feel, then wouldn’t it be better to recreate it using an existing or create a new tool kit, and simply re-create that experience ontop of an existing or create a new operating system based on an existing one already out there – FreeBSD core with a RISCOS-like GUI sitting ontop.
i would buy an ARM based sub 500$ system. i hope apple dropping PPC arcitecture opens it up and allows pc builders to offer it as an option. i would LOVE to see an A-Bit PPC mainboard or an IBM PPC based laptop.
I fully agree that there is
a) not enough money to port it
b) not enough money to create an emulation environment
c) not enough big developsers to create entirely new software (or ports of their software)
d) not enough money/manpower to maintain a x86 driverbasement
I agree that porting RISC OS to anything else than ARM CPUs is simply nonsense. I think the real issue is that todays ARM CPUs are created to fullfill mobile tasks and to fit into highly embedded environments. A soloution for the RISC OS guys could simply be to synthesize their own CPU which doesn’t care that much about power consumption but performance – but this would be a giant investment, too.
2005-08-30 10:52 pmAnonymous
“Synthesize their own CPU?!?!?!?!?!”
You’re kidding right? Or did the RISC OS world suddenly stumble across a few billion or so dollars?
“synthesize their own CPU”. Acorn already did that. The ARM was originally created precisely to run RISC OS – or rather, ideas that were eventually to become RISC OS.
“not enough money to create an emulation environment”. Why do you agree that – in fact, I didn’t state it in the article, so it’s hard to agree with. Besides, such things already exist. I can only conclude that you and several other posters here didn’t read the entire article.
Hey, why not port AmigaOS4 to x86 while you’re at it.
It’s not like we don’t have a lot of alternative OS on x86, but the OS is only as good as the applications for it. Make something useful with your time and make good software for some of them instead.
Perhaps the reason for running RISCOS on X86 relates to the fact that you can buy a 2.5Ghz X86 PC for less than a 600Mhz ARM chip?
The real reason no one will ever do this is that programming the X86 in assembler is truly a loathsome experience compared to programming the ___________ <- insert almost ANY other processor here.
Perhaps RISCOS on CELL would be more fun for someone.
It is sad though that some of the other instruction sets where never bolted onto supercomputers and cranked up to 3.6GHZ like the worst one of the lot has been..
2005-08-30 10:55 pmAnonymous
Yeah, assembly programming on X86 is tough. If only there were some kind of non-assembler language that could in some way be compiled to assembler afterwards….. Think how popular that would be! Why, the vast majority of programming might one day use such a technique!
“The worst problem would be trying to name what you have when you are done…CISC OS? x86 OS? What they need to come up with is a low cost(sub $500) ARM based PC and make it popular somehow so that everyhone wants to use it.”
Infact, actual x86s are not CISC nor RISC. All x86 processors are crossover CISC-RISC processors. Intel said all Pentium processors since Pentium III are “CRISC processors”. AMD said Athlon processors and their heirs have an “almost RISC core” with an x86 CISC emulation layer in hardware.
Infact, even the actual so colled RISC processors (Power, PowerPC, ARM, MIPS, Cell etc etc) have instruction sets more like sort of CISC than real RISC. New ARMs have PowerVR instructions: graphic acceleration instructions are not RISC-like. PowerPC G4 and G5 have AltiVec units: these vectorial units are full CISC-like. Cell is a so complex processor that the “reduced” in RISC for it is a pure blasphemy, but for strange reasons people call it RISC (infact its 8 multimedia units are CISC-like and only one of nine total units are a pseudo-RISC Power unit).
These times there aren’t any real RISC processors, not even CISC. Than, it’s a long time problem the name RISC OS cause there aren’t real RISC processors anymore.
“Why not port RISC OS to <insert random CPU here>”. Well, that’s another person who hasn’t bothered to read the article, and come to a pointless suggestion. The appeal of x86 is cheap fast hardware and software technologies that already exist. With the possible exception of PowerPC, porting to anything else would make the job _even harder_ and more expensive that I already said it would be. The horridness of x86 doesn’t come into it, any more than it does with the people running Linux on x86.
run a Python Virtual Machine in a minimal working Xen hypervisor then port it to Python
Would really like to read the article but the site says “Bandwidth Exceeded”…
As I said here http://www.iconbar.com/RISC_OS_on_x86_-_A_bad_idea/news642.html the article doesn’t include any references to the idea of porting to x86 being mooted, and dismisses previous discussion of the (IMO) more practical approach of using an open source OS to provide the guts (and device drivers) of the OS as “unfortunate hand-waving”, again without references to allow readers to decide for themselves.
The article is available again.
Let the software define the hardware, not vice versa.
While this may be true for aftermarket HW parts, the opposite is true for OS development, which is primarily based on the architecture of whichever system they have chosen (ex: x86, SPARC, Alpha, PPC).
Couldn’t it be JUST as possible to create a base OS that is compatible with any HW architecture? Wherever it doesn’t seem feesible, set the standards that expect them to remain within certain design specs?
HW changes often. The OS provides the interface to the user and should remain more constant. Base it on a modular design, then continually refine the software to make it as stable as possible. As new hardware types are introduced, create new modules to add or replace previous ones.
Just a thought…
In the particular case of Acorn (who wrote RISC OS), the hardware was developed in conjunction with the processor, the Acorn RISC Machine. The processor (ARM) is now quite popular, but no longer under the control of the OS company.
Wouldn’t you say that Linux is compatible with practically any architecture? It seems to run on a vast number of devices.
Maybe Just In Time Compiler that doesn’t run on top of any OS, but as a standalone “kernel”, would be better. They probably wouldn’t have to rewrite the core, jut write drivers for the x86 hardware.
IMHO it’s not worth to “port it” (read: rewrite almost from scratch).
I hope no one spends a lot of effort trying to do that. RISC OS just isn’t made for that kind of system.
that and I hate how EVERYTHING has to run on x86 nowadays
Maybe an Amithlon type solution would be more appropriate?
Could be done by running on something like QEmu / Xen and just using the “virtual” equivalents – the host OS will sort the rest out.
Really, running a whole machine emulation of an ARM system in QEmu is likely to be the easiest and quickest to get doing (although that doesn’t give you full performance, so it’s better suited to legacy compatibility than as a future development path).
Why does everyone think every OS must run on x86, and if it doesn’t, it should be ported immediately, or emulated to run on it? Say it with me kids: x86 is not the king of CPUs, and just because it’s common does not mean it’s good. Hell, x86 is not even a good architecture.
So, yes, I agree that RiscOS is best left on the ARM.