If Windows Came to PPC, Would You Switch? 906
An anonymous reader asks: "This question was posted on Ask Slashdot about a week ago: 'If Mac OS X Came to x86, Would You Switch?' This makes me ask why not have Windows run on PowerPC? Windows/PPC would not necessarily have to run on Apple hardware, or at least not exclusively on it. I'm sure their friends at IBM and Motorola would be happy to provide chips to anyone that wanted to make computers to run this new OS. Microsoft could dust off the code from NT4/PPC, add some code from Virtual PC to get Windows/x86 compatibility, and have it up and running in about the same amount of time it would take Apple to get Mac OS X running on common Intel hardware." An additional question comes to mind, however: If Microsoft made this move, how would Intel react?
Wrong about timeframe (Score:5, Informative)
Apple has regular builds of it's code OS, Darwin, on both Intel and PPC hardware. This is available to anyone here [apple.com].
It's been said that Apple still build all of their apps on Intel-based Darwin, therefore keeping an eye on portability, while giving them a chance to see where optimisation could break other platforms.
Apple had to change processor in the past and wants to keep it's options open, this time around. Besides, don't forget Mac OS X is basically a souped-up OpenStep, wich ran on both 68K, PPC and Intel hardware. (Oh yeah... Sun hardware too for a while).
Re:Why would anyone think this would happen? (Score:5, Informative)
Re:Short Awnser: no (Score:2, Informative)
Not going to work. Products like VMware and VirtualPC do not emulate a CPU, they only provide timeslices of (or some other technique of sharing) the real, underlying CPU. This is for performance reasons, and even still, they lose about 20% to overhead.
The upshot of this is that, when running on non-x86 CPU, VMW/VPC cannot host an x86 OS.
For example, if you run VMWare on an Intel P4, the guest OS sees an Intel P4 CPU.
The Mac solution to running x86 stuff must emulate the whole x86 CPU, and as a result is incredibly ssslllooowww. Incidentally, this is where Transmeta's code-morphing chips were supposed to save the world. Too bad nobody's ever seemed to pursue the idea outside of the laboratory.
Isn't this what .NET's for? (Score:4, Informative)
Isn't this what
Re:Cost? (Score:4, Informative)
Mac fans try to talk about the "great" hardware you get with a Mac, however if you compare a $1,500 iMac G5 vs a $1,500 AlienWare box, there is no contest. The AlienWare box gives you far better hardware that out performs a Mac hands down. Note: I an not talking about the OS, just what you get hardware-wise for your money. Apple, just cannot compete with the x86 market on hardware because of the massive x86 volume.
Re:Why? (Score:2, Informative)
Also, as it stands, hardware manufacturers HAVE to buy their hardware from either Intel or AMD (and a few other home-baked clones; not always 100% compatible). But each CPU is different.
In the PPC world, not only is all the hardware open (IBM will let anyone use their cores: Power Everywhere I believe they call it; and the PPC specs are open for anyone to create their own CPU) but so is the firmware (OpenFirmware, an ieee standard), so no BIOS-vendor DRM lockout in the near future. Basically, the PPC platform is all about openness. Anybody can make a PPC motherboard. IBM even has a sample circuit diagram for one on their site. Problem is, to date, there hasn't been so much demand for such boards.
That said, the Windows on PPC question is pointless. They'd have to port everything PERFECTLY to get a system designed for an x86 (+asm tweaks) to work decently. And you'd still have to recompile all 3rd party software to get decent speed. Just my 2 cents worth
Re:How to put this... (Score:5, Informative)
You have to also remember that the Alpha, MIPS and PPC platforms were aimed at a much different market than the Intel boxes. The Pentiums of the day just weren't up to snuff (this started to change once the PII started the MHZ escalation from 300-500mhz), and things like the Integraph TDZ series hit the market.
But you were still talking $10K-$20K graphics workstations.
Re:Why would anyone think this would happen? (Score:3, Informative)
Because Slashdot isn't a part of the real world. It's a collection of tech fanatics who don't understand business at all.
Right, that's why just about every post in this discussion is wondering what the hell kind of crack the story submitter was smoking. The truth is there's a small, insane, vocal minority that the majority likes to hear from so we can all rip them to shreds every so often.
The only thing that the majority seems particularly weak on is science stories. Slashdot knows computers, but slashdot don't know jack (though more than Joe Average) about science.
Macs with PPC+x86 processor (Score:1, Informative)
How did the big plan work out? Few people wanted it. Almost nobody used it. So, to answer your question, a big fat "NO".
Re:How to put this... (Score:2, Informative)
At the time my job was to compile the software we developed for the programers and QA. We compiled the software to run on MIPS, Alpha and the PPC versions of NT 4.0.
However, I don't think any one bought any of the software to run on anything other than Intel and maybe Alpha.
Re:Obligatory Quote (Score:5, Informative)
Re:How to put this... (Score:2, Informative)
NT being able to always run on Alphas was part of the out-of-court settlement that Microsoft reached with DEC. Why do you think they stopped it calling it NT and started calling it "Windows", besides the obvious marketing whackiness? They were trying to lay groundwork to claim that the new OS was no longer NT and they wouldn't have to run on Alphas, until Intel bout out the Alpha technology (using money they made with the Alpha technologies stolen and used in the Pentium 4 design), and the deal was null and void.
But this level of theft and craziness and the really poor support Microsoft has provided for their hardware running on anything other than hardware from their partner, Intel, is why Windows running on PPC chips is a losing proposition. It will be as behind and bug-ridden as MS Office on Macintosh systems is. They won't write tools that take full advantage of the PPC capability, instead they'll leave in the screwiness to emulate the flaws of the x86 architecture.
NT for PPC (done before); processors (Score:5, Informative)
Windows at present is mostly based on the 32-bit Intel architecture. Microsoft did its worst dirty tricks in the last dying days of the segmented 16-bit architecture, using DOS dominance to get market share for its 32-bit attempt. It's going to have to chose between AMD-64 [amd.com] and Intel-64 [intel.com] anyway, or support both, and binary application developers will need to make the same choice, so I guess the submitter would argue that PPC-64 [apple.com] (which has been around longer) is a viable option. However, there's a big movement away from software that's tied down to one platform or another, which is good for Linux [kernel.org], Java [sun.com], and all the other OS, hardware and software vendors, programmers, and users.
The limited adoption and big troubles implementing Wine [winehq.com] suggests to me that there would be little interest in a Microsoft port of Windows to yet another architecture. Windows 95 was probably the most-memorable MS-Windows version ever, and yet Microsoft has had to fragment even that identity to keep up its sales, starting with that crazy desktop in XP. The claim that Windows has excellent backward compatibility is bogus, too; for instance, the copy of TeraTerm that I carry around on a floppy has never worked on any NT2k or later system I've touched, and the default installation of Microsoft Word can't read files created by any version of Microsoft Works. I could contiue this rant...
Uh.. Xbox Developement Kit anyone (Score:3, Informative)
Which is basically a dual g5 powermac with a
custome XP version on it. Plus windows WILL run
on the PPC... The Xbox will be PPC, so there
will be a version, which actually a lot of titles...
Hrmmm. I wonder if the next Gen of Xbox ModChips
wont be add on cards to your favorite powermac.. hehe
Re:How to put this... (Score:4, Informative)
1) the bondi blue iMac was *MOSTLY* based on CHRP, it had a few changes that made it only run Mac OS. it also had a lot in common with the PowerBook G3 of the era (Wallstreet)
2) the platform that CHRP morphed into wasn't PPCP, but PReP for for PowerPC Refernce Platform. you can still find hardware based on that to this day - see Amiga.
there were also some mac clones that had a little bit of CHRP or PReP in there heritage (they had RS-232 serial ports and PS/2 ports as well as ADB!) but as far as i know they still only ran the MacOS.
Re:Intel... (Score:2, Informative)
Now who got the better deal on that one?
I agree that the M68k rocks - it lives on today in some ways as the "coldfire" embedded processor series. Just about anything is better than x86 though.
Re:Intel... (Score:2, Informative)
I remember hearing once that apple wouldn't have been able to keep up with intel if they hadn't switched over to the powerpc processor. Intel was pumping so much money into researching a faster x86 chip, Apple didn't have the resources to match them. But the PowerPC was so much easier to design and work with, that they were able to build an equivilent processor for a fraction of the cost.
Re:Again, BINARIES? (Score:5, Informative)
Re:But why... (Score:3, Informative)
They are except, ironically, the PPC970 (aka "G5").
Re:How to put this... (Score:5, Informative)
You are full of shit.
Cutler and a number of members of the original NT base team were deeply involved in VMS: true.
Code was stolen, appropriated, or otherwise taken from DEC in any way: utterly false.
An out of court settlement between DEC and Microsoft: fantasy.
How do I know this? I personally witnessed the original NT kernel code being written and checked in to the source tree.
At best, you have absolutely no idea what you are talking about.
At worst,
Re:Why would anyone think this would happen? (Score:3, Informative)
Why did I deploy NT Alpha machines? Motherboard bandwidth, reliability and redundancy - to a lesser extent CPU speed. At the time, Intel servers were just too lame to handle the loads we were throwing at them. That changed when Compaq, IBM et.al. started putting real server features in their x86 machines - about when the Pentium III Xeons were released. Compaq was loathe to compete against themselves by marketing both architectures. That's what killed the Alpha - marketing, not technology.
It's why pond-scum rates better in my book than Marketing droids.
Soko
Sorry, I screwed up a tag. (Score:2, Informative)
Lately? Maybe that's a matter of perspective. Apple has been making machines with ATA/IDE hard drives for over a decade [slashdot.org], and PCI machines for almost as long. [everymac.com]
LK
Re:How to put this... (Score:5, Informative)
There are a couple of errors in this. First of all, Cutler was never involved with the Alpha port of VMS. He was involved with initial development of VMS on the original VAX platform, but was working on Micah/Prism project before the Alpha era started.
Micah/Prism (one was the OS, the other was the hardware - I never can remember which was which) was a new OS/hardware combo that was intended to replace VAX/VMS. Eventually Micah/Prism was axed in favor of persuing VMS on Alpha/AXP. This move upset Cutler enough that it made him easy pickings to be recruited by Microsoft to head the development of OS/2 NT, the intended replacement of OS/2 which went on to become Windows NT.
It is the Micah/Prism code (plus overall aspects of its design), not VMS, that Cutler is alleged to have lifted for use in NT, although no one has ever admitted to this in any official capacity.
Since the OS for the Micah/Prism project was a from-scratch rewrite (borrowing a small number of internal design elements from its VMS ancestor) was still in its early stages when it was killed, still very immature and flawed. Had the VMS kernel formed the basis for NT, Microsoft would have had a robust, secure, and scalable server OS a decade ago, instead of being about 3/4 of the way there only now.
As DIGITAL splashed on its OpenVMS website for a few hours back in the late 90's (before being quietly yanked by management), "OpenVMS 7.0 is today what Microsoft wants NT 8.0 to be."
Re:How to put this... (Score:5, Informative)
I don't really know where you get your information from, but a whole lot of it is simply incorrect.
"Windows NT" was originally a new design for OS/2, which Microsoft codenamed "NT" for "New Technology". When Microsoft dropped out of the OS/2 development effort, they went it on their own under their existing Windows brand, hence "Windows NT".
Usage of "NT" in the product name proved a bit problematic from the start, because "NT" was a registered trademark of Northern Telecom (now Nortel). Which is why every box of Windows NT sold has a disclaimer on the box stating that fact.
The dropping of the "NT" moniker was more of a marketing decision than anything else (I don't know if they were paying Nortel for the right to use "NT" or not, although this also could have been a factor).
NT was designed from the start to be a cross-platform operating system. Microsoft collected partners to handle various ports (much or the PPC port was actually written by IBM). At the time it was being released, the belief was that Intel had hit a ceiling, and that everyone was going to make a big move over to RISC-based architectures. Microsoft wanted to hedge their bets and be ready in the event the Intel-based system market crashed. Of course, it didn't, and the non-Intel NT's withered away.
Of course, it didn't help that the people who actually owned PPC, Alpha, and MIPS-based systems already had much better operating systems (AIX, OpenVMS, Irix, etc.) with a large number of available applications, whereas NT on these platforms had next to no available software, and was a poor and unproven OS (it took years for NT to gain any significant traction even on Intel systems).
It should be noted that OS/2 on the Power PC suffered a similar fate. IBM didn't have the cajones to push CHAP PPC systems, and only ever released OS/2 for PPC to a few selected customers they had a contractual obligation to release it to. They talked a big game about pushing Power PC systems on the desktop, but in the end made no effort to do so.
Yaz.
Re:Intel... (Score:1, Informative)
Maybe if Microsoft completely ditched x86, but most people would continue to use Windows on x86 if it were available.
So they took the Z80 processor and extended it.
Ok... Z80 was Zilog's extension of Intel's 8080. (which was in turn an extension of the 8008, an 8-bit version of the 4004, the first single-chip microprocessor) x86 was based on the 8080/8085, which Intel already had all the internal designs for, as opposed to the z80. You don't need to make it sound like Intel was just stealing other people's ideas.
Blah, blah, blah. See here for more accurate x86 history: http://www3.sk.sympatico.ca/jbayko/cpu3.html#Sec3
NT Runs on G5 Mac Hardware Now (Score:5, Informative)
Re:Obligatory Quote (Score:5, Informative)
Re:Windows was never meant to be big endian (Score:2, Informative)
I guess it does work?
Re:This is hilarious! (Score:2, Informative)
sorry if I made you remember a bad memory lol
Re:Obligatory Quote (Score:3, Informative)
I could be wrong though.
Re:NT Runs on G5 Mac Hardware Now (Score:1, Informative)
Re:XP on PPC (Score:1, Informative)
Thanks for playing...
Re:In reality... (Score:3, Informative)
Yeah, they do - you just have to sign up and download: Windows XP Professional x64 Edition [order-9.com]. I have it but haven't gotten around to installing it yet, nor x86-64 Fedora either.
A long time ago some vendors - I forget which - shipped 64-bit windows with IA64 machines too. It was called "64-bit Special Edition" or something.
Re:Obligatory Quote (Score:3, Informative)
NT was developed on the Intel i960, a RISC processor. Intel never went anywhere with it
Actually, the i960 can be found on many a RAID controller.
Re:How to put this... (Score:2, Informative)
Just my two cents...
CHRP boxes were never released (Score:3, Informative)
With no MACos motorola never released the CHRP (although it was rumored Beos would run on it)
Re:Obligatory Quote (Score:5, Informative)
I run that same box as a dual-boot machine, running the beta 3 release of Windows 2000/alpha (yep, they released Windows 2000 beta for the Alpha, but killed the project right before the final release) and Linux. For a while, the Win2k/alpha box was my main desktop machine. I never had a problem running any i386 apps, from Office to Netris, on the Alpha since Win2k/alpha had fx!32 integrated into the system. (you'll recall that fx!32 was DEC's binary translator-cum-recompiler, which was a really ingenious little tool to recompile i386 binaries into native Alpha code).
My MIPS Magnum, with its little R4000PC and 128 megs of RAM, also runs NT 4.0 on occasion, although it spends most of its time in NetBSD. The MIPS Magnum was in fact based on the Jazz architecture, which Microsoft developed in-house specifically for writing NT. As mentioned, MS wrote NT for MIPS on this Jazz platform, and later ported it to i386, PowerPC, and Alpha. SUN and Intergraph also wrote a proof-of-concept port of NT to Sparc hardware, but that port was never released publicly.
The MIPS Magnum/Jazz was not a bad hardware architecture for the time, and impressive if only because it is the only hardware platform I'm aware of which Microsoft designed.
Re:Look at it this way (Score:3, Informative)
You write with such confidence... and yet you are so wrong.
First, Apple's G5 workstations are price competitive ($0-$1000 cheaper) as compared to dual Xeon or Opteron workstations - so the PowerPC does have cheap and powerful solutions.
Second, you don't have infinite combination of hardware on the x86 side... and any driver written for Windows can be written for Mac OS X. Where do you get off saying that Mac OS X can't "even handle adapting to all that hardware" ??? First of all, Microsoft doesn't write all those device drivers. 3rd parties do and give it to Microsoft for inclusion (in some cases) or provide CD/downloads of the drivers.
Then you go off on the "void your warranty if you open your box" crap. Absolute BS on the Mac. "only the ones that Apple approves" is more crap. Where do you get this crap?
Here is the starting point for Apple's documentation for hardware developers: http://developer.apple.com/hardware/
Here is the starting point for Apple's Mac OS X I/O Kit documentation:
http://developer.apple.com/docume
Here is a partial list of the hardware available for the Mac (over 4,500 items) most of which did not require "approval" in any way from Apple:
http://guide.apple.com/ushardware.lasso
it's called powerPC (Score:1, Informative)
Re:Obligatory Quote (Score:1, Informative)
Re:Obligatory Quote (Score:2, Informative)
My code is reasonably-optimised portable C, and I set it running on a 533MHz 21164 (from 1996, IIRC?), and a 2.8GHz P4.
They were running at within 5% of the speed of each other. The P4 architecure, unless you diddle in assembly, is pants. (Yes, I compiled using Intel's compiler.)
And given that this Alpha machine has been loaded >1.0 since time began - it's unbelievably rock solid:
ecmnet@megaspaz:/etc/apache$ uptime
21:26:25 up 507 days, 8:41, 20 users, load average: 1.00, 0.96, 0.92
Which you'll never see on an x86 linux machine.
Re:On PC, true (Score:3, Informative)
"The machine survives because the Hardware abstraction layer of its microcode (called TIMI for "Technology Independent Machine Interface" by IBM) allows the operating system and application programs to take advantage of advances in hardware and software without recompilation. This means that a program written and compiled on a S/38 can be run as a native 64 bit program. The HAL allows a system that costs $9000 to run the exact same operating system and software as a $2 million system."
From
this site [zipas400.com]
so, no I dont think a recompile is needed. As I mentioned in a previous post, a company I worked for upgraded from the old CPU style to a PowerPC based CPU. Different machine languages. The HAL was updated, the machine ran ( faster ), and we did not recompile any of the applications we had written on it.
There is nothing that you could DO with it in user mode...
I dont mean user mode. I understand that. I meant that if the same kind of architecture was in place on a PC as in the AS/400, the user mode applications would not need recompiled due to a change in the underlying CPU ( Intel, Alpha, MIPS, PPC, etc ). The HAL would change, and that would be it.
Upshot would be that you *could* have one "binary" format that would run on any processor architechure that a HAL was available for.
So you DO understand that the NT HAL doesn't provide CPU portability alone?
That was my intial point, that it does not.
If MS had gone the AS/400 route, then many binaries ( those not involved in the HAL ) *would* be interchangable across platforms.
OTOH, the HAL and part of the kernel do provide CPU portability on a source code level...
And I am not talking about at a source code level, but at a deeper level. A completely abstracted machine.
Re:Obligatory Quote (Score:2, Informative)
Don't confuse the DirectX HAL with the HAL proper. The HAL used by the Windows kernel isn't for independence from a particular instruction set (i.e. x86 vs PPC vs MIPS etc.) - the system design and the reduced use of assembly take care of that. The HAL is for independence from hardware, meant as the physical implementation of an instruction set
For example, an SGI workstation and the Playstation are both MIPS (same instruction set), but the hardware is deeply different (so a hypothetical Windows NT for MIPS would use the same kernel for both but a different HAL for each)
More mundane examples, in the x86 world, are ACPI vs standard PC (where the HAL abstracts how to send certain commands to the hardware), or uniprocessor vs SMP (where the HAL abstracts the spinlock implementation, respectively "disable multitasking" and "spin on an integer"). And, just for the record, what the "choose computer type" hidden dialog at the beginning of the Windows setup lets you do is choosing a HAL manually
Re:On PC, true (Score:3, Informative)
I wonder how the TIMI works. It does mention that
It also mentions that
If you compile programs to a portable code that has no knowledge of the hardware it runs on, it sounds an aweful lot like Java bytecode, or
Heh, I wonder if the code format is openly available: it would make a third-party AS/400 program environment possible, even easy, thanks to the portibility.
- That was my intial point, that it does not.
OK I guess I misundestood; I thought you were saying that the NT HAL could do that. Maybe you were referring to the '400 TIMI, and something like it that could have been for NT?If MS had gone the AS/400 route, then many binaries ( those not involved in the HAL ) *would* be interchangable across platforms.
I guess Microsoft used only source level portibility since that was the state of the art for PCs at the time and not enough people on the dev team wanted to do it any other way.
I had an AS/400 and two RPG IV classes at college last year; that's the extent of my expierence. Really, I'm quite impressed with IBM's backwards compatibility and ability to move to new platforms with zero problems. Part of this is due to good planning in the first place, like designing the TIMI.
I can undestand that it is hard to get details on the inner workings of some of these things since IBM is even more protective of its operating system secrets than Microsoft is.
Re:Obligatory Quote (Score:3, Informative)
ecmnet@megaspaz:/etc/apache$ uptime
21:26:25 up 507 days, 8:41, 20 users, load average: 1.00, 0.96, 0.92
Which you'll never see on an x86 linux machine.
That's right. There's a bug in the Linux uptime counter that makes it roll over after about 400 days.
Re:Obligatory Quote (Score:2, Informative)
Witness:
phil@kilospaz:phil$ uptime
11:47:49 up 105 days, 23:18, 11 users, load average: 1.00, 1.00, 1.00
Which is _602_ days uptime, as can be verified from:
phil@kilospaz:phil$ stat
File: "/var/log/dmesg"
Size: 3063 Blocks: 6 IO Block: 4096 Regular File
Device: 303h/771d Inode: 10090 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: Mon Jul 5 17:47:33 2004
Modify: Fri Feb 21 08:32:18 2003
Change: Fri Feb 21 08:32:18 2003
Yes, yes, yes, uptime is a subsitute for penis length, I know.
FP.
Re:No, but that's not to say it isn't interesting. (Score:3, Informative)
The CISC versus RISC battles are largely a non-issue... Today, CISC processors are based on hybrid CISC-RISC architecture. These designs use a decoder to convert CISC instructions into RISC instructions before execution. They are then processed by a RISC core, which performs a few basic instructions very quickly. An example of this would be the AMD Athlon chips, and I suppose Intel does the same as well. RISC processors too are becoming CISCy. Heck, AltiVec added 162 instructions to the G4.
RISC processors generally have more registers, and they are truly GENERAL PURPOSE as opposed to the crap one encounters with IA-32... I still say though that Sparc is the best with its register windows...
But as you might have noted, technical and design superiority is a non-issue when it comes to marketing *sigh*. If it wasn't, then my beloved Alpha AXP wouldn't be dead, ARM wouldn't be confined to the embedded/handheld market and we would all be playing Counter-Strike on our ubiquitous Power boxen.