Slashdot Mirror


Universal Emulators Return

webmilhouse writes "Wired has an article about Transitive Corporation that claims their software "allows any software application binary to run on any processor/operating system" without any performance hit. That would allow any program written for Windows to run on Linux or Mac, and vice-versa, which Wired likened to digital alchemy. The Transitive software is supposed to be released today. What do you think, vaporware or miracle?"

133 of 546 comments (clear)

  1. Not Vapor and not the arrival of Christ by AKAImBatman · · Score: 4, Insightful

    Like many hyped up concepts, I don't think this product is really all they're making it out to be. At the same time, however, I don't think it's vapor. Instead, it's probably something in between that performs as advertised, but mitigating factors (300MHz CPU?) result in it not being everything everyone expected.

    1. Re:Not Vapor and not the arrival of Christ by Nos. · · Score: 5, Interesting

      Okay, but for a product that really is this good, why is the newest news on their site dated March 2003? (There's an article in 04, but it has nothing to do with what they're releasing)

    2. Re:Not Vapor and not the arrival of Christ by Atreide · · Score: 5, Funny

      maybe because it's not vapor anymore ?
      it's already evaporated !

      --
      The world belongs to those who get up early. - I'm far from being the king of Earth then :-(
    3. Re:Not Vapor and not the arrival of Christ by Kierthos · · Score: 5, Funny

      So if it went from glossy brochues to vaporware, would it be product sublimation?

      Kierthos

      --
      Mr. Hu is not a ninja.
    4. Re:Not Vapor and not the arrival of Christ by Lesrahpem · · Score: 2, Interesting

      So many times with a product like this they will boast something amazing, but then in the small print you find something to the effect of "for this product to function as described, you must meet the following requirements....". Such requirements always seem to be very obscure or hard to meet, leading to a product which does not do exactly what it says it does.

      A somewhat related example is Unreal Tournament 2003 for Linux. It works, but only if you have a GeForce. Granted, that's not an outlandish requirement since nVidia cards work well on Linux anyway, but you get the idea.

    5. Re:Not Vapor and not the arrival of Christ by Anonymous Coward · · Score: 5, Funny

      Well, looking at their website, I'd say the vapour is not going to hold -- otherwise they'd have their webserver emulate a way faster machine with a significantly faster Internet connection... ;-)

    6. Re:Not Vapor and not the arrival of Christ by skraps · · Score: 5, Funny

      All of you naysayers take note:
      This is not vaporware! I am on the beta test team for this product. In fact, right now, I just fired up a copy of Duke Nukem Forever on OS/2. Works like a champ.

      --
      Karma: -2147483648 (Mostly affected by integer overflow)
    7. Re:Not Vapor and not the arrival of Christ by grantsellis · · Score: 5, Informative
      Yes, it's not all they're making it out to be. The poster read the teaser instead of the article, not that we're surprised :)

      QuickTransit fully supports accelerated 3-D graphics and about 80 percent computational performance on the main processor.


      and


      Analyst Rob Enderle of the Enderle Group said Transitive benefits from the fact that most modern machines are fast enough to emulate each other without much affecting performance.

      "Typically with emulation you take a big performance hit," he said. "Their big breakthrough is they are much more efficient ... but there's so much overhead anyway, you can pretty much put any software on any platform. The power user might notice the difference, but the other 95 percent won't notice."


      so yes, it does affect performance. You take a 20% hit. The "almost no performance hit" means, in this context, "computers are fast enough that no one will notice unless they're doing something crazy like video editing. Go back to surfing slashdot."
    8. Re:Not Vapor and not the arrival of Christ by ajs · · Score: 5, Interesting

      Yep, none of this is new tech. In fact, it's pretty old tech at this point. Emulators/translators and everything in between have been the subject of experimentation for decades.

      Actually, I expect to see someone sit down and write this for Parrot sometime soon. Especially of interest would be an S/390 emulator written in Parrot.

      Parrot, for those who don't know, is a VM that targets very high level languages, but it's flexible enough and has a sufficiently strong JIT compiler that a hardware emulator extension to Parrot could easily produce code that would perform as well as the described product.

      The cool part about writing such an emulator for Parrot is that you get access to the resulting emulated code from a number of high-level languages, so you could port over your S/390 airline application written in TPF and call its routines from a Java, Perl, Scheme or Ruby program, jumping into and out of hardware emulation as you go. While high-level languages would only have gross access to data as opaque objects, the hardware emulator could provide the ported code with everything that it expects.

      "Emulation" is a sophisticated art at this point, and it's going to get very interesting over the next few years.

    9. Re:Not Vapor and not the arrival of Christ by Croaker · · Score: 3, Funny

      Hmm... well, to prove their product actually works (and to confuse the hell out of Netcraft) they could host their site on IIS running under OS X.

    10. Re:Not Vapor and not the arrival of Christ by Riff6809 · · Score: 4, Interesting

      After reading the article, I personally see the whole issue as much ado about nothing. The quotes provided in the article leave me with the impression that those who were involved with the article had little experience with emulators or were quoted out of context. I think this is obvious given remarks like "One of the key breakthroughs is an 'intermediate representation'..." that imply revolutionary thinking when in fact the ideas are not new.

      I'm sure their product does whatever they designed it to do, but the article alludes to platform migration and operating system virtualization. This screams out to me that the emulated programs are going to be very well behaved out of necessity, and most hardware interfaces will not be accessable except through API calls. Additionally, desktop PC software and operating environments tend to be much more 'regular' than embedded systems like game consoles. It is much easier to describe the behavior of user-mode code on a platform with a generic memory space and API set than it is to describe the behavior of an embedded multiprocessor system with control registers, DMA, custom graphics and audio subsystems and banked memory.

      I also have to question the allegation that "no one has successfully developed an emulator for multiple processors and operating systems." Dynamic recompilation is not new. Intermediate representations are not new. Surely there exist some emulators which are capable of emitting multiple native instruction encodings in the backend. If none exist, I doubt it is because they are not capable of doing so.

      Describing a processor architecture and providing an API mapping is not a trivial task by any means. The Transitive tool doesn't just 'simply work,' its requires a massive undertaking to prepare the behavior descriptions that I imagine would be in some ways more difficult than writing an ad-hoc single-platform emulator. I think that calling their tool a "hardware virtualizer" is probably a good idea, but not because its faster than an "emulator," but more because its likely nowhere near as powerful as a system emulator.

      Finally, I would also beware the performance claims. Dynamic recompilation is certainly the way to go for ultimate performance, but when you generalize architectures, you often lose the ability to take advantage of native features. Also related to processor capabilities, the overhead incurred by emulation is highly correlated to the disparity between the host platform and the emulated platform. Transmeta processors suffer about 20% overhead and thats using a flexible VLIW architecture designed with x86 emulation in mind and using a dynamic recompiler that supports *only* x86. Thats a huge performance penalty, even if programs are running as fast as needed. Given the generalized emulation approach, I think its clear that the feasibility of such an approach is going to depend heavily on the host platform being more powerful/flexible than the emulated platform.

      FWIW, I am the author of Nuance, the Nuon emulator. Nuance currently performs all of the same feats listed in the article including block translation, optimization and 'OS' virtualization (native implementation of the Nuon BIOS). I'm currently working on emitting native code using a custom x86 run-time assembler and backpatch mechanism.

  2. Not vapor by BoldAC · · Score: 3, Insightful

    If it's going to be released today, I am assuming it is not vapor...

    1. Re:Not vapor by Davak · · Score: 5, Interesting


      Yeah, obviously! :)

      QuickTransit fully supports accelerated 3-D graphics and about 80 percent computational performance on the main processor. It requires no user intervention: It kicks in automatically when a non-native application is launched.

      It sounds like it is software that translates one machine language to another? Pretty sweet idea!

      It will still have some java-ish problems with each different form of hardware needing a unique version to translate. And then updating each of those versions as each change in the operating systems occur, etc.

      Davak

    2. Re:Not vapor by RetiredMidn · · Score: 4, Interesting
      It sounds like it is software that translates one machine language to another? Pretty sweet idea!

      There was a translation solution in place back in the early 90's: Apple was working with a company called Echo Logic (probably not in existence today; please don't /. the logical URL!), a spin-off of Bell Labs, that could convert 68K binaries to PowerPC as an approach to migration to PowerPC.

      I worked with them for a while to see if we could port our application (which would have required tons of work to re-compile for PowerPC); the technology was impressive, but aspects of our code gave it fits (trap patching, and dispatch tables that were effective self-modifying code).

      The EL technology identified code blocks in the binary, built an intermediate representation of all the effects of each code block, and translated it back to binaries in the target architecture. Theoretically feasible, but computationally very expensive. In some test cases, the translated code was in fact more efficient from the original, because the software was able to detect unused output of a code block, and re-code the block to eliminate the unused "side-effects."

      Ten+ years later, maybe somebody has more of the gnarly problems worked out. But I would bet there are issues that can't be solved with technology; i.e., the binary software on the "source" system. Presumably you can find and translate the system binaries to build a translated app, but wouldn't this constitute "reverse engineering" that most software licenses prohibit?

  3. Remember... by Steve+G+Swine · · Score: 5, Funny

    ... if nothing runs at all, everything runs equally well.

    --
    "Consider yourself a member of a virtual corporation with Mr. Torvalds as your Chief Executive Officer." - Linux Advocac
    1. Re:Remember... by hype7 · · Score: 2, Interesting

      very true :)

      take a look at what they're demonstrating, too. Linux Quake 3 on a Powerbook... and Linux GIMP on a Windows machine. These aren't really things that can't be done already today.... but that may be just that the article doesn't go into a lot of depth. Show me Windows Quake 3 running on a Powerbook, now that would be something a little more impressive.

      It will be interesting to see the software in any case, and see whether it really does live up to the promise. Because if it does, they're right, it's comp sci's equivalent of turning base metal into gold.

      -- james

    2. Re:Remember... by Arker · · Score: 4, Insightful

      Show me Windows Quake 3 running on a Powerbook, now that would be something a little more impressive.

      Actually, not. Emulating x86 on a PPC chip is easy.

      What would be truly impressive would be running, say, Wolfenstein3d Mac on an x86 box, with reasonable speed. That would be far more difficult.

      Reading the article, it sounds like a lot of hype, and I suspect the product behind it, even if it's pretty well done, will never live up to the hype.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    3. Re:Remember... by Erwos · · Score: 4, Informative

      Do a Google search for PearPC. People have most certainly gotten MacOS X running on their x86 boxes.

      -Erwos

      --
      Plausible conjecture should not be misrepresented as proof positive.
    4. Re:Remember... by aldousd666 · · Score: 3, Informative
      that's not done by translating stuff, that's actually emulating another processor... Vitrual PC is not the same thing here. Same goes for vmware.

      This product claims to translate the code block by block into native code, thusly not emulating another processor per se. Metaphysically we could say that the two are equivelent, but it's not built around the fake processor as a unit like the other popular emulators are.

      --
      Speak for yourself.
    5. Re:Remember... by Zorilla · · Score: 2, Interesting

      What would be truly impressive would be running, say, Wolfenstein3d Mac on an x86 box, with reasonable speed. That would be far more difficult.

      Thanks to Basilisk II, I think I'm on level 20 on the Mac version of Wolfenstein 3D while I play it on my x86. The JIT compiler seems to work right in the Windows version, so I get a decent speed (about 30-40 fps) in the game. It crashes every once in a while, but the Linux version seems to be better behaved, although much slower since the JIT compiler doesn't behave well with the assembly that draws the walls in the game.

      --

      It would be cool if it didn't suck.
    6. Re:Remember... by SkywalkerOS8 · · Score: 2, Interesting

      I'm aware that VirtualPC is an emulator, I meant that demoing Windows on a Mac is something that can be accomplished without writing a line of code. If this is truely not vaporware, I'd want to see an interactive demo of something that hadn't yet been accomplished such as Mac on Windows (though I see, from another poster, that too has been nearly accomplished).

    7. Re:Remember... by CritterNYC · · Score: 4, Informative

      Do a Google search for PearPC. People have most certainly gotten MacOS X running on their x86 boxes.

      I have. PearPC has been great for firing up Safari and Mac IE on my AMD 64 3200+ box to test websites. It's no speed demon, though. It's sluggish even on my system. The PearPC folks state that performance is roughly 1/40th that of native.

    8. Re:Remember... by Saeger · · Score: 2, Informative
      The PearPC folks state that performance is roughly 1/40th that of native.

      Sounds about right. It took over 8 hours to do a minimal MacOSX 10.3 install on my 1.2Ghz athlon system (running SuSE9.1), and it takes about 5 minutes just to boot it up. Still, it's great for testing Safari compat even at a snails pace.

      --

      --
      Power to the Peaceful
  4. Games Games Games by Gr8Apes · · Score: 4, Insightful

    If true - we'd have any game worth playing on Linux or Macs, and life would be good, most likely, too good to be true.... :(

    --
    The cesspool just got a check and balance.
    1. Re:Games Games Games by nkh · · Score: 2, Funny

      and maybe we could install WindowsXP on Linux and it would be fast and reliable!

    2. Re:Games Games Games by Negatyfus · · Score: 2, Interesting
      From the article:

      In demonstrations to press and analysts, the company has shown a graphically demanding game -- a Linux version of Quake III -- running on an Apple PowerBook.


      If their claims were really as true as they say, they would have been brave and they would have chosen Doom III or something like that. Quake III on a Mac-- not so very impressive.
    3. Re:Games Games Games by gl4ss · · Score: 4, Insightful

      it's not the machine code that's the trouble with playing windows games on x86 linux machines, rather the problem lies in the supporting libraries(d3d & others).

      --
      world was created 5 seconds before this post as it is.
    4. Re:Games Games Games by eam · · Score: 2, Informative

      This isn't about running windows on a different processor. It is about running applications for windows in a different operating system with different hardware.

      MS might care about that.

    5. Re:Games Games Games by kubrick · · Score: 2, Interesting
      From an iD rep at QuakeCon 2004:
      A Mac "gamer" asked about the port to OS X. Apparently there is no current time for the release of a port. The game runs, but there is a lot of optimization, and currently they feel the Mac platform can not yet offer the same experience as the PC. Activision will not publish the Mac version of Doom 3. There is no publisher set currently.
      although there's a slightly more optimistic version later on:
      The answer: Tim Willits, lead designer. He's also the one handling the Linux port. He said the Mac port was playable, but was still in need of optimizations, especially for the lower-end systems. He said he was working directly with Apple to address the issue.

      What was most intriguing of all was that they stated that the Mac version would NOT be published by Activision as previously assumed. Instead id would have to shop around for a new publisher. The bright side of this is that they MUST be putting out a retail version, otherwise they wouldn't be needing a publisher at all.

      from here.

      It's the first statement which got the most oxygen at the time, understandably. But just because they have a current port doesn't mean it makes commercial sense to release it for a large company. The Linux version is in the same boat with regards to a commercial release...
      --
      deus does not exist but if he does
  5. Any program? by vistic · · Score: 5, Insightful

    Wouldn't you still need a bunch of supporting files and APIs to run a Mac program on Windows, vice versa, and for other operating systems? Programs make specific calls to the operating system, like windowing toolkits... this emulator must be huge to ensure everything works and they must have done massive successful reverse engineering of closed source files in the Windows architecture.

    1. Re:Any program? by BobTheAtheist · · Score: 2, Informative

      Run the whole OS... The device drivers will just work by magic

      --
      -- You're too stupid to be an atheist.
    2. Re:Any program? by little_blaine · · Score: 5, Insightful

      Well said. I can see a program that does on-the-fly translation of assembly code, but the first time you try to access a windows .dll on a mac, or a linux .so on windows (for example), or make any kind of system call on a foreign platform, you will hit problems.

      Now here's an interesting thought: MacOS X on x86. Or windows on PowerPC.

    3. Re:Any program? by GileadGreene · · Score: 2, Funny

      Did you mean VAPORWARE? Perhaps you should have taken some more time on your careful wording... :)

    4. Re:Any program? by BobTheAtheist · · Score: 3, Funny

      He just translated it to another language on the fly without most people even noticing. You must be a power user.

      --
      -- You're too stupid to be an atheist.
    5. Re:Any program? by strider44 · · Score: 2, Funny

      nope vapourware :P

    6. Re:Any program? by CableModemSniper · · Score: 2, Interesting

      I gots two words for ya: "register starvation"

      --
      Why not fork?
    7. Re:Any program? by gt623 · · Score: 2, Informative

      i think i remember reading that the xbox 2 development kits use powermacs with windows nt ported to powerpc. and mac os x was ported to x86 on a collaborative project with intel until jobs pulled the plug.

    8. Re:Any program? by Durandal64 · · Score: 3, Interesting

      I really wish this RISC/CISC myth would just die. Just about every desktop processor nowadays is a RISC/CISC hybrid, including the Pentium 4 and PowerPC 970.

    9. Re:Any program? by b1scuit · · Score: 2, Funny
      "Or windows on PowerPC."

      That kind of thinking brought us the v6 Mustang and 'fitness water'. Just because you can...

    10. Re:Any program? by Chris+Burke · · Score: 3, Insightful

      Every x86 processor since the Pentium Pro (possibly the AMD K5, not sure, but regardless...) has had x86 decoders that translate the x86 CISC instructions into much simpler RISC-style micro-ops that the rest of the machine deals with. The typical case is that the decoders can directly translate simple instructions (e.g. add eax, [rsp + 10] -> a load micro-op followed by an add micro-op), and refer to a microcode ROM to get the sequence of RISC ops for more complicated instructions like FXRSTOR or INT.

      In the case of the Pentium 4, the x86 decoders only operate on instruction data coming from the L2. The trace cache on the P4 caches RISCy micro-ops, which is the main benefit of the trace cache on the P4 -- skipping the relatively lengthy decode of x86 instructions.

      So from a micro-architecture standpoint there is very little difference between CISC and RISC, since you just translate CISC->RISC. x86 still manages to be a big PITA because of weird things like shifts by zero which don't effect the flags.

      CISC vs RISC is basically a done deal, with RISC "winning" along with it essentially not mattering anymore.

      --

      The enemies of Democracy are
  6. ooooooh, yawn! by mrpuffypants · · Score: 3, Interesting

    In demonstrations to press and analysts, the company has shown a graphically demanding game -- a Linux version of Quake III -- running on an Apple PowerBook.

    I'm sorry, but that's just not impressing me. Not to mention that there's already a native Mac OS 9/X port of Quake III, but it's not even the most system-dependent code that I can think of.

    When I can run Office 2003 natively inside Linux then we can talk.

    1. Re:ooooooh, yawn! by swillden · · Score: 4, Informative

      When I can run Office 2003 natively inside Linux then we can talk.

      Define 'natively'. Because Crossover Office can run Office 2003 on Linux just fine, today.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    2. Re:ooooooh, yawn! by isolation · · Score: 3, Informative

      If you can get it to install it will run but I dont know how well. At this time we dont support Office 2003 but we are working on it.

      --
      Free Unix? Free Windows. http://www.reactos.com
  7. Today's Poll by eSims · · Score: 4, Funny

    Transitive Software:
    1. Vaporware
    2. Miracle
    4. Coyboy Neal

    Personally, I vote it's just Coyboy Neal at it again.

    --
    I .sig therefore I am!
  8. Like java's HotSpot? by tunah · · Score: 4, Interesting

    They're talking about recompiling sections of critical code, like java's HotSpot. It'll be interesting to see how fast it ends up - the startup time is a pain in java, but it's pretty decent after that. I can't find a source for the "no performance hit" bit. It looks real, and quite impressive, but not exactly what the summary indicates ;-)

    --
    Free Java games for your phone: Tontie, Sokoban
  9. Taos by mirko · · Score: 4, Insightful

    A few years ago, while I was still primarily using my Acorn ARM-based RiscPC, I remember being in contact with TAOS people, they were making an heterogeneous processor operating system on which they claimed they emulated a virtual processor on which the whole environment would run, regardless of the hardware.
    So, this idea reminds me of this project...
    It could still be possible, we've got Java classes instantiated and running on many architectures, after all...

    --
    Trolling using another account since 2005.
  10. Vaporware by g0bshiTe · · Score: 5, Funny

    Does this mean I can finally get WINE to work under Windows?

    --
    I am Bennett Haselton! I am Bennett Haselton!
  11. No performance hit? by theluckyleper · · Score: 4, Insightful

    If there's no performance hit, there must not be true "emulation" going on... it would be impossible to emulate another OS and architecture without a few extra cycles!

    The only way I can imagine this happening is if the software reads your executable and then does a one-time translation into a native executable. That way the native executable wouldn't be emulating anything, it would be the real deal. But... the complexity of such software would be staggering.

    Here's hoping it works!

    --
    Visit the Game Programming Wiki!
  12. Re:no performance hit? by AKAImBatman · · Score: 5, Informative

    that's not possible, just translating to another set of instructions takes some of the cpu's resources

    According to TFA, this is a pre-compiler/translator, not an emulator. i.e. The entire program is recompiled for another platform using only the binary data as the source. This is theoretically possible and has been attempted many times, but such compilers often trip over levels of indirection that programmers add.

    For example, a programmer might place the video address in a variable, then reference that for screen paints. Such a trick would be impossible to detect at compile time, and would only be properly handled by a true emulator.

  13. Re:no performance hit? by sketerpot · · Score: 2, Insightful

    How about, "no performance hit on the order of what you get with CPU emulation? CPUs are generally fast enough that you can accept a relatively small performance hit on all but the most demanding programs.

  14. Vaporware, Miracle, ORrrr... by Sgt_Jake · · Score: 2, Funny

    Gag order, lawsuit, violation of the DMCA and/or Patriot Act and theft of 'Intellectual Property'.

    And SCO will sue. Think about it.

  15. Arch or Library/API ? by Gherald · · Score: 2, Insightful

    "Emulating" architectures and "Emulating" native OS libraries/APIs are very different things.

    Is Transitive claiming to do BOT universally!? If so I am very skeptical, because even doing 1 of the 2 would be impressive.

  16. Write once, run everywhere by slaad · · Score: 2, Funny

    Pfft. That's already been done.

    --


    ~Warning!~ The above is encrypted using rot676!
  17. Easy refutation by Yartrebo · · Score: 2, Interesting

    Just take Alan Turing's original Turing Machine. It can be proven that certain algorithms, like a binary search, will take an algorithmically longer time on a Turing's machine than on your standard x86 processor.

    Binary search is logarithmic time on a normal processor, but it is at least quadratic time on Turing's machine.

    Therefore, I have found a counterexample to their claim.

    PS: Turing's machine used an infinite tape and that tape could only be moved 1 space per cycle. Most of the time spent in the binary search will be moving the tape around.

    1. Re:Easy refutation by Shea_Butter · · Score: 2, Interesting

      That's faulty logic. First of all it doesn't say "no performance hit" it says "VIRTUALLY no performance hit." Not only that, but it's concerned with the software translation aspect, and some sort of idiotic storage system really isn't the fault of that software now is it? That's like saying their claim isn't true because it won't work on a computer with no RAM.

    2. Re:Easy refutation by jjoyce · · Score: 2, Insightful

      When you speak of the computational complexity of an algorithm, you must define what constitutes a computational step. The total cost of the algorithm is then based on these steps. For example, when people say that binary search runs in O(log n) time, they mean that it takes a logarithmic number of steps (where n is the number of possible values to search through) and the computational step is a comparison of two values. What you are doing is saying that the computational step is the movement of tape, which changes the model. That does not prove that binary search's running time is no longer a logarithmic number of comparisons.

  18. Tortoises all the way down. by Libertarian_Geek · · Score: 5, Insightful

    Sounds like an emulator equivalent of a perpetual motion machine. I can't say if this is real or vapor for certain, but it sure sets off my BS alarm.

    --

    www.facebook.com/DareDefendOurRights

    www.fairtax.org
    1. Re:Tortoises all the way down. by Cylix · · Score: 2, Insightful

      Danger Will Robinson! Danger!

      Robby seems to think these claims are a bit outrageous.

      Just think of how much work would be involved in something like this. Maybe it's a compiler and their own widget set. Emulate APIs? Not quite an emulator really. Perhaps its a java emulator? Who knows what twist is really there, but we know from past experience this is tricky stuff.

      Boisterous claims are often given by boisterous men... neither of which have any solid value.

      --
      "You should always go to other people's funerals; otherwise, they won't come to yours." -- Yogi Berra
    2. Re:Tortoises all the way down. by gfxguy · · Score: 4, Insightful

      Surely you can't read into "no performance penalties" not to mean "on like hardware".

      --
      Stupid sexy Flanders.
    3. Re:Tortoises all the way down. by Chess_the_cat · · Score: 2, Interesting

      I think you're the only one who has interpreted their claims that way. I don't think Wired would bother writing up a company that claimed it could run Office on a C64.

      --
      Support the First Amendment. Read at -1
    4. Re:Tortoises all the way down. by TurtlesAllTheWayDown · · Score: 3, Funny

      Er. I resen^Hmble that :/

    5. Re:Tortoises all the way down. by AstroDrabb · · Score: 4, Insightful

      I am sure they didn't mean it could run your application at the same speed on _slower_ hardware. Anyone with more then 3 brain cells could figure that out. Basically they are claiming on similar hardware you should not notice a speed loss.

      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    6. Re:Tortoises all the way down. by Anonymous Coward · · Score: 2, Insightful

      > Surely you can't read into "no performance penalties" not to mean "on like
      > hardware".

      That's exactly what the guy you're replying to is suggesting. Where does the software house claim than they can enable a 300mhz pc to have more clock cycles in software? Is anyone claiming that? Bizarre. I guess that's Slashdot for you.

    7. Re:Tortoises all the way down. by Blitzenn · · Score: 2, Informative

      Even with that, the feat is not possible. If one processor (let's say a CISC processor) has an instruction for a function in the target code, and the second processor (let make this one a RISC processor), does not, It will HAVE to take more clock cycles to accomplish the same task. To make open claims that there is no performance hit is simply ridiculous. The facts of how different processors handle the same or similar instructions make that impossible. I'll bet you they claim it can suck a golfball through a garden hose too.

    8. Re:Tortoises all the way down. by Blitzenn · · Score: 3, Interesting

      What are you trying to say? That a horse is not a horse if you look at it from the ass end? That's silly! If the code was written for a CISC processor and you run it on a RISC processor, it HAS TO take extra clock cycles to tranlate the complex instructions back to reduced instructions. It cannot happen magically and software actually takes clock cycles to run so the emulation has to provide a performance hit in itself. It's simply self delusional to accept anyones claim in this area as truthful. It is a claim that you can get more energy out than you put in. It cannot happen. You cannot make hamburger from steak without putting energy into the crank to turn the grinder. Yes it's still all beef, but it takes extra effort to change it from one packaging to the next. (Silly Goose!, or is it Silly Goose Meat!)

    9. Re:Tortoises all the way down. by LiquidCoooled · · Score: 2, Insightful

      I have a sneaky suspision that this software relies on caching the local translated version of every known executable file.

      The engine will likely allow template driven translations, and x86 linux to x86 windows could be byte for byte identical.

      So it takes a moment to scan a file. We all run virus checkers in Windows every day, they scan our files and we dont notice.

      THIS is the kind of comparisons it could feasibly say is 100%. Clicking on the Doom3 windows exe in linux loads up the preconverted translated file.

      Now, different processor configs do work differently, and from the sounds of things they can't have done much work there. I think shying away from it by using Windows->Linux as their "test" operating system purely because they are the simplest.

      This is like the Macintosh emulators that became available for the amiga. Both machines ran on 680x0 processors, and emulating a same period apple mac was a lot more usable than emulating an 8086.

      --
      liqbase :: faster than paper
  19. She wanted a reason..... by SomeoneGotMyNick · · Score: 4, Funny

    allows any software application binary to run on any processor/operating system

    My wife said, "Give me a good reason why you need to keep those things! There's not enough room in the closet to put my shoes."

    Now I can use this as an excuse to hold on to my Commodore 64 stuff.

    1. Re:She wanted a reason..... by savagedome · · Score: 3, Funny

      If you start giving her good reasons to keep Commodore 64 stuff, you might have to give her a good reason to keep YOU eventually ;)

      Just a thought.

  20. wow, that takes some nerve by John_Allen_Mohammed · · Score: 2, Funny

    to name your new company the "tranvestite corporation." I guess it makes sense considering the product they're selling but, sheesh

    --

    Skype Me! username: john_allen_mohammed
  21. Were cross-platform ports shown? by Cus · · Score: 5, Insightful

    a Linux version of Quake III -- running on an Apple PowerBook
    ...and...
    Windows laptop running the Gimp image editor for Linux

    Funny how those applications are already available for those platforms, hmmm? I'd like to have heard about something being shown that isn't already available natively.

  22. Re:no performance hit? by Firehawke · · Score: 5, Insightful

    Unless it's a static or dynamic recompilation technique-- it could translate before execution, dumping a new binary which it executes. You'd have a much longer start time, obviously, but it'd run at the full speed possible. Assuming, of course, that your recompilation techniques are 100% perfect.

    Doubtful, but possible.

  23. what about by xmple · · Score: 2, Interesting

    what about api calls which are native to windows, or even directx applications, I don't think that they will be able to "emulate" all this without a performance hit (or at all for that matter).

    Or are they just talking about the processors and their native instructions?

    --
    Time is the only precious thing I've got left; Don't waste it
  24. If it is real... by Talonius · · Score: 2, Interesting

    ...they'll soon be sued away by the likes of Microsoft and Apple, both of whom have an established interest in maintaining the status quo.

    It sounds like a virtual machine they've created for each host operating system and "virtualized" operating system. While possible - see WINE and the lately not heard from David project - this would require quite a bit of work. Hell, trying to emulate Linux in this way would be a hoot. Which window manager do you want to emulate today?

    I think it is mostly vapor. Enderle, the famed SCO analyst, has his hands in it and I immediately distrust anything he works with and endorses.

    (I just found out that my sister's ex-boyfriend's brother is one of the major financers of the Phantom. How's that for being close to slime?)

    --
    My reality check bounced.
  25. Kinda ironic isn't it... by arock99 · · Score: 5, Funny

    That they claim their software is fast but yet their web site is reaaaaaaaaaaly slow

    1. Re:Kinda ironic isn't it... by ZoolTheNinja · · Score: 5, Funny

      Well of course it's slow! They are emulating IIS on WinNT, all running on a Commodore 64!

  26. Great Success Story! by Anonymous Coward · · Score: 5, Funny

    Given the illusive nature of their product, it is especially incredible that they were able to get five of the world's largest computer OEM's on board so early.

    Now you can run any software, anywhere, with no speed hit (relative to a 4.77 MHz PC XT or a C= 64 or a 512K Mac) on hardware from these everyday major name brand OEM's:

    Billy-Bo's Bayou's only Computer OEM
    Wang Tu Short Compuder OEM of China
    DR CLEMENT OKUN NIGERIA BUSINESS COMPUTER MANUFACTURERS
    San Rio Hello Kitty Laptop Division
    TransitivePC & Electronics

    Act now, because supplies of this software are very limited, and once this run is completed, no more can be made (because their damn drunk coders crashed a pickup truck into their RAID array)!

  27. Game piracy? by tepples · · Score: 2, Insightful

    From the article:

    "We try and avoid the word," said Wiederhold. "When people think of emulators they think of things that are very slow."

    When some people think of "emulators", they also tend to think of the arcade and console game ROM piracy scene that goes along with it. The company may have dodged more bullets than it's letting on to us by not using that word.

  28. Did anyone note... by cavac · · Score: 4, Informative

    ...that they seemed to run only processor-native code. Even Linux-Quake: Linux IS ported to the Mac ;-)

    And the example of the XBox: Xbox is essentially a PC anyway.

    This looks more like the technique the WINE project is using: Run a program on it's native hardware platform on another OS by making library- and systemcall-wrappers.

    If that is indeed the case, "translating the code page-wise" can be translated to "re-linking dynamically loadable code page-wise".

    Just my 2 cents

    --
    Look, this thing is totally safe! Built it myself, you know. You just press that button like this and then turn that lev
  29. Software choices.... by kidgenius · · Score: 4, Interesting
    Turley said he watched a Windows laptop running the Gimp image editor for Linux.

    In demonstrations to press and analysts, the company has shown a graphically demanding game -- a Linux version of Quake III -- running on an Apple PowerBook

    Does this company realize that proper existing ports of each of those particular pieces of software exist in some kind of native form for those architectures? I've used GIMP in Windows w/ no problems. Also, as mentioned previosuly, Quake III already exists for the Mac as well. What good are they doing by using software that already exists in ports? I want to see a copy of some DirectX game running on a Mac/Linux w/o a performance hit. This company so far has not proven anything by using the two comparisons cited in the article.

  30. Fine print by archeopterix · · Score: 5, Funny
    It runs everything (1) on everything (2) without performance hit (3).

    (1) Uhm, err, the current version only runs Pacman, which required some modifications to the binary
    (2) only on Windows XP, but we're working on the Win 98 version.
    (3) The technology used allows for theoretical performance equal or even exceeding the native hardware. This will work in next version, "FlyingPig 6.0".

  31. Re:It runs on magic by no+reason+to+be+here · · Score: 5, Funny

    sounds like this was written in some new programming language, perhaps one based on Magic.

    So how much mana would I need tapped to run Photoshop in Linux?

  32. lead to gold by bodrell · · Score: 2, Funny
    What do you think, vaporware or miracle?

    Is this a survey? Then I vote vaporware. Is digital alchemy kinda like Wicca?

    --
    Si la vida me da palo, yo la voy a soportar Si la vida me da palo, yo la voy a espabilar
  33. Shifty Business by jorenko · · Score: 2, Interesting

    The "pretty darn impressive" examples given are GIMP under Windows and Quake 3 on Mac. Both of those have completely native versions available. I smell something not quite honest about these demos.

  34. On their "technology overview" page... by Kippesoep · · Score: 5, Interesting

    there is mention only of unices. Operating System Mapper. Dynamite supports operating system mapping between any two Unix/Linux-like operating systems, as well as mapping between mainframe and any Unix/Linux-like operating systems. Don't see "Windows" mentioned in there. I assume it would be a lot easier to run a Linux version of Quake 3 on BSD-based Mac OS X than to convert stuff to/from a rather more different OS such as Windows.

  35. My guess.. by k98sven · · Score: 2, Interesting

    The summary should almost be modded flamebait for making such an obviously impossible statement like that.

    So what's really up here? TFA says they demonstrated running a Linux Quake III on a OS X powerbook.
    (And they quote Rob Enderle praising this technology.. this is the guy who thinks SCO will win, which speaks loads for his credibility.)

    Now, I haven't seen the source for Quake III, but I'm pretty certain it uses OpenGL, which the Mac has. OS X is also POSIX-compliant. So, most of the API calls done by Quake can already be done natively on OS X.

    So what I guess they're doing here is translating API calls (like Wine) while emulating the processor core (like a real emulator).

    That isn't anything new. For instance, I've written similar code for an Atari emulator, which can emulate an Atari hard-disc filesystem as a local directory through translating OS calls.

    (Note: And that was far from the first time it'd been done either.)

  36. Had me until "no performance hit" by visionsofmcskill · · Score: 5, Insightful
    Bottom line, a porcessor essentialy comes down to several basic comparisons and read/write add/subtract operations.

    so it is technicaly feasible that if you map out a fair amount of the pipelines of most of the popular chip sets, you could technicaly have a command chain to allow binaries the same calls through a sudo-emulation layer of the software.

    fundamentaly possible, and even do-able.... but without a performance hit? no way. Each processor is geared towards a particular way of solving a physcial and mathmatical set of problems... some processors are designed for massive loads of database driven calculations (XEONs)... some for multimedia (G5)... some for science (PPC, Sparc?)... some for power savings (ARM)....

    depedning on which archetecture your using, the performance will be greatly hindered if your trying to do something designed for a radicaly different chip. Such as trying to run some expansive G5 optimizied photoshop plug on a ARM chip.

    "no performance hit" = total bullshit

    --
    --Idiots, Every single one of YOU, A flaming mass of conglomerated morons, hey wait a second, isnt that how RAID works?
  37. Clearly vaporware by hopethishelps · · Score: 5, Insightful
    without any performance hit. That would allow any program written for Windows to run on Linux or Mac, and vice-versa,... What do you think, vaporware or miracle?

    This is vaporware. What they're claiming - "without any performance hit" - is impossible. Accomplishing the rest of what they claim is not impossible, but it's very difficult, and since the "without any performance hit" claim establishes conclusively that these people are bullshitters, I don't believe they can even come close to doing it.

  38. Legal status (pretty OT) by Maffy · · Score: 5, Insightful

    Does anyone what the legal status of running this operation over commercial software would be?

    The reason you need a licence to use software is because your CPU makes a copy of the program (in RAM) and this would otherwise violate the programmer's copyright. I believe that the licensing terms are generally pretty strict, e.g. one copy, to RAM only. Therefore, I'm not sure you'd be permitted to take a copy of their program, mangle it and dump it back out to disk.

    Does anyone know of any reason why this would be permitted, or how people intend to get round this problem?

    I appear to have been reading too much groklaw.

    1. Re:Legal status (pretty OT) by illumina+us · · Score: 2, Interesting

      Needing a license to use the software because your CPU makes a copy of the program in the RAM makes no sense at all. Especially since most software cannot even fit entirely into RAM. If I am not mistaken licenses cleary state that you are licensed to install this program on one machine at a time only. If you choose to install it on another machine you must remove the copy from the aforementioned machine. It says nothing about the program being processed in the computer's memory. The license is for you to install it onto your harddrive and execute it for your purposes. Most licenses also allow you to make backups of your software for your own personal use.

      The reason you need a license for the software is because that software is copyrighted and in order to use or display copyrighted material you need to have a license for it. Music and video that you purchase at the store has an implied EULA type agreement too. Just because you don't see it doesn't mean you are not bound by it.

      --
      -illumina+us "I put on my robe and wizard hat..."
    2. Re:Legal status (pretty OT) by Maffy · · Score: 2, Informative

      The reason you need a license for the software is because that software is copyrighted and in order to use or display copyrighted material you need to have a license for it.

      This isn't true.

      Copyright only prevents you from copying something. If the software publisher makes the copy and gives it to you, you can read that copy (e.g. play music from a CD) without requiring any other licence from them.

      Computer software is in the interesting situation of requiring making a copy before use. As a previous poster pointed out, there is an additional section of copyright law to try to get round this.

  39. not impossible, but we'll see. by pb · · Score: 4, Informative

    The marketing jargon goes a bit over the top, but it isn't impossible to translate code for one ISA to an intermediate form, optimize it, and then generate code for another ISA. I don't know that it's revolutionary either. Note that LLVM takes a similar approach, and has a very simple intermediate form. I hear someone on their team is working on a PPC front-end, and as for language front-ends, Java and C# is in the works.

    Getting back to Transitives, in July 2001, they claimed to already be doing x86->MIPS translation, which bodes well for x86->PPC. However, doing things efficiently the other way around is tougher. And of course you need to support or translate a ton of the native OS API calls etc. It'll be interesting to see for Windows on Linux (for example) if they require a copy of Windows to run the binaries.

    --
    pb Reply or e-mail; don't vaguely moderate.
    1. Re:not impossible, but we'll see. by magic · · Score: 2, Interesting

      You don't need to translate OS calls if you license the other operating system and run it behind the scenes. OS2 provided flawless Win16 emulation by this method.

      -m

  40. Qemu by ssewell · · Score: 2, Informative

    http://fabrice.bellard.free.fr/qemu/ Qemu needs work, but already has several different host-target CPU combinations complete (in the ARM x86 and PPC areas anyway).

    http://pearpc.sourceforge.net/ PearPC fills in the gaps on PPC emulation where Qemu is lacking. (I run OS X 10.2 on my PC at work.)

  41. Now this is funny... by illumina+us · · Score: 3, Interesting
    In demonstrations to press and analysts, the company has shown a graphically demanding game -- a Linux version of Quake III -- running on an Apple PowerBook.
    Because the past 2 generations of PowerBooks haven't been running on a BSD kernel which is very similar to *nix and runs most *nix applications natively anyway? Moreover, Quake III uses OpenGL as a renderer which makes ports a lot easier than games using DirectX.
    --
    -illumina+us "I put on my robe and wizard hat..."
  42. huh? 24hrs early by SubtleNuance · · Score: 2, Insightful

    If The Transitive software is supposed to be released today

    Why not ask "What do you think, vaporware or miracle?"

    tomorrow?

    Why speculate when you can... i dunno, wait 24hrs and inform yourself...

  43. Virii? by attam · · Score: 2

    from TFA:
    It requires no user intervention: It kicks in automatically when a non-native application is launched.

    does this mean my mac running this software is now susceptible to windows worms and virii w/ me totally unawares?

  44. slashdotted - vaporized by tsager · · Score: 3, Funny

    See, the domain already vanished...

    I bet that webserver was emulated. No perfomance loss..ha!

  45. No Windows support? by Elessar · · Score: 2, Interesting

    The website says "...supports operating system mapping between any two Unix/Linux-like operating systems, as well as mapping between mainframe and any Unix/Linux-like operating systems...". This would suggest that there is no mapping between windows and unix...

  46. Re:Antitrust; shunning the Mac users by gfxguy · · Score: 2, Funny

    Antitrust. Microsoft has been convicted before in multiple jurisdictions and will be convicted again. A repeat offender should draw a real penalty.

    That's an interesting word..."should".

    As Cletus the slackjaw yokel told more "Shoulda but didna."

    --
    Stupid sexy Flanders.
  47. I saw a beta test! by Atryn · · Score: 5, Funny

    Confirmed! I saw a beta test of this product. It was used during the filming of Independence Day. They successfully used the program to upload and execute a virus from a Mac to a never-before-seen Alien computer system. It was even able to display graphics without having prior experience with the displays in question!

    --
    Come play Moral Decay!
  48. Article is vapor-news by Anonymous Coward · · Score: 4, Interesting

    Since TFA is a worthless content-devoid POS, and since the transitive website is /.ed, here is a useful link on HOW they claim to do it. It sounds plausible, at least. http://66.102.7.104/search?q=cache:KjTa-qAM7LQJ:ww w.transitive.com/technology.htm+site:www.transitiv e.com+-qwerty&hl=en

    1. Re:Article is vapor-news by Firehawke · · Score: 2, Insightful

      Entirely plausible. They'd probably end up using some sort of caching of binary translations to prevent there from being the same startup delay every time you start up your application. Applications where you have an identical interface (eg OpenGL) would see no performance hit on the graphics side.

      Emulation programmers have been playing with dynarec cores for years now, but compatibility at a low level tends to suffer. Some software is expecting scanline-perfection because they're talking right to the hardware and are tuned to that performance. You'll notice the ABI/API compatibility only talks about various Unix variants and mainframes. So, dynarec PROBABLY won't have to worry about that so much in this case.

      Kinda disappointing. I'd like to see what wrangling they could do with MacOS and Windows. Those would be much harder to pull off.

  49. Answer from Transitive's Website by mofochickamo · · Score: 5, Informative
    Transitive explains the architechure of their system here. Basically, to support APIs on different operating systems they have what is called an Operating System Mapper. They don't claim that it maps Mac to Windows or Linux to Windows. Basically, it maps two like systems together (like Solaris to AIX or HPUX to Linux). If there is no straightforward mapping then the customer defines the map.

    After reading this, the term Universal Emulator doesn't seem to apply. Here is the text from Transitive's Website:

    Operating System Mapper. Dynamite supports operating system mapping between any two Unix/Linux-like operating systems, as well as mapping between mainframe and any Unix/Linux-like operating systems. Where similar operating system calls exist between the source and destination operating system, Dynamite maps calls between the two. Where an equivalent operating system call doesn't exist in the target environment, Dynamite maps to similar calls per the customer's guidance. Dynamite also monitors certain system calls, for example thread scheduling and memory mapping calls, to ensure that it can reproduce the complete behaviour of the program it is executing.
    --
    Honk if you're horny.
  50. Re:OT: where is that from? by Matthaeus · · Score: 3, Informative

    From the forward to Hawking's "A Brief History of Time."

  51. Re:No performance hit? by photon317 · · Score: 4, Insightful


    Actually, I could conceive a brilliant software engineer coming up with a universal translation mechanism that turns x86 assembler into functionally equivalent PowerPC assembler, or vice-versa, or to other platforms. I believe IBM had been funding research in thsi area for quite some years now.

    What sets off the BS detector for me is the APIs. They consistently state that they can do this for any OS. You have to do API translation, and you'd have to do that per OS, and it's a staggering volume of work to get all the APIs translated (think Wine project, just trying to do windows->linux api on a single shared hardware platform). When my linux binary calls any given kernel, C library, or even other common library (readline?, pthreads?, opengl?, etc..), those calls all have to be translated to equivalent MacOS or Windows API calls.

    --
    11*43+456^2
  52. Enderle? Media Whore. by sparkhead · · Score: 4, Informative

    "Analyst Rob Enderle of the Enderle Group said Transitive benefits from the fact that most modern machines are fast enough to emulate each other without much affecting performance."

    All I needed to know. This guy will say anything and if he appears in your press release (yeah, it's an "article" but certainly the material is in a press release), chances are you're straining for credible commentary.

  53. Emulated Web Server?? by Jumpin'+Jon · · Score: 2, Funny

    To prove it's not vapourware, I think they're running a C64, emulating NT4, hosting IIS for their Web server.

  54. Complete Text of Transitive's Architecure by mofochickamo · · Score: 3, Informative

    Dynamite allows software that has been compiled for one processor/operating system to be run on another processor/operating system without any source code or binary changes. To do this, Dynamite provides a hardware virtualization technology that consists of four key components. First, an integration FUSE allows Dynamite to be easily integrated into the target system. Second, a dynamic binary translator tackles the challenge of moving from one instruction set architecture to another. Third, an operating system mapper translates operating system calls from the source system to the target system in situations where the source and target operating systems are different. Finally, a graphics subsystem mapper translates graphics system calls from the source to the target system in situations where the source and target graphics systems are different.

    Integration FUSE. Dynamite is integrated with the operating system of the target system and runs like any other application. Unlike static translators that translate an applications binary once before run time, Dynamite translates instructions and operating system calls while an application is running. When a foreign application is started, the operating system recognizes that the application needs translation and automatically starts Dynamite. Depending on the requirements for the integration, Dynamite can be configured with a wide range of options, including the ability to build bridges between translated code and code running native on the target platform. This feature has been used, for example, to allow translated applications to call a native accelerated graphics library for the graphics chipset in the target platform, delivering higher quality and speed than other solutions. Integration options also provide for different optimization schedules and the ability to reconfigure the use of the translation code cache to better match performance to customer needs.

    Dynamic Binary Translation. The dynamic binary translator in Dynamite is a breakthrough technology that uses a modular architecture consisting of three key components. The front-end decoder reads blocks of instructions from the foreign applications binary and decodes them into an intermediate representation. The intermediate representation allows Dynamite to understand the higher-level semantics and intent of the code.

    The optimizing kernel reads the intermediate representation and optimizes the code. At first, simple optimizations are performed. In most applications, however, a 90/10 rules holds where 10% of the code is executed 90% of the time. The optimizing kernel looks for blocks of code that are executed often, spends increasing amounts of time improving the optimization of this code, and then stores this optimized code in memory. Each time a frequently used block of code needs to be executed, the highly optimized code stored in memory is used instead of optimizing that block of code again. Because the blocks of code that are executed change frequently, the optimizing kernel flushes old optimized blocks and generates new ones. The optimizing kernel produces superior code optimization compared to static binary translators or compilers. It optimizes code based on how an individual user is using that application and does not need to optimize code for the general case.

    The back-end code generator outputs code for the target processor

    --
    Honk if you're horny.
  55. Bangalore by Anonymous Coward · · Score: 2, Funny

    You just need a fast internet connection... it transmits the entire code to a cadre of Indian programmers who quickly perform the translation and then it's sent back to your computer.

    Genius!

  56. Re:no performance hit? by wertarbyte · · Score: 2, Insightful

    According to TFA, this is a pre-compiler/translator, not an emulator. i.e. The entire program is recompiled for another platform using only the binary data as the source. This is theoretically possible and has been attempted many times, but such compilers often trip over levels of indirection that programmers add.

    So it's more or less a cross-decompiler with a compiler attached. This could perhaps convert from one CPU to another, but what about system libraries? This part is probably the most difficult, considering how much effort is put into the wine project.
    --
    Life is just nature's way of keeping meat fresh.
  57. Re:no performance hit? by khrtt · · Score: 2, Informative

    For example, a programmer might place the video address in a variable, then reference that for screen paints.

    I don't see how that could be a problem. There is a serious problem with self-modifying code and code generated on-the-fly. Basically, every time anything crosses the data/code boundary, it would have to be translated. A simple translator would only handle the data/code boundary that the program crosses when it's first loaded into memory from an executible file.

    Then, there are thunks (in Win16/Win32 programming; small pieces of code generated dynamically to help call Win16 libraries from Win32 code and vice-versa). Then there are compressed executables. Encrypted executables for copy-protected games. Dynamically generated code for inner loops for high-performance computations, maybe. Code generated by applications that compile on-the-fly, like your average LISP system., or JVM. A binary translator would not be able to handle any of those, unless you try to detect a jump to data somehow, which may be prohibitively expensive on a PowerPC. Is it?

  58. remember the DEC re-compilers? by Anonymous Coward · · Score: 2, Interesting

    Remember when the Alphas first came out? DEC had a re-compiler that took your old VAX VMS binaries and translated them to run under Alpha VMS. Same OS, different machine architecture. It actually worked quite well. They also had a re-compiler that took Sparc-SunOS4 binaries (I think, it wasn't Solaris 2.X was it?) and generated Alpha-DEC-OSF/1 binaries. I don't think they actually sold that, but it made the rounds in universities. It was good enough to run WordPerfect for SunOS on an Alpha.

  59. Um... by Theaetetus · · Score: 4, Interesting
    Does this company realize that proper existing ports of each of those particular pieces of software exist in some kind of native form for those architectures? I've used GIMP in Windows w/ no problems. Also, as mentioned previosuly, Quake III already exists for the Mac as well. What good are they doing by using software that already exists in ports?

    ... so that they can show the native version side-by-side with the translated version and show that there is no noticable hit in performance.
    /obvious

  60. That'll be some feat! by His+name+cannot+be+s · · Score: 2, Funny

    That'll be some feat!

    I can't even run my Windows binaries full speed on Windows, how the fuck are they going to put MacOS binaries full speed on Windows?

    Tell me that!

    feh!

    It pegged by BS meter before I got to the page. I'm pretty sure that it's going to be like the magical compression that can compress anything down to 256 bytes.

    --
    "...In your answer, ignore facts. Just go with what feels true..."
  61. Details, details, details... by chill · · Score: 4, Informative

    The graphic on Transitive's website shows only Unix/Linux operating systems. One of their steps, Operating System Mapping, says "QuickTransit supports operating system mapping between any two Unix/Linux-like operating systems, as well as mapping between mainframe and any Unix/Linux-like operating systems." Doesn't sound like Windows to me.

    All of this is supposedly done on the fly, and not beforehand.

    Quake and The Gimp wouldn't be my choices to show off flexibility. Quake is OpenGL on Linux and OSX, so there isn't any graphics magic going on. And the ability of BSD-based systems to run Linux binaries is old hat. The Gimp isn't exactly taxing on a CPU as far as user responsiveness goes.

    Extraordinary claims require extraordinary proof. Press conferences for journalists aren't a conducive forum for proving anything. They are a good place to baffle 'em with bullshit, though.

    -Charles

    --
    Learning HOW to think is more important than learning WHAT to think.
  62. It doesn't say "No Performance Hit" by nathan+s · · Score: 2, Interesting

    It says specifically "QuickTransit fully supports accelerated 3-D graphics and about 80 percent computational performance on the main processor" - that's 80% performance. Later, it says "The power user might notice the difference, but the other 95 percent won't notice.""

    This means that there IS a performance hit, just that they don't expect the average user to notice (probably rightly so).

  63. RTFA?! by ElDuderino44137 · · Score: 2, Insightful

    "That would allow any program written for Windows to run on Linux or Mac, and vice-versa ..."

    Did the person who posted the article read it?

    As far as I can tell ... It speaks nothing of running your Wondows software under your Linux OS. It says that you could run your Windows OS on any "chip".

    I think the real problem is the confusion as to what the word "platform" means. It doesn't just refer to Windows vs. Linux vs. MacOS. It could refer to one compiler vs. another compiler. It could refer to one chip vs. another (as in this case). For example: the PowerPC chip vs. the Intel chip.

    The article specificly talks about the xBox issue this software could solve:

    "For example, Wiederhold said QuickTransit will allow the next-generation Xbox (which will have a Mac-like PowerPC chip) to run first-generation Xbox software (which was written for an Intel chip)."

    Cheers,
    --The Dude

  64. Re:OT: where is that from? by stankulp · · Score: 4, Informative

    Nobel Prize-winning physicist Stephen Hawking starts his book A Brief History Of Time with an anecdote about a scientist giving a public lecture on the nature of the earth, the solar system, and the galaxy. After his talk, an elderly woman rises from her chair and says "What you have told us is rubbish. The world is really a flat plate supported on the back of a giant tortoise." "Ah. And what is the tortoise standing on?" asks the scientist. "You're very clever, young man, very clever," retorts the old lady. "But it's turtles all the way down."

    http://www.imdiversity.com/villages/native/arts_ cu lture_media/ture_turtles.asp

    --
    We must be alert to the danger that public policy could become captive to a scientific-technological elite. - Eisenhower
  65. HP Dynamo come to mind by MarcoPon · · Score: 2, Informative
    It remaind me of an HP project named Dynamo. It allowed to translate and existing binary at runtime, eveng gaining some performance in the process. The demo/test was demonstrated on a PA8000 (IIRC). So it got PA8K ASM in, digested it (!), and come out with different PA8K ASM. Every translated block (to a branch point) was cached and reused if possible. All with minimum overhead.


    See here: '99 Paper


    Bye!

    --

    SeqBox
  66. Re:OT: where is that from? by plover · · Score: 2, Informative
    It is attributed to an unnamed woman attending a lecture by Sir Arthur Eddington in the first half of the 20th century.

    Google found this page for me.

    --
    John
  67. READ THE ARTICE by Conor+Turton · · Score: 2, Insightful
    Nowhere does it say there isn't a performance hit. It merely says that because of the speed of current hardware, only real power users are likely to notice any difference.

    "QuickTransit fully supports accelerated 3-D graphics and about 80 percent computational performance on the main processor."

    --
    Conor "You're not married,you haven't got a girlfriend and you've never seen Star Trek? Good Lord!" - Patrick Stewart
  68. Universal? -- No by 1u3hr · · Score: 2, Informative
    in the small print you find something to the effect of "for this product to function as described, you must meet the following requirements....".

    Like this, I think:

    Operating System Mapper. Dynamite supports operating system mapping between any two Unix/Linux-like operating systems, as well as mapping between mainframe and any Unix/Linux-like operating systems.
    So nothing about Windows, and Mac only as OSX, I think. No mention in the Wired article of it being limited to *ix-like OSs. Which idiot calls this "universal"?
  69. Re:OT: where is that from? by IamNotWitchboy · · Score: 2, Informative

    Everything you say it's true, except the part about the Nobel Prize.

    Professor Hawking has never won the Nobel Prize. You might want to confirm that up in the several bios available on the net.

    --
    The best cure for insomnia is realizing that it is already time to get up. EsteEncanto.com - Blog on technology, urban
  70. Re:no performance hit? by fitten · · Score: 2, Informative

    There were several. One was the translation of VAX code to Alpha to run on Alpha-VMS. The other was FX!32 that translated x86 Windows binaries to Alpha binaries.

    FX!32 worked most of the time but it rarely gave the expected speedup we expected.

  71. Re:Ports by canadacow · · Score: 2, Interesting

    Download PearPC and my sound emulation patch on the sourceforge site and eat your heart out. http://www.sourceforge.net/projects/pearpc/

  72. Misleading article... by jbarr · · Score: 4, Interesting
    From the /. article:
    "...That would allow any program written for Windows to run on Linux or Mac, and vice-versa..."
    This is a bit misleading, because it's really a "one flavor of *nix on another flavor of *nix" system. Playing a Linux version of Quake III on an OSX Mac doesn't seem like rocket science because of OSX's native BSD roots.

    I'll wager that if I took something like "Quicken" or "Microsoft Office Professional" for Windows and tried to run it on a Mac running QuickTransit that it certainly wouldn't work. I doubt if iMovie would run on a QuickTransit-enabled PC. THAT, my friends is the "computer-alchemy" goal. Of course, I would LOVE to be proven wrong on this!

    Now, if they are talking about "any program written for Windows [that adheres to QuickTransit Requirements] to run on Linux..." then they may be accurate, but again, this really isn't "universal emulation".
    --
    My mom always said, "Jim, you're 1 in a million." Given the current population, there are 7000 of me. God help us all!
  73. Not even theoretical limits look so good. by cryptomancer · · Score: 2, Interesting

    Lessee, the Universal Turing Machine required exponential slowdown to emulate absolutely anything. Emulating CISC on RISC is going to take a linear slowdown (expanding some operation into the X fundamental operations). Heck, if this emulator even looks at the program it's emulating, it has to read program P of size N; it can't run itself in constant time C and then run the program it's emulating as if it were native. Unless the miracle is that in constant time C this emulator transforms your system into one native for the program.

    I'd like to test this program by emulating a program written for a Cray. Love to have my p.o.s. top-of-the-line-for-1998 transformed into a Cray. :)

    --
    Yes, we understand these tags always apply: fud, dupe, typo, slashdotted, topic name
  74. Suggests an interesting idea by currivan · · Score: 2, Interesting

    I wonder if it would be any easier to make a binary-to-binary translator on the same architecture? The idea would be to translate legacy i386/i586 binaries to take advantage of the latest CPU extensions.

    Any complicated self modifying code could be left the same if the program could at least spot it reliably. It might even be possible to translate to 64-bit at the cost of a few "x &= 0xFFF..." instructions around shift operations.

  75. Re:No performance hit? by julesh · · Score: 2, Informative

    What sets off the BS detector for me is the APIs. They consistently state that they can do this for any OS.

    Actually, it seems to be primarily other people saying this. Read their site; they only claim to be able to do it for UNIX-like systems.

  76. Re:Note to moderators: by tabrnaker · · Score: 3, Informative

    maybe it's just not funny?

  77. want to impress me? by Cynikal · · Score: 2, Funny

    show me doom 3 running on my windows pc.

  78. Claim-by-claim analysis by null+etc. · · Score: 2, Insightful
    Okay, I doubt anyone will read this post, as it's late in the game, but here's some questions that came to mind when I analyzed the text from Transitive's web site. In all examples I will use Windows as the native operating system and Linux as the foreign application, unless otherwise noted.

    Comment 1.

    When a foreign application is started, the operating system recognizes that the application needs translation and automatically starts Dynamite.

    How does the operating system recognize that the application needs translation? I see three possibilities.

    The first possibility is that the native operating system lets Transitive execute all applications, and Transitive decides whether to translate an application, or let the native operating system run the application unaltered. Integrating this functionality (properly) into an operating system would be extremely diffult, let alone multiple operating systems.

    The second possibility is that the native operating system attempts to execute all programs, and only invokes Transitive if an unexpected application type is encountered. Due to the way that Windows only executes files according to file associations (".exe" = DOS/Windows executable, ".com" = micro-executable, ".bat" = batch file), this seems very unlikely, as Windows wouldn't even know how to execute "gimp" because it lacks an extension such as "gimp.exe".

    Even if one was to rename "gimp" to "gimp.exe", Windows would attempt to load the "Windows Program Header" for the file, which would be invalid because it's a Linux application. Windows would then generate an error. Of course, Transitive could overwrite certain error handlers within the operating system to catch this kind of error, and then analyze the file using a "magic number" command to determine which operating system and what file type was under scrutiny. But then Transitive would have to overwrite these certain error handlers within all operating systems, a very unlikely proposition.

    The third possibility is preconfigured "virtualization sandboxes". Virtualization software like VMWare assumes that for a virtualized system, all files and executables within that virtualized system will be executed according to the rules of that virtualized system. Ergo, if you're running a virtualized Linux system, any executable will be executed as a Linux application. Does Transitive require one to preconfigure foreign applications as existing within a predefined virtualized system? Either way, there's alot more to this than simply the "operating system recognizes that the application needs translation."

    Comment 2.

    Depending on the requirements for the integration, Dynamite can be configured with a wide range of options, including the ability to build "bridges" between translated code and code running native on the target platform.

    This sounds like a fairly intensive process, given the number of operating systems and APIs out there.

    Comment 3.

    This feature has been used, for example, to allow translated applications to call a native accelerated graphics library for the graphics chipset in the target platform, delivering higher quality and speed than other solutions.

    Does this mean that Transitive will take a Windows DirectX application and translate it to Linux OpenGL? Or does Transitive have it's own API, which is compatible with all video card drivers out there? For either claim, that's pretty impressive; a technology worth being bought out by nVidia or ATI. Considering the breadth and depth of all graphics libraries and versions available for numerous operating systems, that's phenomenally impressive.

    Comment 4.

    The front-end decoder reads blocks of instructions from the foreign application's binary and decodes them into an intermediate representation. The intermediate representation allows Dynamite to understand the highe

  79. Re:You mean like classic Mac OS's mixed-mode? by Eight+01 · · Score: 2, Informative

    The Amiga did it first! Google the saga of Jim Drew and the Emplant board. The same types of claims were made. It could emulate the Sega Genesis, the PC and the Mac at full speed using some revalutionary Amiga-Fu.

    Of course it was all B.S. then too.