Slashdot Mirror


Open Source Code Finds Way into Microsoft Release

linumax tells us eWeek is reporting that Microsoft, for the first time, has included open source code in the release of one of their products. The Complete Cluster Edition of Windows Server 2003 will be including the Message Passing Interface (MPI) library. From the article: "MPI is key middleware that was designed by a consortia of all the supercomputing vendors in the 1990s to allow the easy portability of code. It abstracts away things like low-latency interconnect, and our focus is making it super easy for ISVs to move their code."

37 of 433 comments (clear)

  1. strings ftp.exe by cuerty · · Score: 5, Informative

    What about doing a: $ strings ftp.exe BSD Licensed software it's open source.

    --
    >Linux is not user-friendly.
    It _is_ user-friendly. It is not ignorant-friendly and idiot-friendly.
    1. Re:strings ftp.exe by Quila467 · · Score: 3, Informative

      I was curious, so I had to try it. ftp.exe from Windows XP Home SP2 contains no reference to BSD other than this string: Copyright (c) 1983 The Regents of the University of California. Sounds like BSD to me.

    2. Re:strings ftp.exe by Krach42 · · Score: 3, Informative

      Microsoft already has released a product with GPL software in fact.

      If you install Services for Unix 3.5 (available free from Microsoft) then it comes with "gcc".

      --

      I am unamerican, and proud of it!
  2. Wait a minute by PunkOfLinux · · Score: 5, Funny

    Isn't microsoft always saying that open-source software is OBVIOUSLY inferior?

    1. Re:Wait a minute by _Sprocket_ · · Score: 4, Informative

      Yep. GPL. A cancer. A looming danger to any commercial enterprise who even uses it. Anything the GPL touches get's absorbed. Yet Microsoft's own Services for Unix has used GPLed software for years. And they've maintained their proprietary licensing and intellectual property. Huh. Odd, that.

    2. Re:Wait a minute by Reality+Master+101 · · Score: 3, Insightful
      Everyone working for the sake of everyone, right? How is that bad?

      Because that really means, "productive people working for the sake of slackers." I'm not equal to everyone else, and have no problem with recognition of the fact. I should get more than most people.

      --
      Sometimes it's best to just let stupid people be stupid.
    3. Re:Wait a minute by tftp · · Score: 4, Insightful

      Try to say "I should get less than some people", it is logically equivalent but somehow much harder to pronounce :-)

    4. Re:Wait a minute by techno-vampire · · Score: 5, Insightful
      I'll be the first to admit that in practice, it fails horribly due to human nature, but as a concept, it's great.

      It fails horribly in practice, and therefore is a bad theory.

      --
      Good, inexpensive web hosting
    5. Re:Wait a minute by Reality+Master+101 · · Score: 3, Insightful

      Value is not necessrily measured by hours worked, nor calories expended. The guys on the factor floor make peanuts because they are easily replaced, not because anyone is exploiting them.

      --
      Sometimes it's best to just let stupid people be stupid.
    6. Re:Wait a minute by Overly+Critical+Guy · · Score: 3, Insightful

      People have such a negative image of communism.

      Maybe because...oh, you beat me to it:

      I'll be the first to admit that in practice, it fails horribly due to human nature

      Communism is more head-in-the-clouds theoretical nonsense that doesn't actually work in the real world.

      --
      "Sufferin' succotash."
    7. Re:Wait a minute by jc42 · · Score: 4, Funny

      Isn't microsoft always saying that open-source software is OBVIOUSLY inferior?

      They finally woke up to the fact that this makes it perfect for inclusion in MS Windows.

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    8. Re:Wait a minute by _Sprocket_ · · Score: 4, Insightful
      There's a difference, at least in MS's eyes, between using 'free components' and commercial apps being carbon copied and released for free.

      True - there's a difference. But that's not what we're talking about. From Steve Ballmer's Sun Times interview:

      The way the license is written, if you use any open-source software, you have to make the rest of your software open source.

      Microsoft's executives (Ballmer, Gates, Mundie) had been pushing a rather alarmist interpretation as to what the GPL (and other licenses they labled as "viral") really meant. Meanwhile, Microsoft itself had been making use of GPLed code for years without any of their dire warnings coming true. There's your hypocracy on MS's part.

      As far as making carbon-copies of existing applications... that doesn't take the GPL or other so-called "viral" licenses to do this. It could be done just as well with, say, the BSD license which Microsoft seems to favor within the Open Source world. And, of course, it could also be done just as easily with any form of proprietary license. And it has been done - by Microsoft and dozens of others. Welcome to the software industry.
  3. Open Invitation by Doc+Ruby · · Score: 4, Interesting

    Practically all MS source code is, of course, proprietary, closed, hidden, unknown to the public (and to most Microsofties). So who knows how much "open source code" has "found its way" into MS releases? We can say with more confidence that Microsoft has opened source included in this release, an unusual act for the proprietary giant. Of course, they got the tech, and probably much code, from the "1990s supercomputer consortium". So they might be obligated, "morally" if not legally, to release that source. Whatever's pushing them to open their code, I hope this works out for them, and therefore for us. So eventually "MSOSS" is not unfamiliar, but redundant.

    --

    --
    make install -not war

  4. uh? by diegocgteleline.es · · Score: 5, Informative

    Windows has included open source code for a long time. And not just C:\windows\system32\ftp.exe (run strings to that file), why is then that several microsoft products haven been affected by zlib vulnerabilities, uh? Just read the fu***** license, it's all there.

    1. Re:uh? by moosesocks · · Score: 3, Informative
      zlib isn't open source in the traditional sense.

      zlib is simply released with no strings attached whatsoever. only catch is that the author's not responsible for anything that happens with it.

      most people equate OSS with the GPL or a BSD-style license. zlib is released more or less without any license at all. It's a few lines that make it VERY VERY CLEAR that the authors don't care what the hell you do with it as long as they're not implicated

          This software is provided 'as-is', without any express or implied
          warranty. In no event will the authors be held liable for any damages
          arising from the use of this software.
      Permission is granted to anyone to use this software for any purpose,
        including commercial applications, and to alter it and redistribute it
        freely, subject to the following restrictions:
       
        1. The origin of this software must not be misrepresented; you must not
          claim that you wrote the original software. If you use this software
          in a product, an acknowledgment in the product documentation would be
          appreciated but is not required.
        2. Altered source versions must be plainly marked as such, and must not be
          misrepresented as being the original software.
        3. This notice may not be removed or altered from any source distribution.
      --
      -- If you try to fail and succeed, which have you done? - Uli's moose
    2. Re:uh? by jellomizer · · Score: 3, Informative

      Well it is still open source. It is just has less restrictions then other licenses. Just because it doesn't give some odd political statement it doesn't make it any less Open Source.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    3. Re:uh? by Bogtha · · Score: 4, Informative

      zlib isn't open source in the traditional sense.

      zlib is simply released with no strings attached whatsoever. only catch is that the author's not responsible for anything that happens with it.

      Er, that is "open source in the traditional sense".

      zlib is released more or less without any license at all.

      That's obviously not true. Licenses aren't ethereal things that can sort-of-but-not-really exist. They are either there or they aren't. zlib certainly has a license, and you must abide by it if you want permission to copy it.

      It's a few lines that make it VERY VERY CLEAR that the authors don't care what the hell you do with it as long as they're not implicated

      In other words, it's fundamentally the same as the BSD license. For example, FreeBSD:

      For the simply curious, the license can be summarized like this.

      • Do not claim that you wrote this.
      • Do not sue us if it breaks.

      The idea that somehow the "right" or "traditional" form of open-source is the GPL is a myth propogated by some misinformed Slashdotters and bears no resemblance to the truth.

      --
      Bogtha Bogtha Bogtha
  5. Not the First by bheer · · Score: 4, Interesting

    There was the NT 3.x TCP/IP stack, but that's less relevant because MS bought a 3rd party stack and bolted it to the OS (funny how /.-ers obsess about FTP.EXE when the whole darn stack was BSD-derived).

    Then there was SFU, which actually shipped GNU tools, and MS even distributed source for the GNU tools they modified.

  6. Re:In other news... by someguy456 · · Score: 5, Funny

    In addition, minesweeper has been replaced with a full version of 3dlab's Duke Nukem Forever...

  7. Not the first time by Sycraft-fu · · Score: 4, Insightful

    If you get Services for UNIX (a free download now) you'll find it contains some GPL software, and notes this fact.

    Also depends on what you mean by "open source" Microsoft has used a lot of BSD code, they just don't release the modifications since they are not required to. However even GPL code they've used some of, and they you can get the source (for what it's worth, it's just things like bash).

  8. MPI is how MS Implemented... by Anonymous Coward · · Score: 5, Funny

    ...2003's HDBSOD or Highly-Distributed Blue Screen of Death.

    With previous cluster technologies, when a single server would blue screen, the cluster remained online, but with HDBSOD, the entire cluster blue screens, ensuring timely, highly-reliable, redundant creation of crash dumps.

  9. hurrah for free open source by Anonymous Coward · · Score: 3, Funny


    Free for a limited time only,all you need to do is spend $5000 on a per processor operating system (minumum order 10 units) and we will give you, absolutely free 1 THOUSAND lines of computer code for you to use in any way you like ! imagine that

    operators are standing by for your call, dont delay for this fabulous offer

  10. Open source by Ahzraei · · Score: 5, Funny

    Open source? Interesting innovation on microsoft's part ... maybe they should patent it.

  11. The Complete Cluster Edition? by dtungsten · · Score: 5, Funny

    Well, at least they're being honest.

  12. BSD License by saterdaies · · Score: 4, Interesting

    Microsoft has always said that it has no problem with the BSD license (which is what this code is under). They've even suggested it for people looking to develop open-source projects. It's not like the code got in there without their knowledge and now they're going to have to open source windows.

    Hmm. . .formulates a plot.

  13. Re:Not the First, but a first. by Bitsy+Boffin · · Score: 3, Insightful

    It's BSD, not GPL. They can do what they want with it.

    --
    NZ Electronics Enthusiasts: Check out my Trade Me Listings
  14. Does this mean.... by zappepcs · · Score: 3, Insightful

    that the argument about quality and such of OSS is no longer valid? If MS keeps using F/OSS, doesn't that actually validate the quality and value of F/OSS?

    The more F/OSS code that is included in MS products, the more they take on the RedHat business model? Or am I just not seeing things the right way?

  15. Really for the first time? by cortana · · Score: 4, Interesting

    I'm sure I remember a LUGRadio interview with someone from Xiph who said that DirectX (or was it Xbox Live, or both?) uses the Speex codec to compress voice data for in-game chat.

    Oh, here we go: Halo 2 and Xbox Live use Ogg codecs.

  16. Not news. MS has used Zlib for years by Billly+Gates · · Score: 3, Insightful

    Funny how the windows vulnerabilities and the vulnerabilities of Zlib appeared at the same time.

  17. Re:TCP/IP stack by joebutton · · Score: 5, Informative

    > I believe they obtained a special license to use
    > it how they wish. So it's not an example of
    > stealing code under the BSD license.

    The special license *is* the BSD license. It pretty much says you're allowed to do what you want with the code, including putting it in your evil and bloated OS.

  18. Re:what implementation by oudzeeman · · Score: 4, Informative

    OK, I read TFA and they are using an open source implementation of MPI2 (MPICH2). Maybe the summary should have mentioned that... but I guess unless you're a cluster guy like me it doesn't really matter which MPI they used.

  19. I was going to moderate... by oPless · · Score: 3, Insightful

    ... but I think I better post instead :o)

    Ignoring the BSD tcp/ip stack (which practically every OS uses some version thereof) and the ftp/telnet apps, and SFU (MKS utils and Interix subsystems)

    M$ Doesn't dislike Open Source, they just don't like the GPL and its viral nature. I happen to agree to that too. Every newbie seems to release (or at least seemed to a few years ago, when they made their statement) their favourite program to the world under the GPL.

    Previously these programmers would have released the code as shareware or public domain. But I've seen folk release 'trivial' (or just plain shite) software as GPL which I find laughable.

    Anyway I'll stop there before I start foaming at the mouth. Nurse! Medication Please!

    mmmmm nurse!

  20. SOAP, X.500 by SumDog · · Score: 3, Interesting

    Microsoft has always embrased open standards. They "embrace and extend." They have DHCP servers...sure some old versions of Windows don't obtain DHCP leases correctly, but they've been patches and fixes here and there and everything seems to work.

    ActiveDirectry is a standard X.500 protocol...with a couple of interesting extras which the Samba team is still trying to work with.

    SOAP, well to be honest I never liked SOAP...or XML, but Microsoft uses it and it sorta works with other SOAP implementations...sorta. (I tried using a .NET client to communicate with nuSOAP for PHP about a year ago...worked fine unless you wanted to send an array).

    The fact is with any open standard, you're gonna have problems with getting the implementations correct between ever device, OS and embedded that implements it. But back to the point, I RTFA and, correct me if I'm wrong, but it seems like they're just supporting another open standard like they've done so many times before. How is their support of MPI different than how they support SOAP via the .NET Framework?

    SumDog

  21. Re:Question by brsmith4 · · Score: 4, Informative

    I've done quite a bit of MPI programming using the MPICH and MPICH2 implementations. MPI itself is nothing more than a specification that addresses issues with sharing memory between processors, whether they are in the same 'box' or connected through some fabric like Ethernet or some of the high-speed interconnects.

    The specification is focused mainly on the syntax of the API to make Fortran, C, C++, and Java (?Not sure if Java is actually part of the spec yet) codes compile and operate smoothly across different MPI implementations like MPICH or LAM, to name a couple (I've never run into an MPI implementation, personally, that has screwed with the standard. All my codes have always compiled and functioned cleanly across multiple implementations (after extensive debugging, of course ;-) ).

    MPICH and MPICH2 provide many different "drivers" to allow its use over 100Mb/GigE ethernet (ch_p4), Myrinet (provided by Myricom, ch_gm), Infiniband, ccNUMA or NUMA-like systems (ch_shmem, or lock-free ch_shmemlf), and drivers for globus systems.

    With interconnect fabrics like ethernet and low-latency Myrinet and IB, Message passing typically involves passing actual data between hosts across this fabric and the ch_p4, ch_gm drivers handle this transparently (this part of the setup, selecting the driver, is a function of your Administrator and not the developer). On large memory SMPs, MPI may pass addresses or references rather than the actual data, taking advantage of the fact that the hardware is designed to allow any single CPU to address any region of memory rather than flooding the memory bus with unnecessary transactions.

    Take parallel video rendering for example, where we might be simply gzipping each frame... on a cluster-style interconnect, each host must have a copy of the frame it is operating on so it must be passed along the interconnect to the host before work is done (or it can be read by each host from the original file, if that file is shared across the cluster or copied to each node. This becomes very I/O bound and suffers from the slowness of hard disks). On an SMP, a pointer to the beginning of that array may be passed to the thread or process trying to do the work, while the segment of that video is stored in RAM.

    Being able to share memory in such a way allows fine-grained calculations like very-large-matrix operations over slower interconnects AND SMPs (though your performance on the slower interconnects will suffer because of the bandwidth or latencies induced by the interconnect).

    As well, MPICH at least, provides excellent support for debugging parallel applications through the mpirun_dbg.* commands. It uses your favorite debuggers whether they be gdb, ddd, dbx, or totalview.

    MPI in a nut shell, provides for the easy creation of multiple process threads and facilitates the sharing of data between each thread to enable parallel processing regardless of how your CPUs and memory are connected. Don't know anything about TIBCO though, nor have I ever heard of it... Sorry if this was too much or too little info. I'm not really aware of the average /.er's experience with such things.

  22. MPICH2? What interests me... by jd · · Score: 3, Informative
    ...is WHY they would choose the version of MPI that is regarded as a great reference edition but not that good for serious work. MPICH2 does not support shared libraries under Microsoft's C compiler or under Windows (MPICH2's docs) or external data representations. Their version of ROMIO also hangs when using MPI threads.


    (Also, MPICH sucks when used with multiple devices - you have to compile it with the device(s) you're using, and can only configure it for one device type at a time. So if you're planning on using a mix of Infiniband, Globus and Ethernet, forget it. It won't work.)


    Probably the best MPI library out there is Open MPI, which supports the MPI2 standard, supports MPI threads and progress threads, is much more optimizable for different platforms and was developed by groups ranging from Los Alamos Laboratories (yes, the nuke place) and the LAM/MPI development team.


    Ok, you have a choice between two implementations. One is slow, has a poor release cycle and has been forked numerous times (MPICH, MPICH2, MP-MPICH, Globus MPICH, GAMMA MPICH and MVICH are all forks off the same code-base). The other is partially written in assembler, is developed by a broad consortium of MPI experts and is unlikely to fork as the maintainers are really good about integrating new code. Which would you pick?


    I am also concerned about Microsoft's history of "Embrace and Extend' - are they planning on breaking the MPI-2 specifications for their own purposes? I can't see any value in them doing so, but I don't see any value in 'Embrace and Extend' anyway.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  23. You don't have to call them out on it... sheesh! by St.+Arbirix · · Score: 4, Insightful

    It's like you finally convince one of your friends to come hang out at a nudist beach and then you point at their genitalia and laugh.

    So maybe they're warming up to the idea. That's cool. We don't have to make them uncomfortable.

    Send them a beer and say "Bully for you!" :-)

    --
    Direct away from face when opening.
  24. Re:TCP/IP stack by nacturation · · Score: 3, Interesting

    So it's not an example of stealing code under the BSD license.

    No, but this is such an example.

    --
    Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.