Slashdot Mirror


SkyOS Now Runs Linux Binaries Natively

Gunder123 writes: "A new (open source in the past, but not anymore) operating system, SkyOS, in its latest version can run Linux binaries unmodified, without the need of a recompilation, enriching its own application base this way. Their Linux emulation layer lies inside the SkyOS kernel, I wonder if there are any GPL violations going on here. Their future plans involve also an emulation layer for Windows applications, pretty much what ReactOS tries to do for the last few years for the WindowsNT model."

40 of 293 comments (clear)

  1. not all syscalls implemented by kbroom · · Score: 5, Interesting

    from the SkyOS website:

    >Emulation layers
    >
    >Linux
    > 6% of all linux syscalls implemented
    > Support for static linked ELF i386 binaries only

    Well I guess any binary using any of the remaining
    94% system calls will not work... hmmm....

  2. gotta love hello world! by soboroff · · Score: 5, Funny
    "It's already possible to execute linux/i386 compiled programms. Simple linux-native applications like 'Hello World!!!' are running now on SkyOS without compiling!"


    I wonder if it's the spiffy GNU hello.c which includes its own email client.



    Seriously, they only support a very small subset of calls thus far.

  3. Say WHAT? by supabeast! · · Score: 4, Insightful

    "Their Linux emulation layer lies inside the SkyOS kernel, I wonder if there are any GPL violations going on here."

    That has to be one of the rudest things that I have seen on Slashdot in years. To suggest that just because some Linux binaries can run on another OS with no evidence is absolutely disgusting.

    Of course, even more disgusting is that Timothy posted it, but I think everyone realizes Slashdot has a pretty fucked up editorial policy so I shall not continue.

    1. Re:Say WHAT? by supabeast! · · Score: 3, Redundant

      Actually SkyOS intercepts Linux system calls (Of the 6% ot them that it can handle, anyway.) and passes them to its own API. Assuming that stolen code is involved is simply a) Paranoid and B) Rude!

    2. Re:Say WHAT? by ijx · · Score: 3, Informative

      Exactly. The *BSD's do exactly the same thing with their Linux compatibility layers. All the code behind that is BSD-licensed, not GPL'd.

      There's an excellent set of articles at the O'Reilly Network on just how they accomplish this.

    3. Re:Say WHAT? by Stephen+Samuel · · Score: 3, Insightful
      The QUESTION is completely appropriate. He didn't say that there IS a GPL violation. He hust wondered if there is one.

      Stealing GPL code is one way to accomplish Linux compatability quickly and painlessly (until you get found out). Hopefully they didn't do it that way, but some businesses have done worse.

      Asking the question may push someone to come up with a way to test the emulation code with reasonable certainty (i.e. testing for a couple of unusual quirks in the GPL code). I think that it's far better to know, one way or the other, than to be wilfully blind to the issue.

      --
      Free Software: Like love, it grows best when given away.
    4. Re:Say WHAT? by BasharTeg · · Score: 3, Flamebait

      Yeah, and I suppose FreeBSD's Linux emulation is a GPL violation too right ? You've got it backwards kid, the IP theft goes INTO Linux, not out of Linux.

      Besides, this is exactly why the GPL is stupid in the first place. It supports Open Source like the holy jihad, but does it support open standards ? Well, if a non-open source OS wants to be Linux compatible, I guess they're theives right ? Nice open standards.

      Gee, Linux's TCP/IP stack is based on the BSD TCP/IP stack. I wonder if there's any IP theft going on there. Oh wait, the BSD licence supports sharing rather than screaming violation.

  4. Yeah, like WINE runs all windows binaries... by rvaniwaa · · Score: 3, Informative

    From the status page , it says only 6% of all linux syscalls are implemented...

    --
    main(i){(10-putchar(((25208>>3*(i+=3))&7)+(i ?i-4?100:65:10)))?main(i-4):i;}
  5. Why SkyOS? by cDarwin · · Score: 3, Insightful
    I already have an open source OS that runs Linux binaries. I have no interest in another closed source OS that runs windoze binaries. As far as I can tell, the SkyOS web site presents no justification for this OS.


    I'm having a hard enough time getting our office staff to switch to KDE. Why would I want to mess about with SkyOS? Does anyone know?

    --

    --
    Socrates was asked where he was from. He replied not "Athens," but "The world."

    1. Re:Why SkyOS? by Arandir · · Score: 5, Informative

      ...operating systems that are not Free as in speech.

      It's statements like that which make the rest of the world suspect we are a brainwashed cult just waiting for the Koolaid to arrive.

      The right to free speech is a right that belongs to the speaker, and not to the listener. Linux is a manifestation of Linus Torvald's free speech. SkyOS is a manifestation of its authors' free speech. Any OS is a product of its authors' free speech. You have your own right of free speech but it is not predicated upon the existance of any operating system.

      It would make sense to say that you only want operating systems that are "Free Software", or operating systems that are "Open Source", or operating systems that grant you specific permissions. But to say that you only want operating systems that are "free as in speech" is a non sequitur. It only makes sense if you have undergone the GNU Indoctrination Protocols, as it is not a sensible English phrase.

      (considering that most Slashdot readers are openly hostile toward non-Linux Free Software operating systems, like OpenBSD, I think the original supposition was a correct evaluation of the Slashdot attitudes)

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    2. Re:Why SkyOS? by Danse · · Score: 3, Insightful

      (considering that most Slashdot readers are openly hostile toward non-Linux Free Software operating systems, like OpenBSD, I think the original supposition was a correct evaluation of the Slashdot attitudes)


      Where the heck do you get that from? MOST /. readers? There are probably over half a million /. readers now. do you really think that the majority of them are hostile towards non-Linux OSes? I think there is a rather vocal, but tiny minority that are. I don't think you can find evidence of anything beyond that.

      --
      It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer
    3. Re:Why SkyOS? by Jeremi · · Score: 3, Insightful
      Why do people always complain when someone decides to write their own OS, or even worse say they should contribute to a more popular project?


      Honestly, it's because operating systems are like societies. The more time you spend using or developing for operating system A, the less you'll spend using/developing operating system B. Furthermore, every non-mainstream OS's users want to see it get the "critical mass" of users and developers necessary to push it into the mainstream where they it will enjoy the benefits of additional software and support. When they instead see other OS's being used or promoted, they view them (rightly or wrongly) as competition for their own OS/culture. Hence the criticism; they are trying to protect their own interests by deprecating the "competition".

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    4. Re:Why SkyOS? by Arandir · · Score: 5, Insightful

      "Free as in speech" means "allowed to do whatever you want with it".

      Someone should arrest and jail your High School civics teacher for fraud.

      "Free Speech" means speech that is unrestricted. In the context of western civilization is usually refers to the legal right to speak without legal hinderances, particularly with regards to political opinion, though it also covers non-political expressions of a creative, commercial or mundane nature.

      "Free Software" may indeed mean "allowed to do (almost) whatever you want with it". But that is NOT what "Free Speech" means.

      In regards to software, there are two kinds of "speech" available. The first is the "speech" of actually creating the software. The second is the "speech" of modifying and/or redistributing the first kind. The first kind is a legal and unalienable right. Unfortunately, the second is not an unalienable right, but a granted priviledge. Despite the existance of the first ammendment to the US Constitution, you are not allowed to take the political writings of Richard Stallman and modify them for redistribution. You are not allowed to take the New York Times and republish it as the Yonkers Yodeler.

      The right to your own speech is unalienable and protected by law. The right to someone else's speech is not. By equating Free Software with Free Speech, you are asserting that the ability to modify and redistribute someone else's creative works is an unalienable right that should be enforced by law. But that is not how rights work. A right is something that you POSSESS. It is not something that you TAKE from someone else.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  6. How is it different... by NinjaPablo · · Score: 5, Interesting

    than any other emulation (other than this is integrated in the kernel)? WINE runs Windows apps and I don't hear many complaints about license violations there.

    --
    SmashTech - No smashing of tech involved
    1. Re:How is it different... by Stephen+Samuel · · Score: 3, Insightful
      If people were ripping off MS source code, MS lawyers would be knocking on the door, and the MS PR hacks would be gleefully spouting off about it all over the place... because they (like everyone else) has access to the source code.

      It's a little bit harder to prove code-stealing without access to the emulation source code, thus the speculative questions.

      If they gave general access to their source code, then it'd be pretty easy to prove the question one way or the other (but then they'd also be halfway to being open-source again, too .. grin).

      --
      Free Software: Like love, it grows best when given away.
  7. Re:Why isn't it open source anymore? by Anonymous Coward · · Score: 5, Funny
    Open source business plan:

    1. Write free software.
    2. ???
    3. Profit!

  8. Other Free OS alternatives by ZaneMcAuley · · Score: 4, Informative

    Solaris 9 (the beta is out) runs linux binaries.

    Pros: its got good backing (who else puts the DOT in dotGone :) )

    Cons: erm.. availability of code

    --
    ----- Whats wrong with this picture? http://www.revoh.org:1234/whatswrong
  9. Re:GPL violation by TheMMaster · · Score: 5, Interesting

    one of the freedoms is the "freedom to read/modify and learn" from the source. If he is just learning from the source and reimplementing it, there is no problem.
    Is wine in violation with microsoft copyright?

    --
    Fighting for peace is like fucking for virginity
  10. Poor imitation... by gregwbrooks · · Score: 3, Funny
    Just what we need: A geekier alternative to Linux.



    Future conversation...


    Geek acolyte: Whatcha runnin'?

    Elder Geek:I've got SkyOS emulating Slackware, with WINE layered over that so I can use all my l00t wArEz.

    Acolyte:Cool! How'z Mozilla run on it?

    Elder: Still a little buggy -- but imagine a beowulf cluster of these...

    --


    "It was a summer's tale: Just a boy, his Linux, and a head full of dreams..."
  11. Probably not a violation by CmdrTroll · · Score: 5, Informative
    My friend worked on the Linux binary compatibility for SCO Unixware a little while back. I asked him about the licensing implications of the effort at the time, and he told me that there were a couple of main points that kept them out of trouble:

    • Limiting the emulation environment to Linux kernel syscalls was very safe legally and quite trivial. Why? You can't copyright or patent an interface. And the Linux syscall interface, while symantically slightly different from other Unices, does essentially the same thing as other Unices. Support for Linux sysctls and other oddball features was not considered, mostly because the only software that used Linux sysctls and other oddball features were the system startup scripts. For the most part, applications used the standard file, process control (fork, exec, getpid, ctime), and socket syscalls, and making a translation layer for those was cake.
    • libc posed a bit of a potential problem because it is GPL. Fortunately, there is nothing keeping SCO or anyone else from bundling GPL software with their product, as long as they ship the source too and don't like closed-source binaries against the GPL libraries. Sun ships 'less' and GNOME with Solaris now, and nobody's talked about suing them for it.
    • Statically linked binaries were ideal. They didn't need libc, the Linux loader, or any supporting files at all to run those things. All they needed was kernel support for Linux ELF files (which are a skewed version of standard ELF - check out the specs sometime). No problem there.

    In all likelihood, the Linux ABI will become a standard for all non-Microsoft x86 operating systems. It is simple and legal to implement, and very robust and powerful.

    -CT

    1. Re:Probably not a violation by All+Dead+Homiez · · Score: 3, Interesting
      In all likelihood, the Linux ABI will become a standard for all non-Microsoft x86 operating systems. It is simple and legal to implement, and very robust and powerful.

      Things definitely are moving in this direction. I just read on the netbsd-discuss mailing list that those folks are considering abandoning the slow BSD-style stack-based kernel calls, in favor of the quick register-based kernel call syntax favored by Linux and Solaris. If they do that, most syscalls will differ only in call number from the ones in Linux.

      -all dead homiez

  12. Re:GPL violation by shepd · · Score: 3, Informative

    >I wonder how it's possible to write a "Linux Emulation Layer" without using the Linux source in a way that violates the GPL.

    Same way as Compaq did it to "clone" the IBM BIOS. Poke stuff in, see what happens. Read technical manuals deviod of code. Get engineers in that haven't already written GPL code (untainted).

    Running (basic) Linux binaries will be easy in comparison to hacking a copy of a BIOS without any idea of what it does -- or so I'm thinking.

    --
    If you could be told what you can see or read, then it follows that you could be told what to say or think - BoC
  13. It's a waste of time, but... by twilight30 · · Score: 5, Interesting

    the point is, it's *his* waste of time.

    Regardless of the licensing terms, this guy seriously doesn't expect to do anything truly useful with this OS.

    Remember that Torvalds initially didn't use the GPL for the kernel.

    Also note that Caldera has a 'distribution' that doesn't even use the kernel but rather reimplements a 'personality' -- I mean, even Unisys likes it !(I'm being sarcastic)

    Understand, though, I am not criticising his intent -- he has an itch; he wants to scratch. At least he's pursuing his own muse.

    --
    ========================================
    Death will come, and will have your eyes
    -- Pavese
  14. Re:Why isn't it open source anymore? by albat0r · · Score: 4, Informative

    Taken from and interview on OSnews ( www.osnews.com ), here's the answer to your question:

    Robert Szeleney: Until version 3.0, SkyOS was open source. But now, I don`t want SkyOS to be open source. I put so many work into this project, that I don`t want to give to source away. But I accept project members. If someone want to code for SkyOS he can have source. Also, I accept source codes and bugfixes for SkyOS. I don`t put restrictions for coding style. If someone coded for example a new driver, I will change the code to fit into the whole SkyOS coding style.

    For those who doesn't know, Robert Szeleney is the man behind SkyOS.

  15. ReactOS not just going for app compatibility by JasonFilby · · Score: 5, Interesting

    I just want to point out that ReactOS is NOT just aiming for application compatibility (as is suggested by the submitter). We're also looking to support NT/2K/XP drivers and we're modelling the entire kernel and subsystems around the way NT works. Sure we'll do things differently where there won't be a huge compromise in compatibility and we can make something better.

    - Jason

  16. In other news... by woggo · · Score: 3, Funny

    "Linux" now runs Linux binaries natively, without even a recompile! It seems that those wacky "Linux" kernel guys have managed to emulate 100% of Linux system calls. It's really slick -- they just run the user-level code in the binaries natively and then dispatch to the right part of the "Linux" kernel when a trap occurs, via an advanced mechanism called the "system call table" which maps Linux system call numbers to "Linux" system calls. Word on the street is that nerds everywhere are ecstatic at being able to run their Linux binaries on their favorite "Linux" system.

    ---

    I guess that running Linux binaries is a pretty good way to get some applications on your hobbyist operating system, but does this young, closed-source OS have anything to offer us besides the retro Amiga-esque GUI and an emulation layer for 6% of Linux system calls?

  17. Do what is right! by kjj · · Score: 3, Insightful

    Fork the code. Reimplement new fetures. That is what should be done. When people asked about Mozilla reay being open source the response was that you are always able to "do what is right, fork the code" This is the best thing anytime someone trys to take source away mid project. It would be one thing if this was closed from the beginning, but making major license changes like this is asking for trouble and upset developers. OpenSSH vs SHH anyone? Yes thats BSD. People say GPL projects can't be forked but they certainly can be and there are some examples of that as well. I believe OpenRacer vs Tux Racer is one. There was another having to do with file systems. Anyone remember what that one was called?

    1. Re:Do what is right! by WNight · · Score: 3, Insightful

      Oh grow up and quit reading Ayn Rand.

      If I was involved in a project and it was suddenly closed-sourced around me, after I had contributed with the idea that it would be open, I'd fork it too.

      If you want to play "what have you done" it's almost always the person who closes the source who has done the least. They can't make something on their own, but they get greedy later and want to own it, despite being unable to make it without help.

      Not that this was done with SkyOS. But if it was, forking the code is a perfectly acceptable thing to do.

  18. Fucking Retards by mosch · · Score: 4, Insightful
    That's not only wrong and potentially actionable to suggest that SkyOS is a GPL violator, it's fucking stupid.

    Think about how that kind of emulation works, you just do system call translation. What on earth code would you steal? This is code that, by design, HAS to be original.

    Slashdot's editors truly need to be more careful, and they need to issue an apology to SkyOS for making such an irrational accusation.

  19. Reading Slashdot articles 101 by gblues · · Score: 4, Informative
    Even though editors approve stories, people seem to forget that the part in italics is the words of the submission, not the editor. Yes, the suggestion was rude, but the suggestion came from a slashdot reader, not from the editor(s)!

    Nathan

  20. Re:GPL violation by harlows_monkeys · · Score: 5, Insightful
    Wine was written by people without access to windows source code. SkyOS's linux-emulation layer was written by people with access to linux source code. Therefore, it is far more likely that code was 'borrowed' in writing this emulation layer

    That's completely backwards. When writing an emulation layer (I speak from experience...if you ever ran a System V 286 binary on a System V 386 Unix or an SCO Xenix 286 binary on a Systemv V 386 Unix, you were using the emulation layer Darryl Richman, Carl Hensler, and I wrote when we worked at Interactive), you do not want to use actual code from the OS you are emulating. That code doesn't work like your OS works (if it did...you wouldn't need an emulation layer...you'd just need some argument munging and other trivial stuff).

    The hard thing about an emulation layer is finding out just what the thing you are emulating does. An emulation layer has to not just follow the written spec (if there is one), but also has to implement the same bugs as the thing you are emulating, and follow the same choices where there was leeway in the spec, or you might break binary compatibility.

    When emulating something that is open source, like Linux, you have the documentation you need: the source code. You read it to find out what the real behaviour is, and then implement that in a way that fits in with the way your OS works. It simple is almost never going to be faster to rip the actual code and try to use it.

    When emulating a closed source thing like Windows, however, finding out the actual behaviour you need to emulate (remember...gotta match the actual behaviour, not just what the spec says) can take much experimenting and disassembly. It is much more temping (because it can actually save a lot of time), to rip some DLLs from Windows, and cobble together a framework to run them under your system.

    So, just from a "what might developer's do" point of view, it is actually more likely a Windows emulation project would use parts of Windows they should not use than a Linux emulation project would use parts of Linux they should not use.

  21. Why it is a problem. by fmaxwell · · Score: 3, Insightful

    I have nothing against open or closed source projects. What bothers me is when open source projects become closed source without the approval of 100% of those who contributed to the development.

    If a developer gives his time because he believes in the principles behind open source, he should not see someone else declare that the project on which he worked is now closed source.

    I do not know if this is the case with SkyOS and do not mean to imply that it is.

  22. Re:Obligatory "New OS" Slashdot Reaction by John_Booty · · Score: 3, Funny
    • The remaining 5% will be karma whores linking to Google's cache of the poor guy's Slashdotted website
    --

    OtakuBooty.com: Smart, funny, sexy nerds.
  23. and for that matter by hawk · · Score: 5, Interesting
    If one is going to jump immediately to conclusions, the *more reasonable* question is whether they used BSD code, which would be legal--because that would be a more reasonable way to handle the emulation.


    Compare the immediate reaction of "did they violate GPL" with a absolutely no basis, in the face of the fact that it would be *more* difficult to get appropriate code from linux than from bsd, to the "wait and ask why" reaction to theft of bsd code by linux a couple of weeks ago.


    Then let's all head down to the High Church of Emacs and sing the hymn, "GPL, GPL, uber alles" . . .


    hawk

  24. Re:gpl violations? how would you know? by gewalkeriq · · Score: 3, Funny

    Actually, adding native linix binary support was something I recommended to Microsoft years ago. Call it Winux. Implementation would be equivalent to the horribly lame OS/2 or POSIX subsytems.

    Windows would gain the availability of many programs that do not have equivalents in the windows world (plus for MS users) Downside would be cost to support Winux (not large compared to cost of developing NT, linux is much less complicated then windows APIS). 98% of the Linux API is easily matched to the kernel, the 2% leftover would not be too challenging (e.g. cygwin or VMWare could be bribed into completing the job or licensing the base to MS)

    The linux kernel & device drivers would not be supported directly by Winux, but by mapping to windows equivalents. Linux kernels and drivers would not be functional under Winux, but MS could build the most commonly needed drivers and document how to add your own. This would be way better than Interix because of the simple -- just copy the binaries around.

    MS would be able to claim you could have you cake & eat it too, reduce the risk run Linux Apps and NT and don't get locked out of the use of Word & Excel. They could even claim the advantage of a O/S .supported by the mighty MS. And finally, they could be sure that the Linux apps would run at a disadvantage because of the extra overhead in the translation layer. They could even charge a few bucks for Winux -- people would be lining up to pay for it. Just consider the success of the MKS toolkit & even Interix

    Linux would gain exposure by Windows users. They would see advantages and disadvantages of Linux software firsthand without a major investment of time to install Linux, esp. the headaches of dual-boot setup to try. Many open source projects seem to have a Windows option, save time & stop supporting that since Winux would avoid the need for such. Finally, Linux lovers would still be able to say just how bad, unstable, limited, etc. Winux is and that any right-minded person would just use the real thing. And for the coup-de-grace, Linux viruses, trojans, etc. would then be able to bring down Window too.

    True believers of either side could ignore the other side, flame about it, or even cooperate with it as suits them personally.

    Consumers could buy MS and have a choice as to what kind of software they use.

    This obviously made so much sense that it did not stand a chance.

  25. Convergence to common binary format : good or not? by chrysalis · · Score: 4, Interesting
    Nowadays :
    • Linux runs Linux binaries (wow)
    • SCO runs Linux binaries
    • AIX runs Linux binaries
    • Solaris runs Linux binaries
    • OpenBSD runs Linux binaries
    • NetBSD runs Linux binaries
    • FreeBSD runs Linux binaries
    • Windows runs Linux binaries (LIME project)
    • SkyOS runs Linux binaries

    And all these emulations are very fast, because they are hooks to native OS functions. They aren't 100% emulation, like VMWare. I use Linux binaries daily on OpenBSD and FreeBSD, and I can hardly find any significant slowdown between a native BSD application, and the same application compiled for Linux, and run with emulation.
    So can we imagine that Linux binaries could become a de facto standard for executables?
    We would get something similar to Java, but yet more powerful (no tie to a specific language nor a specific API) . Ok, x86 binaries would only run on x86, but the same binary could run on 95% of the computers, regardless of their operating system. Any sort of application, low-level or high-level. GUI or daemon. And always fast, wrapping native system calls.
    The nasty drawback is that people would release more closed-source software.
    But OTOH, if you can take all your current applications and easily migrate to any operating system by just copying everything, including binaries, you can save a lot of time. You can also develop applications for customers even if you don't run a similar OS.
    Would it be a dream, or a hell?


    --
    {{.sig}}
  26. Re:GPL violation by kilgore_47 · · Score: 3, Funny

    OK, since my post was from a marginally-educated guess standpoint and you sound like you've actually had experience with the topic at hand, I guess I stand corrected.
    But just this once!
    Don't think I'll back down so easy next time! 8-)

    --
    ___
    The way to see by faith is to shut the eye of reason. --Ben Franklin
  27. Your posting is mediocre by Bruce+Perens · · Score: 4
    I don't have the slightest idea why you got a +5 "insightful" for this very mediocre posting.

    Your posting is mediocre because you provide no justification whatsoever for your claims. For example, you could have said that the Linux SCSI implementation is very poor, or that it's based on the 30-year-old Unix paradigm. And in the case of SCSI, you would have been right, in the case of Unix, you would have had to demonstrate how something else works better, which would not have been easy, and too many people who try only show their lack of grounding in operating systems design. But you didn't even try.

    Bruce

  28. Pedantic mode on by mandolin · · Score: 3, Informative
    Windows runs Linux binaries (LIME project)

    That's LINE, http://line.sourceforge.net/

    (Pedantic mode off)

  29. Comment removed by account_deleted · · Score: 3, Insightful

    Comment removed based on user account deletion