Slashdot Mirror


MontaVista Rolls Out Fully Preemptable Linux

A couple people wrote with a link to an article about MontaVista. They've introduced "a fully preempetable Linux". It's based on kernel 2.4, but the timing is interesting, considering 2.4 isn't completed yet - and if this had come out earlier, perhaps some of this could have been included. The article's a bit press releasely, but has some good info.

185 comments

  1. What's with the switch to 2.4? by MolGOLD · · Score: 1

    Why are all of these companies switching to the 2.4 series of kernels? I mean, do they know something the rest of us don't? I'm aware that most of the Linux users out there probably do have a box running a 2.4 series kernel, but I wonder how many of us are willing to actually trade of the security of a tested 2.2 series kernel for these performance enhancements...

    --
    "Life ain't interesting till you blow something up" --Anonymous
    1. Re:What's with the switch to 2.4? by realkiwi · · Score: 1

      2.4 is needed by those of us running Linux on the Vaio C1Xx series of Picturebooks.

      2.4.0-test8 has fixed most of my problems with USB and IDE.

      --
      realkiwi
    2. Re:What's with the switch to 2.4? by slycer · · Score: 1

      From what I read, it's not that they are including the 2.4 kernel in their distro. It's that they are making some changes to the current 2.4 kernel, which will result in a faster kernel. They are saying that it will be better for desktop environments, and are hoping that the majority of the stuff they do are merged into the 2.5 kernel. Lastly, the article states that it will not be ready until January 2001, at which point the 2.4 kernel could well be ready.

    3. Re:What's with the switch to 2.4? by Shmengy · · Score: 1

      We had some problems running some of our software (quantum chemistry) in paralel on 2.2. The 2.4 kernel seems to handle the distributed network better than 2.2 did.

    4. Re:What's with the switch to 2.4? by titus-g · · Score: 2

      Well, 2.4 is pretty stable, and even if it does go weird I still have a 2.2 one in lilo to drop back to, it doesn't do any harm to try it...

      --

      ~ppppppppö

    5. Re:What's with the switch to 2.4? by BlowCat · · Score: 1

      Their distribution is targeted on developers, not on end users. By the time when real products are shipped there will be an update to the stable 2.4

    6. Re:What's with the switch to 2.4? by MartinG · · Score: 4

      It is fairly stable now, true. And it doesn't do any harm to try.

      Oh, except when it randomizes your hard drive and suddenly all your data gets eaten because of the truncate() bugs. But apart from that, its okay to try.

      Ah, theres also the random oopses. Thats the other thing I forgot, Apart from the truncate() bugs and random oopses, its okay to try.

      Whoops, I forgot the memory leaks. you have to reboot quite a lot 'cos of the memory leaks. But... apart from the truncate() bugs, the random oopses, the memory leaks its okay to try.

      Eek. theres the memory corruption. It scribbles on your memory. If you can put up with truncate() bugs, random oopses, memory leaks and random corruption then it's definitely stable.

      Seriously folks, get linux2.4.0test8-pre6 and test it as much as you can and submit ____proper____ bug reports of any problems. But I would _not_ reccomend using it near "real" data yet - even if you do have 2.2 to srop back to like the previous poster does. remember: fsck is not magic.

      (BTW, the truncate() bug is fixed now AFAIK and I made most of the other stuff up for a laugh.)

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    7. Re:What's with the switch to 2.4? by Retribution · · Score: 1

      Hey, any chance I could get your email/ask you a few questions? I'm maintaining a box in a chem lab for a friend that is used for chem. simulations (I think quantum chem, since that's his bag, but I can't stand the subject myself). I'd be really interested in hearing anything you have to say on the matter. He's running a dual-xeon box and using gamma for most of his sims.

      Thanx a bundle if you can get back to me--just despam my email address, or reply to this message. thx

      --
      -- That tickles!
    8. Re:What's with the switch to 2.4? by Retribution · · Score: 1

      Nooooooooobody expects the spanish inquisition!

      --
      -- That tickles!
    9. Re:What's with the switch to 2.4? by SpinyNorman · · Score: 2

      I havn't been following the kernel very closely recently, but Mandrake 7.2 beta is just out and includes the 2.4.0-test? kernel, so it's got to be reasonably stable!

    10. Re:What's with the switch to 2.4? by Fist+Prost · · Score: 2

      remember: fsck is not magic.

      Depends on your technique.

      Oh wait, that wasn't a euphamism, nevermind :(

      --

      Fist Prost

      "We're talking about a planet of helpdesks."
      -Jaron Lanier
    11. Re:What's with the switch to 2.4? by RickHunter · · Score: 1

      Most? *peers suspiciously at his memory* Oh, so THAT's what all those funny-colored circles are! Whose bright idea was it to give the kernel crayons and point it in the direction of the system memory?


      -RickHunter
  2. This could be good by ReconRich · · Score: 1

    A fully real-time linux that could support Rate monotic analysis is EXACTLY what the real-time world needs. Reliance on expensive, proprietary Realtime OSes prevents many small companies from entering the real-time world (I used to work for one - a license for QNX and a compiler was about $5000 US and it was the cheapest. Of course, prices have come down :-)

    -- Rich

    --
    Free your mind and your Ass will follow -- George Clinton
    1. Re:This could be good by the+coose · · Score: 1

      Reliance on expensive, proprietary Realtime OSes prevents many small companies from entering the real-time world...

      I work for one now. In the beginning (circa 4 years ago) we considered several real time OS solutions but, as you point out, they were quite expensive. So in the end we avoided them all by essentially writing our own. Nothing fancy but it works. (Two tasks always running, a resolution-adjustable real time task and an interuptable background task to handle the user's needs.) Unfortunately this announcement is much too late for our product (but I'll keep in mind for any new products we develop ;)

  3. Re:preempetable by stx23 · · Score: 1

    Perhaps it is slashdottal for something which can preempt...

  4. I don't know much about MontaVista, but ... by IntelliTubbie · · Score: 1

    "MontaVista would like to see this technology, or similar technology, utilized as a foundational feature of Linux 2.5 ... Linus indicated that he is leaning towards a fully preemptable kernel approach in Linux 2.5."

    For a company that claims to be revolutionizing Linux kernel development (I assume it's them making the claims, considering this sounds more like a press release than a news report) -- shouldn't they know that the next version of Linux is 2.6, not 2.5?

    Cheers,
    IT

    --

    Power corrupts. PowerPoint corrupts absolutely.

    1. Re:I don't know much about MontaVista, but ... by paitre · · Score: 2

      2.5 is the next -DEVELOPMENTAL- version of the kernel. They'd like to see it as the base for new development. Good lord, people...

    2. Re:I don't know much about MontaVista, but ... by realkiwi · · Score: 1

      You mean you don't know much about the kernel numbering scheme...

      --
      realkiwi
    3. Re:I don't know much about MontaVista, but ... by Svartalf · · Score: 2

      Uh, the development kernel set's numbered 2.5 (which would be the next "unstable" version of the kernel).

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
  5. Real Time Linux? by Listen+Up · · Score: 4

    I am currently a user of QNX OS and it's preemptive real-time capabilities are absolutely astonishing. For the sake of Linux I would hope that this company holds off on production of its distribution until the kernel is at least stable, if not fully released. If a big "oops" is made too early in the game, many people or just going to stay with their OS of choice, which isn't at the time most likely Linux, because having confidence in what OS you stick on your real-time hardware is no laughing matter at all.

    1. Re:Real Time Linux? by Bruce+Perens · · Score: 3
      The system that serves technocrat.net has been running 2.4.0-test1 for 98 days without a reboot. It's a dual-processor Pentium III 600 system with 256M RAM, running multiple Zope processes to serve the weblog and two SETI@home processes set to the lowest priority to keep the CPUs busy when they would otherwise be idle.

      I'm about to install a more recent kernel and reboot that system. 2.4.0-test1 had lots of flaws, but it happened I don't exercise any of them and the later releases are much more stable.

      If you think putting this mod in 2.4.0 is a bad idea, consider that operating systems other than QNX and Linux try to provide real-time services and are probably less stable than either in their full release versions. We've got to get the code in if we're going to get it tested, and there's really no good test but actual use. Developing something this intimate with kernel internals for 2.2.17 would waste a good deal of developer time.

      Thanks

      Bruce

    2. Re:Real Time Linux? by Animats · · Score: 3
      A free, but not open, QNX should be available shortly. See Get QNX. I'm looking forward to using this, partly because there's so much less cruft than with Windows and UNIX/Linux. Especially in the windowing environment.

      As for "preemption", QNX takes this much further than Linux does. For one thing, networking and file systems are in preemptable processes already. Beyond this, in QNX, priority is preserved through calls to services. For example, if a high-priority process reads from a file system, its I/O request goes ahead of requests from low-priority processes. This falls out of the priority-oriented interprocess communication system. It's something needed for streaming media if the machine has other work to do as well.

    3. Re:Real Time Linux? by SurfsUp · · Score: 2

      For the sake of Linux I would hope that this company holds off on production of its distribution until the kernel is at least stable, if not fully released.

      Don't worry too much about that. It will take *months* for the dust to settle on this pre-emption patch. There are just too many parts of the core kernel that are unanalyzed and unprepared for arbitrary preemption, let alone device drivers. The VFS comes to mind.

      Even with full preemption the Linux kernel can still be only a soft-realtime system. There are too many drivers holding off interrupts for unknown amounts of time, and the scheduling algorithm is not deterministic. Treat this as experimental. If you want solid, hard realtime for Linux, use RTLinux or RTAI.
      --

      --
      Life's a bitch but somebody's gotta do it.
    4. Re:Real Time Linux? by Mr.+Hankey · · Score: 1

      While not a bad little OS, there are apparently a few things (drivers at least) that it doesn't do as well as Linux. I'm supporting a project which is moving from VxWorks to Linux for this very reason...

      --
      GPL: Free as in will
  6. Flaws in the control structure of Linux by Jon+Erikson · · Score: 2

    This article points out an area in which Linux has one major weakness over traditionally developed operating systems such as Windows, Solaris or even BeOS, and that is that essentially one man has control over the entire operating system, and it is his somewhat capricious wishes that govern the addition of new features and the acceptance of patches.

    Whilst I'm sure Linus Torvaldes is a competent, possibly even brilliant programmer, his quirks make the entire project too reliant upon him - his disdain for CVS springs to mind as an important example. Were he to be hit by a bus tomorrow then development would be stunted as people like Alan and Inigo fight over the "hot seat", and the open source movement would fail without Linux.

    What Linux needs is to be incorporated under law as a non-profit organisation which can then be run by Linus at CEO/CTO. This way they can implement a professional approach to things like source code control, copyright and trademark infringements, and reviewing new proposals for the kernel, like the one rejected by Linus for specific preemption points.

    Unless this happens, the Linux operating system is left vulnerable, and if its creator should leave for any reason, its progress would most likely shudder to a halt.

    ---
    Jon E. Erikson

    --

    Jon Erikson, IT guru

    1. Re:Flaws in the control structure of Linux by paitre · · Score: 1

      Except that there's already a line of succession, regardless of what you may believe. Almost all of the day to day developmental "stuff" is handled by the subsystem and module maintainers, and then by Alan. Linus has final yay/nay, as it should be.

    2. Re:Flaws in the control structure of Linux by tang · · Score: 1

      What if Linus is hit by a bus? That question has already been settled here: What if Linus gets hit by a bus?

    3. Re:Flaws in the control structure of Linux by MartinG · · Score: 4

      > his quirks make the entire project too reliant upon him.

      You could have ended that sentence four words earlier.

      What makes you so sure the project would grind to a halt if Linus left? Very little development on this scale has been done in this way before. There is nothing in the past to compare this to that tells me Linus leaving would be a drastically bad thing. Some people (I'm not among them BTW) think it would even be good for Linux.

      > Alan and Inigo fight over the "hot seat",

      Do you even know these people? I don't, but I know enough about Alan at least to say that I would be very surprised to "fighting" over anything in that way.

      I'm almost regretting replying to this. I almost think it's a proper troll.

      I don't mean to be insulting, but all I see in what you have said is that you are afraid because you don't understand why the Linux development model works. It seems you would be more comfortable seeing a more traditional approach, but for no rational reason.

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    4. Re:Flaws in the control structure of Linux by Jon+Erikson · · Score: 1

      You could have ended that sentence four words earlier.

      But I didn't.

      What makes you so sure the project would grind to a halt if Linus left? Very little development on this scale has been done in this way before. There is nothing in the past to compare this to that tells me Linus leaving would be a drastically bad thing. Some people (I'm not among them BTW) think it would even be good for Linux.

      Because he, as well as being the ultimate arbiter of what happens to the kernel, is as important as a recognised and respected figurehead for the operating system. Just as RMS's loss would cut the heart out of the free software movement the loss of Linus would remove the guiding force behind the kernel.

      After all, who is really big enough to pick up from where these two people have left off?

      I don't mean to be insulting, but all I see in what you have said is that you are afraid because you don't understand why the Linux development model works. It seems you would be more comfortable seeing a more traditional approach, but for no rational reason.

      Because at least with a traditional model there are well defined structures in place for who has overall control over design decisions, and the loss of any one person is something that won't cripple a project.

      ---
      Jon E. Erikson

      --

      Jon Erikson, IT guru

    5. Re:Flaws in the control structure of Linux by MartinG · · Score: 3

      > RMS's loss would cut the heart out of the free software movement.

      RMS is a great inspiration to me. I now use and write free software because I believe in it, and this is due in part to RMS's work. However, if he were suddenly abducted by aliens I wouldn't suddenly stop believing in, using, and writing free software. In time another figurehead would emerge. There is always someone else.

      Similarly, if Linus disappeared, I wouldn't stop reading the kernel source, trying to find and fix bugs and I doubt others would either, and in a short time the right person would assume his position, (probably Alan in the short term I have to admit,) it would ultimately be the best person for the job as decided by all Linux contributers. Such is the nature of the development model IMO.

      Yes, of course there would be short term upset if Linus left, but there is upset in any model if the key people suddenly leave. The question is, in which model is the quickest recovery? I know where my money is.

      --
      -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    6. Re:Flaws in the control structure of Linux by ethereal · · Score: 1

      I wouldn't worry about Inigo - he's not looking to seize control of the group, just trying to track down the man with six fingers on his right hand. Once he does, he will say to him:

      My name is Inigo Montoya.
      You killed my father.
      Prepare to die

      Now Ingo Molnar on the other hand ... :)

      --

      Your right to not believe: Americans United for Separation of Church and

    7. Re:Flaws in the control structure of Linux by Bun · · Score: 1

      Ahem. Excuse my ignorance, but...
      YHL=?
      HAND=?

      --
      "Anyone that has ever gotten an idea based on any of my work and done something better with it-good for you."--J.Carmack
    8. Re:Flaws in the control structure of Linux by awol · · Score: 1

      Were he to be hit by a bus tomorrow then development would be stunted as people like Alan and Inigo fight over the "hot seat", and the open source movement would fail without Linux.

      Puh-lease. Bus weaknesses really only exist where the sole record of the knowledge is contained in the bus victim (I work for an organisation with more bus weaknesses than is good for us). The joy of open source (be it FAIS software or whaever) is that in the event of a human failure there is the best chance that the only loss (great as it may be) is only the loss of that person's contribubtion. Linus is a smart guy, but _he_ aint the reason the world is (or isn't) turning.

      --
      "The first thing to do when you find yourself in a hole is stop digging."
  7. this is already planned for linux 2.5 by Anonymous Coward · · Score: 3

    This was discussed on the kernel mailing list a few months ago (before MontaVista did their implementation of it) and it seems likely that a preemptable kernel will be available (or the default) in Linux 2.5 for _uniprocessor_ systems .

    The problem, though, is that the approach taken doesn't work on multi-CPU systems. The overhead of synchronization between CPUs is prohibitive when doing preemption in the manner that MontaVista describes.

    1. Re:this is already planned for linux 2.5 by Chalst · · Score: 3
      If you're referring to this
      discussion, my understanding was that while Linus though low
      latency was a desirable goal for the kernel, he thought that `hard
      real time' was a bad thing for the kernel as a whole, becuase somtimes
      you do need to lock the kernel to have other important features like
      robustness and reliability. That ws in the context of RT linux, but I
      didn't see any big changes in that attitude since.

      The conclusion was that if you really needed these kinds of tiny
      latencies, then the right approach was to use a derivative kernel, but
      for the rest of us, it wasn't worth the candle. So I guess hard real-time isn't in the pipeline for 2.5.

    2. Re:this is already planned for linux 2.5 by TheGratefulNet · · Score: 3
      multi-cpu systems (at least the intel SMP model) really is suboptimal and has ALWAYS been somewhat buggy and not really production-quality.

      I gave up trying to get smp to work and just went with a NI (network-interconnect) cluster of single cpu systems. each cpu has full cache-coherency on a single cpu system [vbg]. each has its own private ram bank and spinning-disk, pci bus, etc.

      with the cost of pc's these days, I really wonder if dual cpu systems even are relevant anymore.

      now with something like sgi's origin systems - now THAT's a real multicpu system. but linux is far from finished for such large systems; irix, as weird as it is, still rules for that level of scalability in cpu counts.

      my point is: for consumer level systems, smp might as well not even exist. its an intel hack - and a bad one, at that.

      --

      --

      --
      "It is now safe to switch off your computer."
    3. Re:this is already planned for linux 2.5 by Paladin128 · · Score: 1

      Your comment is true for Intel brand CPUs, but not X86 in general. The problems with Intel SMP is the use of the Intel GTL+ CPU bus. AMD's Athlon series uses the DEC EV6 bus, which is point-to-point switched, rather than a single chunk of bandwidth shared between CPU's. AMD's 760MP chipset, due later this year, combined with the new Mustang-based CPU's should spank PIII Xeons in SMP.

      "Evil beware: I'm armed to the teeth and packing a hampster!"

      --
      Lex orandi, lex credendi.
    4. Re:this is already planned for linux 2.5 by tburkhol · · Score: 1
      AC writes: The problem, though, is that the approach taken doesn't work on multi-CPU systems.

      Fross writes: 2.4 has big extra support for SMP, which is essential for their pre-emptive solution.

      Anyone care to clarify?

    5. Re:this is already planned for linux 2.5 by Angst+Badger · · Score: 2
      The problem, though, is that the approach taken doesn't work on multi-CPU systems.

      This may be gross ignorance on my part, since I've never done any realtime programming, but aren't most common RT apps designed to run on single-processor systems? MontaVista's solution is surely not the end of the journey towards a realtime Linux, but it will probably satisfy a lot of needs in the meantime.

      --

      --
      Proud member of the Weirdo-American community.
    6. Re:this is already planned for linux 2.5 by Anonymous Coward · · Score: 1

      > So I guess hard real-time isn't in the pipeline for 2.5.

      No, it's not.

      But a preemptible kernel is.

      The two are not the same thing :)

    7. Re:this is already planned for linux 2.5 by Anonymous Coward · · Score: 1

      > The problem, though, is that the approach taken doesn't work on multi-CPU systems.

      > 2.4 has big extra support for SMP, which is essential for their pre-emptive solution

      Okay I misstated that. The approach taken _can_ be made to work with SMP, but Linus and others have said that the overhead is too high for their liking.

      What MontaVista means about the "extra support for SMP" is that they are, in effect, emulating a multi-processor kernel in some ways on a uniprocessor to get preemptibility. The end result still runs on one CPU, however.

    8. Re:this is already planned for linux 2.5 by Chalst · · Score: 1

      The announcement said MontaVista were providing both real-time latency and a pre-emptible kernel. Only one of those will be in 2.5, and so it looks like 2.5 will not make MontaVista's alternate kernel obsolete all that soon, as alleged by the post I replied to.

    9. Re:this is already planned for linux 2.5 by borgboy · · Score: 1

      Uhh, wait a minute. Profusion 8x SMP is a switched architecture. But then, it's a SMP design for x86 by Compaq, not Intel.

      --
      meh.
    10. Re:this is already planned for linux 2.5 by Rhys+Dyfrgi · · Score: 1

      But as we get more fine-grained kernel locks, the need to do so decreases. 2.4 introduced some, I'm sure 2.5/6 will have even more fine-grained locks.
      ---

      --
      END OF LINE
    11. Re:this is already planned for linux 2.5 by nrg · · Score: 1

      The problem, though, is that the approach taken doesn't work on multi-CPU systems. The overhead of synchronization between CPUs is prohibitive when doing preemption in the manner that MontaVista describes.

      The current version uses a no-preempt flag (actually a counter) to protect critical regions against kernel preemption. However, the ultimate goal is protect critical regions only be disabling interrupts on the local CPU. This works fine on SMP systems. As an example, SGI's IRIX works this way, and not only scales to large numbers of CPUs, but can also make real-time guarantees that are good enough for mission-critical audio and video applications.

    12. Re:this is already planned for linux 2.5 by be-fan · · Score: 2

      Hard-real time needn't impact stability. Take QNX for example. It is perfectly robust and still hard realtime.

      --
      A deep unwavering belief is a sure sign you're missing something...
    13. Re:this is already planned for linux 2.5 by be-fan · · Score: 2

      Huh? As far as I can recall a good deal of mission critical production quality x86 servers ARE SMP. And you make the assumption that SMP is limited to server tasks. A dual CPU system crunching Photoshop or 3D Studio will have a lot better performance than two interconnected single CPU systems.

      --
      A deep unwavering belief is a sure sign you're missing something...
    14. Re:this is already planned for linux 2.5 by ahigh · · Score: 1

      The bit about not support multiprocessors is unfortunate. Things like Performer(tm) on Linux need something to replace the react(tm) library from SGI in order to get real-time pipelined multiprocessor performance (able to get 2-3x performance improvement by using 3 or more typically 4 CPU's). One processor for game-logic code, one for culling, one for sending graphics to the graphics hardware, and one for OS tasks. Even before Doom shipped, SGI and some talented folks there (Craig Phillips, Sharon Rose Fischler/Clay, John Rholf, Steve Fuhrman, and others) had these very hard yet classical problems solved in a UNIX environment. Including the real-time extensions. Performer handled the task of getting pipelined maximum performance out of the million-dollar SGI Onyx RE-II when it shipped. Now, Nvidia has cards more powerful than the Onyx RE-II, but SGI's Performer for Linux doesn't yet have real-time support. Anybody from SGI care to comment?

      Not that I'm bitching. I'm very happy about the news. It's definitely a major milestone in the development of the kernel that has been a long time in coming.

      I would just like to see the multi-processor support too!

      --
      Aaron Hightower
      Staff Software Engineer
      Atari Games Coin-op (Rush2049 [developed w/linux])

    15. Re:this is already planned for linux 2.5 by nrg · · Score: 1

      The bit about not support multiprocessors is unfortunate.

      Support for kernel preemption in an SMP kernel will be added in a future version of the patch.

  8. Itching the scratch by jjr · · Score: 4

    This show the power of open source. These guys proposal was regeted so they decided to add in themselves. If they improvments are good enough it will be incorparted in the next version of linux. Got to love it.

    1. Re:Itching the scratch by pe1rxq · · Score: 1
      If you would read it wel it was not regeted, the guys asking for the video optimizations wanted something different. The article was merely pointing out that the general preemptive stuff would help them to.

      Jeroen

      --
      Secure messaging: http://quickmsg.vreeken.net/
    2. Re:Itching the scratch by RelliK · · Score: 1

      err, its scratching the itch. That's a very important difference.
      ;-)

      ___

      --
      ___
      If you think big enough, you'll never have to do it.
  9. Brave Penguins by Anonymous Coward · · Score: 2

    Somebody has to be first.

    In Antartica, when the penguins are ready for a swim to go get some yummy fishies, they all cluster around the edge of the ice. No penguin wants to be the first one in, because there might be penguin-eating seals in the water. If only some brave penguin would jump in first, then they could watch to see if he suddenly turns into a bloody chunky cloud in the water.

    I guess Montavista is one of the brave penguins.

    1. Re:Brave Penguins by jovlinger · · Score: 1

      seals? The cute, swim on their backs and make wavey little things with their flippers? The Dennis Leary cute-approved ones? Nah.

      orca. Oh, and polar bears love 'em too, but the commute's a bitch.

  10. Basing it on 2.4 makes good sense. by Fross · · Score: 4

    Basing their code on 2.2 would mean it was outdated before it was of any use - afaik 2.4 has big extra support for SMP, which is essential for their pre-emptive solution.

    It's not as though 2.4's contents are unknown, they have probably been working with 2.3 builds all the way through. they mention they have been in contact with linus torvalds, i'm sure that for something this big he would have provided them with as much information about 2.4 as soon as possible.

    Integration into 2.5 makes sense, not 2.6, so this can be tested and refined within the full linux kernel development environment, and then subsequently released into 2.6 as part of the full stable kernel.

    i really look forward to this, this is _good_ corporate involvement with useful goals.

    fross

    1. Re:Basing it on 2.4 makes good sense. by SurfsUp · · Score: 2

      they mention they have been in contact with linus torvalds, i'm sure that for something this big he would have provided them with as much information about 2.4 as soon as possible.

      You don't quite get it. (1) Linus doesn't have to provide anyone with information about linux, 2.4 or otherwise, because they can get that information themselves. It's open source, right? (2) Even Linus never knew and still doesn't know what the final 2.4 is going to be. Somebody out there is staying up all night as we speak preparing a killer patch that Linus doesn't know about. Linus will like the patch and include the patch. So much for Linus giving out prefered information to prefered collaborators. You got the wrong OS, son.
      --

      --
      Life's a bitch but somebody's gotta do it.
  11. 2.4 Kernel by DerMarlboro · · Score: 1

    ...if this had come out earlier, perhaps some of this could have been included [in kernel 2.4] 2.4's already taken so much longer than any other release, why not just slap on a few more months to integrate preemtion?

    1. Re:2.4 Kernel by BWindle · · Score: 1

      Mostly likely because 2.4 is supposed to be a stable-series, and they don't want to add a lot of new, not-as-tested-as-much-as-they-want code into unless they have to.

    2. Re:2.4 Kernel by |_uke · · Score: 1

      Actually, false.

      I believe 2.2 was in development for over 2 years..
      2.4 has only been in devel for about a year so far..

      --
      Luke
    3. Re:2.4 Kernel by molog · · Score: 2
      2.4 hasn't been released yet. We have test versions of it but for all purposes we are still on 2.3 officially.
      Molog

      So Linus, what are we doing tonight?

      --
      So Linus, what are we going to do tonight?
      The same thing we do every night Tux. Try to take over the world!
  12. Okay, it is impressive and nice! but by segmond · · Score: 1

    "MontaVista's Hard Hat Linux distribution"

    HARD HAT? Make me say uggghh! uuggghh!!!!!
    Gee, Even PinkHat sounds better.

    --
    ------ Curiosity killed the cat. {satisfaction brought it back | it didn't die ignorant | lack of it is killing mankind
    1. Re:Okay, it is impressive and nice! but by BlowCat · · Score: 1

      You are not forced you use their distribution. They provide patches against the kernel. Take their kernel and build your distro around.

    2. Re:Okay, it is impressive and nice! but by segmond · · Score: 1

      No man, Just the name is what I am talking about. :) Couldn't they be a little bit more creative than coming up with Hard Hat?

      --
      ------ Curiosity killed the cat. {satisfaction brought it back | it didn't die ignorant | lack of it is killing mankind
    3. Re:Okay, it is impressive and nice! but by linzeal · · Score: 1

      Well if *BSD can have SecureBSD why can't we have something like jimmy hat the secure linux distro.

  13. Hell yeah by jlg · · Score: 1
    This is why companies like Microsoft can't win against free software. If Microsoft wanted a real-time version of NT they would have to put togeather a huge team and it would be a risky, complicated project. With Linux, somebody decides they want a pre-emptable kernel so they just do it; and everyone benefits. (Not to belittle the effort it took to make this kernel.)

    Now other projects, like GNOME, are gaining a 'critical mass' of interest from developers and industry. I expect progress will be made by leaps and bounds.

    The future looks bright.

    1. Re:Hell yeah by hazydave · · Score: 1

      Ummm... not to be a Microsoft supporter or anything, but NT/Win2K, while not a hard realtime system, is dramatically better at functional realtime than any mainstream version of Linux. Not in the BeOS or QNX league, but good enough for things like hard core Digital Audio Workstation applications (when you have 64 audio tracks and 128 MIDI channels running low latency and glitch free under Linux, Linux will have a real chance in this market, but it's challenged enough today playing back a single MP3 without glitching).

      --
      -Dave Haynie
    2. Re:Hell yeah by bugg · · Score: 1
      They don't "just do it," MontaVista put together a huge team and had a relatively risky, complicated project.

      What's the difference? The only one that comes to mind is that MS pays for the team to work on NT, and MontaVista funds the work on Linux.

      --
      -bugg
    3. Re:Hell yeah by ahigh · · Score: 1

      Dave, First off .. it's great to see you! It's been years since. I read your stuff all the time back in the Amiga3000 days. I'd like to second what you're saying. Since the early days of Linux I've ported audio apps from IRIX to Linux, and it's click and pop city with the best of cards, CPU, etc. Linux audio sucks! So do you believe that this kernel mod has a chance to improve some of the (current) Linux audio problems? I had always blamed Hannu (sorry Hannu .. but I've cursed your name more than the average programmer's -- for the love of god! And then the licensing thing .. puh-leeze). -- - Aaron

  14. Re:Please Explain by Anonymous Coward · · Score: 5

    > Can someone explain what difficulties these people at MontaVista must have overcome? What is
    > it about the linux we know that makes it not fully preemptable?

    Current Linux only switches processes when the kernel explicitly decides to. (in other words, when a system call finishes all its work, or when a system call decides that work will take so long that it is time to give another process a chance to run)

    This patch makes Linux able to switch between processes every time that an interrupt hits, even if it is in the middle of a system call.

    The trick is to avoid deadlocks. Consider the following case: process A enters a system call, and the system call takes a lock. Then, an interrupt hits and process B is scheduled, preempting A. Now B does a different system call. This call disables interrupts and tries to take the same lock. It can't get it, though, because process A already has it. But since interrupts are disabled, process A will never get a chance to run again.

    Your machine hangs hard.

    The solution to this problem chosen by MontaVista is to simply disable all preemption whenever _any_ lock is taken by the kernel. The disadvantage to this approach is that:
    - even when it is not possible for a set of locks to conflict, preemption will still be disabled.
    - all locks become slightly slower (because every lock operation must now disable preemption too)

  15. Linux BELONGS TO Linus, you idiot by FascDot+Killed+My+Pr · · Score: 1

    Linux doesn't belong to "the community", it belongs to Linus. He can run it how he wants. If you don't like that, feel free to issue the following command:

    cp -a /usr/src/linux /usr/src/Jonix

    You can then incorporate or whatever the heck you want. Remember to abide by the GPL and good day.
    --
    Linux MAPI Server!
    http://www.openone.com/software/MailOne/

    --
    Linux MAPI Server!
    http://www.openone.com/software/MailOne/
    (Exchange Migration HOWTO coming soon)
    1. Re:Linux BELONGS TO Linus, you idiot by JanKotz · · Score: 1
      YHBT, YHL, HAND. Crissakes, the guy works for Natalie Portman Obsessive Technologies!

      Quit replying to "Jon Erikson" troll account.
      --

      --
      "A witty saying proves nothing" - Voltaire
    2. Re:Linux BELONGS TO Linus, you idiot by TheReverand · · Score: 2

      Did you know that Linus owns the name Linux? He could simply not allow anyone to use the name. The software wouldn't change but it would no longer be buzzword compliant. Not that he would do that of course....

    3. Re:Linux BELONGS TO Linus, you idiot by linzeal · · Score: 1

      *NL = * is not linux

    4. Re:Linux BELONGS TO Linus, you idiot by be-fan · · Score: 2

      Let's get something straight. The GPL doesn't prevent Linux from being subject to reality. A sucessful fork of the kernel would be a nearly impossible task. There would be little developer support, it would encourage other forks, etc. Additionally, the Linux project is prone to the same power struggles, ego trips, jockeying that everything else is. If Linux suddenly gave up the project without a clear line of sucession (god damn that sound medieval) then there would be a power struggle. Similarly, the GPL doesn't make Linux imprevious to egos. The bit with Alexander Verio posted in earlier Slashdot stories confirms this. Really, all the GPL makes it easier to do is use the code. Beyond that, you've got the same problems with power and introducing a new OS (forking) that you do with every other project. All it takes is a look to the BSDs' past to prove that OSS is not the "grand unified solution to everything."

      --
      A deep unwavering belief is a sure sign you're missing something...
  16. Terminology by e-Motion · · Score: 2

    I know what preempting is, but I don't understand what makes something "fully preemptive". Why is "fully preemptive" better than, er, I guess, "partially preemptive", and what do these terms mean? Anyone care to elaborate? What will be gained by making the kernel "fully preemptive", and what state is the kernel in now that keeps it from being "fully preemptive"?

    1. Re:Terminology by jfk3 · · Score: 3

      There are certain activities in the kernel that must be completed undisturbed. If you are running some type of real-time application that must take action in a short time period, you have a conflict. Fully preemptive simply means that you can *always* interrupt the kernel to do whatever needs to be done rather than *sometimes* or even *most of the time*.

    2. Re:Terminology by RelliK · · Score: 1

      Now this is a definite conflict. How do you go about atomic operations in a fully-preemptive kernel? Does atomicity even exist in real time OSes? If not, is that why all real time apps work only on uniprocessor? Actually, the lack of automicity would preclude proper thread synchronization, meaning that you would not be able to write any multi-threaded applications, uniprocessor or not. Am I missing something?
      ___

      --
      ___
      If you think big enough, you'll never have to do it.
    3. Re:Terminology by hazydave · · Score: 3
      In a typical RTOS, you have atomic operations on semaphores and other very small chunks, and that's it (well, ideally). So essentially, your atomicity is on a data level, it's not generally a processor/interrupt/hardware issue. It's also possible, but more complex, on multiprocessor systems.

      Much of this is based on the OS design. The original RTLinux people looked at implementing realtime in plain old Linux, but decided it couldn't be done without massive work and risk to the API integrity. Of course, they were after hard realtime. Mainstream Linux would benefit greatly from "as good or better than Windows" realtime; hard realtime is only truely necessary for certain classes of embedded apps.

      Another thing they don't mention, but should, is the need for a reentrant kernel and real, actual, useful, and working threads in Linux. This goes hand in hand with well written realtime/near realtime applications. Being preemptable is a whole lot more useful when the multitasking is far more fine grained than you have in today's Linux. Also, kernel-mode threads (as you have in BeOS and NT) are particularly useful for realtime-sensitive data.

      --
      -Dave Haynie
    4. Re:Terminology by greyham · · Score: 1

      Kernel threads do not generally get pre-empted. If an interrupt causes some higher priority user process to become runable, the current kernel doesn't switch to it until it's finished processing the request from the current process even though it's a lower priority request. The "fully" vs "partially" is distinguishing between the switch-immediately approach, and the common alternative: adding calls to schedule() in the long kernel code path. This "partial" alternative is a hack which makes the kernel appear pre-emptive in those areas where it's known to matter, but determining the points is a manual process prone to error and it adds complexity to the kernel. Neither description is precisely literal; they're just different points on the spectrum of responsiveness. A "fully preemptive" system still won't preempt atomic operations, and strictly speaking the "partial" form using schedule() calls to relinquishes the processor isn't preemption. Regards, Graham

  17. Media OS and RTOS by DLG · · Score: 4

    Well I can't claim to be an expert kernel hacker, but I have had to use Linux for what was essentially real time interactivity, relying on controlled conditions to provide me with CLOSE ENOUGH. The fact that Linux IS reliable and predictable and has been for some time, has allowed alot of folks to use it as if it was a fully multitasking system, and in many ways that sort of quality of service (having programs not freeze because of other programs) is what I think
    drew me to Linux in the first place.

    For a time I explored BeOS and the BeBox in particular, but the slowness of that development and the abandonment of the hardware left me cold. Still it had some interesting ability that other OS's don't have involving streaming media, and anything that brings such things (Rendering in a window continuing smoothly while window was being dragged as one example) is a good thing for the user community as well as for the embedded.

    While people DO seem to throw alot of hardware at problems to make operations smooth, with my Athlon 500 and 256 ram I cannot run an IE 5 session without getting skips out of winamp. This sort of performance depresses me so much I have already begun to switch over to Linux on the machine for normal use, despite it being purchased for windows development (necessary evil).

    I don't know how long it will take to get this sort of performance up, and I know that the danger of RTOS functions is that a badly programmed high priority thread can cause havoc, but if there were proper guards against such things, it would probably be enough to make Linux my OS of choice for interactive exhibits (which it is close to being as it stands).

    As to why we are already talking about 2.4, what I really want to know is why 2.5 is meaningful, when it is an unstable track and thus unlikely to be seen until 2.6 in most desktops. What does this mean? If we are talking about something that is done now that is not going to be in a stable release for another year, but with 10 and 100 fold improvements, does that mean we are going to have to start supporting development kernel releases for clients because the feature set is too important to miss? It hasn't been the case for me since 1.3.. I really DON'T want to be doing kernel catchup in the modern era.

    If this is important technology, then why can't we postpone 2.4 a little and move it in?

    What kinds of schedules are we really talking about?
    Is 2.4 expected this week? Is this RT stuff expected this year?

    Unlike with Windows and Mac, I don't think that many people are sitting on the edge of their seat waiting for 2.4. I don't think it is keeping folks from choosing Linux. I am not sure I can understand the purpose of rushing forward if there is good technology that can become PART of the mainstream kernel without causing radical change in usage.

    Or is this not so important after all?

    1. Re:Media OS and RTOS by FigWig · · Score: 1

      with my Athlon 500 and 256 ram I cannot run an IE 5 session without getting skips out of winamp

      Considering I can do this with a Celeron 300A (not oc'ed), I can safely assume your computer is phuX0red.

      --
      Scuttlemonkey is a troll
    2. Re:Media OS and RTOS by StarFace · · Score: 4
      You bring up some good points, however there are in fact compelling reasons for 2.4 to be released as soon as possible. One of the biggest reasons I can think of off the top of my head is vastly improved SMP.

      For instance, the computer I'm on now is a slightly old Hewlitt Packard dual chip system. I can't even use the SMP in Kernel 2.2, it crashes on boot up when compiled in. That means I either have to choose between running the Debian approved 2.2.17 or downloading 2.4-test5 and crossing my fingers.

      Right now I'm crossing my fingers. While the factors are different for other machines, the choice remains the same. Do you run your website with old-tech SMP(or none at all!) or run the risk of being slightly unstable, not fully tested, but with more modern performance?

      Delaying 2.4 for 6 months or another year would really set back a lot of people dependant on the newer features of the Kernel. I don't imagine that a fully RT Kernel is going to be rolling around any sooner than that, I could be wrong, but this is a rather massive project. Just developing it is going to be a large project, fully testing it and getting it solid enough for the big-time is going to take lots of time.

      --
      V
    3. Re:Media OS and RTOS by TobyWong · · Score: 1

      I'll second that, even on an old 233mmx I can do any day to day task without winamp skipping... only time it skips is if i'm doing some cpu intensive tast like rarring/unrarring a huge file or thrashing my HD by copying huge files all over the place.

      --
      - Toby
    4. Re:Media OS and RTOS by cyber-vandal · · Score: 1

      Unlike with Windows and Mac, I don't think that many people are sitting on the edge of their seat waiting for 2.4.

      I'd dispute that to a certain degree, I think 2.4 is eagerly awaited, as the first really scalable kernel, and also for the consumer-type stuff such as USB and FireWire. Let's not start saying 'delay the kernel' now, we don't want to get into NT5/2000 territory, let's go with what we have, which is, by all accounts, pretty damn good already and getting better as the bugs and performance issues are dealt with.

    5. Re:Media OS and RTOS by PigleT · · Score: 2

      "What kinds of schedules are we really talking about?"

      What's a `schedule'?
      "When it's ready" will suffice, not before, and any later due to continuing testing.
      None of this "January 2001" crap here, please!
      ~Tim
      --
      .|` Clouds cross the black moonlight,

      --
      ~Tim
      --
      .|` Clouds cross the black moonlight,
      Rushing on down to the circle of the turn
    6. Re:Media OS and RTOS by Rhys+Dyfrgi · · Score: 2

      with my Athlon 500 and 256 ram I cannot run an IE 5 session without getting skips out of winamp.

      That's amusing, given that my Celeron 400 with 64 megs can do it fine. Hell, even my P75 can play MP3s and run Opera at the same time (just barely). There's something very very wrong here...
      ---

      --
      END OF LINE
    7. Re:Media OS and RTOS by Rhys+Dyfrgi · · Score: 2

      apt-get install kernel-source-2.4.0-test5
      cd /usr/src
      tar -xzf kernel-source-2.4.0-test5.tar.gz
      cd kernel-source-2.4.0-test5
      make (config|menuconfig|xconfig)
      make dep
      make bzLilo

      And you're done, WITH a Debian approved 2.4.0-test5 kernel at that. It's probably not as modular as the binary release will be.. but do you really care?
      ---

      --
      END OF LINE
    8. Re:Media OS and RTOS by StarFace · · Score: 1

      Yes, I am aware of the fact that the unstable branch has 2.4 test. That is fine for my home machine, not-so-fine for the departmental server at work. I try to stick with debian 2.2 .deb packages only for that unless there are no other alternatives.

      --
      V
    9. Re:Media OS and RTOS by bugg · · Score: 1
      Perhaps he's using a PCI video card, in which case the bus may be filled up with video traffic- hence the soundcard's buffers empty and you get a skip.

      Solution? AGP. Or two PCI buses. But good luck finding the latter for your Athlon ;)

      --
      -bugg
    10. Re:Media OS and RTOS by Rhys+Dyfrgi · · Score: 1

      Or an ISA sound card. ::laughs::
      ---

      --
      END OF LINE
    11. Re:Media OS and RTOS by Kuroyi · · Score: 1

      wget ftp://ftp.us.kernel.org/pub/linux/kernel/v2.4/linu x-2.4.0-test8.tar.bz2
      bzip2 -cd linux-2.4.0-test8.tar.bz2 | tar xvf -
      cd linux
      cp ~/.config .
      make-kpkg kernel_image kernel_headers
      cd ..
      dpkg -i /kernel-*.deb

    12. Re:Media OS and RTOS by be-fan · · Score: 2

      That's just pattantly false. I can stream more videos in NT (on my 300MHz 128MB machine) than I can on Linux (which is several less than what I can do on BeOS ;) I can keep open a dozen IE5.5 windows while listening to a couple of MP3s. Hell, my normal usage is
      1) Listening to an MP3
      2) Coding in Visual Studio.
      3) Doing graphics in 3D Studio
      4) Doing textures in Photoshop.
      This is without any skips from the MP3 player!

      If my significantly weaker machine can do all that, I have a hard time believing that your 500MHz 256MB machine can't run IE and WinAMP at the same time. Unless you abuse your Windows installation that much, I can't see how it would happen.

      --
      A deep unwavering belief is a sure sign you're missing something...
    13. Re:Media OS and RTOS by BenLutgens · · Score: 1

      try burning a CD (open BSD) while ripping an audio CD to mp3, listenign to tunes via a net stream with xmms, and having netscape open. Nothing misses a beat. NOTHING. And I am running a PIII600 (Overclocked to 800) on an ASUS P3v4X with 256 PC133 RAM, U160 SCSI drive and controller, and G400Max 32 MB VIdeo card. Do that with windows. Oh yeah, did I mention the CDR and CDROM are IDE? Get some of that. And my PC is as responsive as it is when idle. Try it windows llama, I dare ya, I double dog dare you mother fucker say what one more goddamn time!

      --
      "If you love someone, set them free. If they come home, set them on fire." - George Carlin
    14. Re:Media OS and RTOS by PigleT · · Score: 1

      "In other words, robust USB support won't be there until USB is obsolete."

      I guess that means USB is but a temporary flash in the pan, then.
      ~Tim
      --
      .|` Clouds cross the black moonlight,

      --
      ~Tim
      --
      .|` Clouds cross the black moonlight,
      Rushing on down to the circle of the turn
    15. Re:Media OS and RTOS by be-fan · · Score: 2

      Try burning a CD, rendering an animation in 3D Studio, listening to an MP3, surfing with IE, while coding in Visual Studio. I've done it. In fact, I do it several times a week. This is on my 300MHz 128MB PII. NT can handle it. Linux (kernel 2.4-pre7, NVIDIA 0.9-4, Slackware 7.1, XFree86 4.0.1, Gnome 1.2) get's flaky on me when I try to untar the kernel source and surf the net with Netscape at the same time.

      --
      A deep unwavering belief is a sure sign you're missing something...
    16. Re:Media OS and RTOS by BenLutgens · · Score: 1

      Yeah bot how often you reboot for no good reason (kernel upgrade) and how often you have an application crash your your entire box? These things never happen to me. Windows is for old ladies and little kids.

      --
      "If you love someone, set them free. If they come home, set them on fire." - George Carlin
  18. Definite 2.5 material by Digital+Commando · · Score: 4

    Ingo did a preliminary patch for this a while ago, as part of his low-latency work. It appears that MontaVista has picked up the ball and run with it. Integrating a patch like this is going to require a lot of QA, so it should go in early in the 2.5 cycle -- this is definitely not something that one throws in at the last minute.

    It will be interesting to see how much the preemption infrastructure impacts performance (throughput) on a uniprocessor.

    On a perhaps related note, I've been thinking about the growth of locks in the kernel. Many of these will have little contention, and locking is a pessimistic approach that incurs overhead. Plus, more locks means more locking discipline required. :-/ Anybody have a good reference to lockless data structure, algorithm, and design techniques?

    1. Re:Definite 2.5 material by td · · Score: 4

      Henry Massalin's PhD thesis `Synthesis: An
      Efficient Implementation of Fundamental
      Operating System Services' has all kinds
      of good stuff about high-performance system
      software, including fairly cool lock-free
      synchronization ideas.

      I can't find a url for it -- Columbia University
      has apparently dumped Henry's pages from their
      server.

      --
      -Tom Duff
    2. Re:Definite 2.5 material by kijiki · · Score: 1

      http://www.cs.rpi.edu/~valoisj/papers/

    3. Re:Definite 2.5 material by csbruce · · Score: 1

      I'm sure that lockless data structHowever, they may not work well in practice.ures work in theory.

  19. Can we changed the article subject? by Palin+Majere · · Score: 3

    Nothing has been "rolled out". This is not a product launch. This is the prototype release of preliminary code for a development kernel. The 2.4.x series isn't here yet, and neither is MontaVista's code.

    Read the article, as there are several paragraphs in there talking about where this code will be going. They're hoping to get it incorporated into 2.5.x NOT 2.4.x.

  20. Linus Torvalds vs. the uncoming bus by fhwang · · Score: 5
    If you're unaware of this, Segfault published a study earlier this year titled "What if Linus Torvalds Gets Hit by a Bus?" To quote from the conclusion: "... given standard traffic patterns, Linus Torvalds has an 8.9% (plus or minus 1.4%) chance of surviving and fully recovering from a collision with a bus."

    Francis Hwang

  21. Re:Please Explain by pointym5 · · Score: 1
    > The trick is to avoid deadlocks.

    I think that should read, "one trick among many tricks is how to avoid deadlocks".

    To have decent real-time performance, they need to:

    1. Optimize interrupt handling code so that drivers get out of the handlers and into preemptible threads as quickly as possible;
    2. Find an efficient synchronization mechanism for dealing with multi-processor system lock issues;
    3. Deal with the priority inversion problem, which happens when a low-priority thread has control of a resource needed by a ready-to-preempt high-priority thread;
    4. Optimize the scheduler
    None of these problems are new, they're just a pain, particularly when you're trying to wedge them into a kernel that wasn't really written with these things in mind from the start.

  22. Re:Is Linux really open? by MartinG · · Score: 2

    > At the very least, the final say on all things
    > to do with the kernel should be handed to Alan
    > Cox,

    Hmm. a few things spring to mind..

    Don't you think Alan should have some say in what "should be handed to" him? The last I heard, he wasn't terribly happy that he was even seen as second in command, never mind first.

    You don't think Linus should be in charge, but what makes you think others would be happy if someone else were?

    The only reason Linus is still in charge is because he is bloody good at his job. Do you really believe Linux would have got this far if he weren't?

    > ..fork the code, but this wouldn't be of
    > benefit to the vast majority of Linux users ..

    It would if it was better. Do you really think anyone would hold back on forking the code if they thought they could do a better job than Linus? I know I wouldn't

    --
    -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
  23. But it will certainly help on single cpu's . . . by hawk · · Score: 3

    I like the sound of it.

    While I generally prefer FreeBSD, one of the reasons is exactly the desktop responsiveness spoken of. On the same machine, I find FreeBSD far more repsonsive than Linux when using X under load. On Linux, I can feel the lag in system response at a load of about 3--even though that load is from doubly niced makes and there's plenty of physical memory left. Under FreeBSD, I've gotten to loads of 10 without any noticable degradation in response.

    NOw if anyone can find a way to quantify this . . . :)

  24. It must be a bad crack day :) by hawk · · Score: 2

    As a rule, I avoid the comments on moderation. However, this morning I"ve noticed a cross a few threads that it seems to be a bad crack day. A couple of troll/flamebaits here, a couple more elsewhere.

    Seems a couple of folks who drew moderation today took the "I am your God" comment a bit too literally, and must smite all unbelievers . . .

  25. make like humpty dumpty by hawk · · Score: 2

    and push a penguin :)

    Of course, the penguin that gets pushed gets the best herring.

    Then again, the second mouse gets the cheese . . .

    which reminds me, I better go check the traps in the attic. I could have four-day dead mice by now . . .

    1. Re:make like humpty dumpty by hawk · · Score: 1

      > Well, if they're dead, they won't eat much...

      I'm sure my wife will find that comforting :)

    2. Re:make like humpty dumpty by Tower · · Score: 1

      Ever had one die in the insulation inside the back of an oven?... whew! Not fun...

      --

      --
      "It's tough to be bilingual when you get hit in the head."
  26. Which kernel version are you using? by renoX · · Score: 1

    Is-it 2.2 or 2.4 ?

    The 2.4 will include some code to make the kernel more "responsive", but I suspect that this will be true only for "soft-real-time" processes (audio application).

    I'm wondering if the desktop responviness will be better under 2.4..

    May be, you could try using XFree86 4.x if you have a supported card, I suspect that it would help more than a new kernel release..

    Are you using KDE, if yes KDE 2.0 should help..

    1. Re:Which kernel version are you using? by hawk · · Score: 2

      I'm using 2.2, and noticed the same thing with 2.4.
      It's stock debian potato with proposed-upgrades and security, except for the cvs version of lyx.

      I'm not using KDE; plain old X is fine for me. I need to see how long it will take to get my new machine once ordered; I don't want to spend too much time on this one. However, if 2.4 will work better with my eepro network card . . . I have to have a script force-reloading the netwrokd with five second pauses, and I still need to power down to completely reset the card once a day (warm boot doesn't do it).
      The card stayed up under FreeBSD, but I don't have the disk space for the compiles (make world and make lyx together take more space than I have . . .)

      hmm, now that I think of it, I used to run X at a -2 nice on macbsd to solve some of these (and xfs at +2 or some such :)

  27. The beauty of GPL at work by bgat · · Score: 1

    The nicest thing about all of this is that even if Linus rejects MontaVista's changes, there's nothing stopping anyone who wants to use those patches from getting the code. While it's true that Linus owns the Linux(tm), the truth is that we all own the code, by virtue of the GPL, and we can all do what we want to with our own copies, whether Linus approves or not.

    Contrast this with a non-GPL work, where if a single marketdroid decides to quit selling it (even if it is a good product), all the product's users are permanently and irrevocably screwed.

    People can bitch all they want about the GPL, but it is clearly working to everyone's advantage here. Thanks, RMS!

    b.g.

    --
    b.g.
  28. Well, that's what they do. by cduffy · · Score: 3

    MontaVista, recall, is an embedded linux company. Since embedded systems don't need SMP, that's not where their focus is. It'll be interesting to see if they try to add support and what actually gets into the official kernel.

    Btw, I happen to work at MontaVista Software (not their main office right now, which is why I'm kinda' out of the loop and don't have more to say about this), and can attest that they're really cool folks! <grin>.

  29. 2nd opinion by TetsuoShima · · Score: 1

    PhuX0red, or perhaps some of the components (video card/sound card) aren't as up to date as the processor.

    This is covered in the Winamp FAQ and/or help file (last time I checked), about why the music skips when someone scrolls in a window, etc ... I'd presume it's the same problem, and not IE5's fault. If it turns out not to be, I'd agree with
    you on the phuX0red diagnosis.
    But hey, it's always easiest to blame microsoft, right?

    1. Re:2nd opinion by Eponymous,+Showered · · Score: 1

      They claim in the FAQ that it's a video driver issue. I'm not enough of a HaX0r to know if it's a driver or it's phUx0rEd, but it sounds plausible to me.

    2. Re:2nd opinion by BSemrad · · Score: 1

      Yes indeed, it is almost certainly a video driver problem. I had the exact same problem while scrolling large windows (on my Windows NT box). In my case a new set of video drivers cured the problem completely.

  30. "Linus Torvaldes"? by dwalsh · · Score: 1

    Ahh! Now I remember. He is the meanest kernel bandit in Mexico. :-)

    --
    ${YEAR+1} is going to be the year of Linux on the desktop!
  31. Most people don't need RT support... by cduffy · · Score: 3

    ...even most people who think they do.

    With CPU speeds being what they are today (and constantly increasing), the number of cases in which the regular schedular can't handle things correctly is really very low.

    On the other hand, some of the improvements done for RT purposes (eg. finer-grained locking) help other people too (eg. SMP users).

    1. Re:Most people don't need RT support... by Ed+Avis · · Score: 3

      CPUs are getting faster but the demands placed on CPUs are growing at least as fast. If you're taking part in a videoconference, you need to compress and stream out your own image at the same time as streaming in and displaying images from the other participants. And if you can manage that, try again when the screen resolution and refresh rate have reached television-like levels.

      Of course in the long term everything will be fast enough that clever schedulers won't be so necessary. But you could say the same of optimizing compilers, transparently-compressed network links, or almost any performance improvement invented over the past thirty years. Most of them are still with us. Even if the need will eventually disappear, there will be at least a five-year window when people will need a better RT scheduler (is my rough guess).

      --
      -- Ed Avis ed@membled.com
    2. Re:Most people don't need RT support... by cduffy · · Score: 2

      Okay, we'll use videoconferencing as an example.

      If you're using realtime for your videoconferencing box, you're running pretty much the following threads (depending on how the thing's designed, of course):

      Network Input
      Display
      Video Input
      Compression
      Decompression
      Output

      With a hard real-time schedular, you can guarantee timings for some or all of these... so what are you going to do?
      Be sure that your video input thread is awake in time for each frame? Doesn't do much good if compression or output are falling behind; the received video is then getting buffered (and memory for those buffers potentially being allocated... or time is being spent on frames which get dropped... or some other Bad Thing like that, depending on your design).
      Verify that compression gets the CPU frequently enough to keep up with video input? First, that presumes that input is keeping up itself -- and if you starve decompression, or anyone else, Bad Things happen.

      And so on for the rest of the system.

      Real time doesn't give you more CPU cycles; it just gives you a little more control over where they go. Most of the time, though, this control is something which is much more trouble than it's worth. If you've got enough total CPU time to run your videoconferencing box, then it'll generally run -- whether your schedular supports RT or not.

    3. Re:Most people don't need RT support... by jlg · · Score: 1
      RT is useful in subtle ways. For example, it would make burning a CDROM easier. You could say, well I'll just double the speed of my CPU and it will keep up. But then what if you decide to buy a 2x CDROM burner, now you have to push twice the data and you're back where you started.

      To say that we will just have to wait for computers to get faster and then we won't need decent software is making the assumption that the things that people want to do with computers won't get any more complex or resource intensive in that time.

    4. Re:Most people don't need RT support... by cduffy · · Score: 2
      Even here, realtime gives you nothing a standard high scheduling priority doesn't.

      Remember, your CD burner has a nice fat buffer on it. You don't have to push data into the buffer at exactly the right time (which is what hard RT is for) -- you just need to be sure you push data in.

      Your standard schedular is perfectly capable of giving your CD burning app all the CPU time it needs if you pump up the priority all the way -- it just won't give you the ability to decide exactly which millisecond you want that time to arrive at. Realtime doesn't make performance come out of nowhere -- it doesn't suddenly make your machine faster if you decide you want that app to have realtime priority. It may get you a guaranteed timeslice, but that's all -- and it's not as useful a thing as most folks seem to think.

      Note that I'm saying this from the POV of someone running an app on an embedded system or other dedicated machine. If you're using RT as another way of setting a really high scheduling priority to deal with preempting other, lower-priority user apps... well, you're misusing it -- there are other, lower-overhead ways of doing that. If you need to be damned fscking sure that data gets read in from that device at EXACTLY THAT TIME or else it's going to be lost... well, that's where hard RT comes in. But it's really not needed for much anything else.

  32. Ooops, not 'time sharing' anymore. by Anonymous Coward · · Score: 1

    I guess Linux isn't a 'time sharing' system any longer.

    Has the 'nice' command been disabled? What happens when User 27 on the teletype down in the basement of the Physics building is plonking away at the keyboard and the response locks up for ten seconds? Do we really want User 18 up in the third floor of Mace Hall to be able to lock up the whole system to run that data acquistion program?

    Sounds like there's some cool potential for DOS attacks here.

    1. Re:Ooops, not 'time sharing' anymore. by cduffy · · Score: 2

      The hard realtime patch (which this isn't), last I checked, requires you to have a specific high priority to be able to change the scheduling mode. So you need to have root permissions when you set up your scheduler, or have someone (some daemon?) who has such permissions renice you. Normal users can't use it, so it's not a security risk.

  33. Yeah, but can you actually use it? by revbob · · Score: 2
    James Ready? As in Ready Systems (VRTX)?

    The rep Ready Systems had some years ago with people buying real time systems is that if it visibly works in the demo, it will probably work in the product you buy. If the salesdroid talks about it working, it won't. Perhaps that's just in the Southeast US, but their reputation where I work was far from enviable.

    In VxWorks one of the things we learned to do early was get the hell out of interrupt level as quick as you could. The driver I ported to VxWorks for an FDDI board, for example, basically shuffled stuff onto a ring buffer that fed the process (at high priority task level) that did the actual work. That's because interrupt level was honest-to-god interrupt level.

    Please forgive my ignorance here, but is that the way people are writing Linux drivers? If not, then you're going to have a massive job of driver rewriting before preemption is actually usable for (e.g.,) cyclic schedulers like we use in training simulators and some kinds of hardware-in-the-loop simulations.

    Simply turning off preemption every time a process or a driver takes a lock is a far, far cry from usable preemptive scheduling. If I need a 60 Hz scheduling event, then I bloody well need it at 60 Hz, and a pause for a few dozen milliseconds for a filesystem sync (etc., etc.) is right out.

    And there was a need for a number of parallel utilities in VxWorks. For example, printf() takes a semaphore, so it's unusable at interrupt level and you have to use another function to print things out at interrupt level. Note the way VxWorks did it: it doesn't let you take a semaphore at interrupt level, which is just the opposite of what Ready is suggesting. Why? Because they believe real-time is important, and it's at the core of the philosophy behind the operating system, not an add-on.

    Unless I've badly misunderstood this, it looks like preemption in Linux is going to be a toy.

  34. Re:Is Linux really open? by Dios · · Score: 1
    Thanks for stating the facts.. Seems more people should read the kernel development list before starting to spout off... Of course, its much easier to stay stupid and mouth off than to get smart and argue real issues...

    It also sounds like this code might be a much better variety of what was originally proposed for 2.4.

  35. You don't understand about Linux licensing by Bruce+Perens · · Score: 3
    The way Linux is licensed makes Linus unnecessary to its future development. Anyone can take it and check it into CVS, modify it as they wish, and build their own group of people to maintain it. What keeps Linus in control right now is the respect that people hold for him. Once he moves on, there will be another group. Given the way that anyone can use anyone else's modification under the GPL, code-forks naturally converge.

    Anyway, Linux only has a few years of development left. The system we run 10 years from now will be Free Software and will contain a lot of the same tools, but might well have a different kernel. I'm surprised that people don't consider this more.

    Thanks

    Bruce

  36. The Standard kernel by chdusseau · · Score: 1

    do you think there is any chance of Montavista's kernel dominating Linus's kernel. Making it effectively the standard instead of Linus's. Same question but to their distrobution?

    1. Re:The Standard kernel by mkldev · · Score: 1
      The MontaVista "kernel" is a set of patches from the current 2.4 test x tree. It's not a question of domination, but a question of inclusion vs. having to update the patches every release.

      David

      --
      120 character sigs suck. Make it 250.
  37. Re:Is Linux really open? by Anonymous Coward · · Score: 1

    Fork!

    Fork! Fork! Fork!

    Yay!!!!

    (should we dub the new project OSF II ??)

    Let's form committees!!!

  38. Personality cultist! by TheDullBlade · · Score: 2

    RMS's loss would cut the heart out of the free software movement

    HAHAHAHAHA!

    I'm not even convinced he played a significant role in any major trend except promoting the TLAs: FSF, GNU, GPL, and RMS. That, and injecting a lot of moralistic nonsense into what are essentially economic and engineering issues.

    Free software is not like free speech. It is like public domain text: nice to have, but not a fundamental property of a free society. Going around convincing people that it is essential is harmful both to them and to the people who have rational reasons for releasing free software.

    If he was never born, the major difference would be that Emacs wouldn't be around. If he died today, nothing would really change. He hasn't really done anything significant in a long time, he just goes around as a figurehead of the "free software movement" who is hated by half of the people involved in free software.

    --------

    --
    /.
    1. Re:Personality cultist! by Bun · · Score: 1

      I'm not even convinced he played a significant role in any major trend except promoting the TLAs: FSF, GNU, GPL, and RMS.
      &lt snip &gt
      If he was never born, the major difference would be that Emacs wouldn't be around.


      Ok, so you're not a troll. You just really don't have a clue.

      Without RMS there would be no FSF or GPL. Without either of these there would be no gcc or GNU, without either of which there would be no Linux. Add to that the fact that all of the *BSD's and XFree86 depend on gcc and you have someone who has made a VERY big contribution to computing in general.

      It's amazing how many of you just have no idea how much RMS has done, and what have been the implications of all that work.

      --
      "Anyone that has ever gotten an idea based on any of my work and done something better with it-good for you."--J.Carmack
    2. Re:Personality cultist! by TheDullBlade · · Score: 2

      Without RMS there would be no FSF or GPL.

      True, but these are just names. Other free software organizations exist, other free software licenses exist. Neither is really necessary for anything.

      Free software has been around since they first let university students touch computers. It went on just fine in the public domain or with simple blanket permission-granting documents and without any central representative. The dramatic increase in free software production is a natural result of internet growth: suddenly students and hobbyists could show off their software to everyone interested in the world and collaborate with them, regardless of distance.

      Without either of these there would be no gcc or GNU,

      Without the gcc project sucking in most of the people who are interested in writing a C or C++ compiler, another free C or C++ compiler would have been made.

      GNU is one of several "let's remake Unix in our own image!" projects. Unix was poorly marketed and overpriced, but popular, and lots of people had seen the source, so naturally someone would recreate it. FSF propaganda made GNU high-profile, thus it sucked in more programmers than other efforts.

      Again, the primary difference is the names, the basic product was inevitable, regardless of the actions of any one individual.

      Remember, the existence of a good, working program available freely is a disincentive to produce another one that serves the same purpose. People understand that they'll eternally be playing catch-up to the earlier project, and won't bother unless they strongly disagree with the way parts of it are done, and want to do something significantly different. With something like a C compiler producing a certain type of object file, once it is approaching compliance to the standard, the only differences are in the optimizer; even if you strongly disagree with how the optimizer is done, it only makes sense to fork the existing project (gcc, egcs).

      Besides, other C compilers were written, like lcc and vbcc. You just don't hear about them because gcc is so much better. And, of course, gcc is better because the gcc project attracted the most attention at first, then once it was going, it didn't make sense to waste effort by working on others. There's only room for one great community C compiler.

      without either of which there would be no Linux.

      That Linus used GNUtilities doesn't mean they were necessary to produce Linux. Assuming, for the moment, that nothing like the GNU utilities that were running at the time would have existed at the time, the most you can say is that they made the early development easier. After that, I'd say Linux drew more people to work on "GNU" tools than the GNU project drew on its own before that.

      Remember, Linux was based on Minix, which had a large community. Anyone who seriously undertook to convert Minix into a full-fledged useful OS would have had lots of support. There was much interest and several abortive attempts before the cheap and powerful 386 processor and the growth of the internet made Linux the successful one.

      all of the *BSD's and XFree86 depend on gcc

      No, they are compiled with gcc. Believe it or not, you can compile them without too much trouble with other C compilers. For the moment, let's ignore that in the absence of the gcc brand the same people would have just put their work into another free compiler project and made one of comparable quality. You don't need a free compiler to make free software. It's very handy, but not strictly necessary. Before free compilers, programmers just bought commercial compilers (or used the licensed ones at their school). These produce object files, the formats of which are documented, when you're making your own executable format, a linker isn't too hard to write (for basic utilities such as compilers, linkers, web browsers, etc. the biggest problem is conforming to someone else's standard, especially when it was "grown" in a haphazard manner).

      It's amazing how many of you just have no idea how much RMS has done

      It's amazing just how many of you attribute everything that's GPL'd or that has the "GNU" stamp on it to RMS. He didn't do that stuff, he didn't make it possible, he just provided some popular names (and a popular license that is the root of most license conflicts), then he went around bitching like spoiled brat when a popular piece of free software didn't include "GNU" in its name.

      --------

      --
      /.
    3. Re:Personality cultist! by Bun · · Score: 1

      Please excuse my late reply.

      Without the gcc project sucking in most of the people who are interested in writing a C or C++ compiler, another free C or C++ compiler would have been made.

      This is a very convenient statement to make, since it is impossible to know what would have happened in the absence of gcc and FSF. I've checked out both the lcc and vbcc sites, and those projects look pretty stagnant. The fact is the FSF started GNU before anyone even thought there was a problem with proprietary unices. When the *BSD people continued with their work on their free OSes, gcc was there waiting for them. The same goes for XFree and Linux. If they had to start their own compiler, or if a project that started later wasn't ready for prime time, who knows how far back things would have been set if not for the ready availability of the high-quality GNU tools?

      Again, the primary difference is the names, the basic product was inevitable, regardless of the actions of any one individual.

      This is the general gist of your argument, and it is impossilble to prove in the absence of the alternative past you imagine. The fact remains that Stallman WAS there, he DID see a need, the FSF WAS created, and their project became highly successful. Proponents of Free Software everywhere do owe these people a huge debt for the great service that they did in fact provide.

      FSF propaganda made GNU high-profile, thus it sucked in more programmers than other efforts.

      Could it be that people actually AGREED with the stance the FSF was taking? Maybe they actually LIKED releasing code to the community under a license that guaranteed that their code would remain open and available, and not forked off into a closed project? Even Linus released Linux under an earlier license that was even MORE restrictive than the GPL, because he didn't want people making money off of what he felt was community property. Fortunately for the kernel's popularity, he was convinced to GPL it, or we wouldn't have widely available boxed distributions to use.

      That Linus used GNUtilities doesn't mean they were necessary to produce Linux. Assuming, for the moment, that nothing like the GNU utilities that were running at the time would have existed at the time, the most you can say is that they made the early development easier.

      Now you'll have me proposing 'possible pasts'. :-) Linus is and was a very practical man, so it is unlikely he would have started his project without the tools with which to do it. He may have searched out what tools were available for *BSD's etc., but in the absence of the FSF, I doubt there would have been sufficient quality or quantity of tools for him to undertake the development of an OS kernel on his own 386 at home. I believe he started the project because GNU was there, and he knew he only needed a kernel to get it all going and do what he wanted to do (which, basically, was do his CS homework at home and avoid lining up for the terminal). But this, like much of your argument, is mere speculation.

      It's amazing just how many of you attribute everything that's GPL'd or that has the "GNU" stamp on it to RMS. He didn't do that stuff, he didn't make it possible, he just provided some popular names (and a popular license that is the root of most license conflicts), then he went around bitching like spoiled brat when a popular piece of free software didn't include "GNU" in its name.

      Never did I say RMS did it all. My view is that Stallman is a figurehead for the FSF (but a vastly more productive one than, say, the Queen of England). There were and are, obviously, many like-minded volunteers in the FSF, and many more people who contributed their code without joining the FSF. Never did I say the RMS wrote gcc, gnu tar, ls, etc. and the various libraries, etc. all by himself, or that they sprung fully-coded from his forehead. He did, however, start and lead the FSF project. He did contribute vast amounts of effort and code in promoting Free Software.

      I believe too many people take the results of his work and the work of all of the other contributors for granted. Or at best they say, "thanks, now go away and take your GPL with you". That last attitude is the most annoying part of all. Noone is forced to release their code under the GPL. Noone is forced to use GPL'd software. Viewing the success of all the software released under this license as an inconvenience at best, and a hinderance at worst is quite simply futile whining. It's there, and that's the license. If someone doesn't like it, he or she is free to clone something under "Bob's Own License", or whatever. Crying to the community about the 'fanatical RMS', when the FSF takes issue with minor violations with the code they've written is a waste of time. They should have known better than to wave off the legal implications with a shrug.

      Lastly, I don't think Stallman wants people to call Linux "GNU/Linux" for his personal aggrandizement. I believe he genuinely wants all of the volunteers who worked on GNU - his friends - to get the credit for the work they did. While I don't normally call it GNU/Linux, I can understand that viewpoint.

      --
      "Anyone that has ever gotten an idea based on any of my work and done something better with it-good for you."--J.Carmack
  39. Re:Should be 2.6 right? by |_uke · · Score: 1

    2.5 is right

    they want to get the code into the DEVELOPMENT kernel.

    Trying to get something like this into a stable kernel would be overkill. Something like this would be best put in early into the next devel kernel (2.5)

    --
    Luke
  40. How is this different from RTL/RTAI by Lord+of+the+Fries · · Score: 1

    I've just been dabbling into the excellent RTL/RTAI work done. I'm using the Lineo (formerly Zentropix) distro. This candidate stuff for 2.5 - would that render these pointless? What's the difference between the two approaches?

    --
    One man's pink plane is another man's blue plane.
  41. I read some of this thread in kt by josepha48 · · Score: 2
    "According to Morgan, a group of Linux game programmers recently petitioned Linus (Torvalds) to add specific preemption points in the 2.4 kernel, primarily for video throughput improvement. "

    This was in kernel traffic either last week or the week before. I think that it was not added cause it was either alot of changes or it was messy code. I think also that Linus has his wants and not wants in the kernel.

    I wonder if this is the start of the forking of Linux that so many have said woudl happen. May the best kernle win.

    I also wonder if they are releasing there changes to the kernle as Open Source under the GPL?
    ~~~~~~~~~~~~~~~~~~~~
    I don't want a lot, I just want it all ;-)
    Flame away, I have a hose!

    --

    Only 'flamers' flame!

    1. Re:I read some of this thread in kt by mkldev · · Score: 1
      I also wonder if they are releasing there changes to the kernle as Open Source under the GPL?

      Look on the ftp site. The patches are right there, plain as day. :-)

      David

      --
      120 character sigs suck. Make it 250.
  42. Aha! Preemption Points! by Anonymous Coward · · Score: 1

    It's "hard" real-time, but is it deterministic? A little history: Jim Ready, MontaVista's Realtime "pioneer" gave us VRTX. It was not deterministic, which gave pSOS an entree. The VRTX people responeded with VRTX32.

    1. Re:Aha! Preemption Points! by nrg · · Score: 1

      No, "preemption points" is precisely not what this is. The kernel is preemptible by default, except during protected critical regions. A "preemption points" kernel is non-preemptible by default, and preemption can only happen at the preemption points.

  43. Re:Please Explain by Anonymous Coward · · Score: 1

    > But if this is done, it wouldn't be fully preemptable, would it?

    It's not really "fully" preemptible.

    No OS can be fully preemptible, as long as there exist drivers which require atomic access to hardware. Any such device will require interrupts to remain disabled (as well as preemption) while hardware access is ongoing.

  44. Re:Please Explain by Pflipp · · Score: 2

    The simple way to get an idea of the difference is this:

    - Linux does fully preemptive multitasking, which means that CPU time is shared by multiple processes, that each process gets his part, and that if some process waits (e.g. for I/O), his "part" will be used to run other processes in. So all in all, this is a fine "time-sharing system".

    - The kernel however, doesn't do this internally (yet!). If you do a kernel call, e.g. write to a device, the kernel call is the _only_ thing that runs at that moment. If it has to wait for something, it just _waits_. Only after the call has returned, Linux starts looking at the scheduling system again.

    A fully preemptive kernel means (anyway in this context), that it is also preemptive internally, so if kernel code has to wait for something, other tasks can be performed. As you might understand, a fully preemptive kernel must be _very_ sophisticated. I'm glad we're gonna get it (well, if Linus permits it, anyway ;-), and hats off for the developers!

    It's... It's...

    --
    "We can confirm that Debian does *not* ship the version with the trojan horse. Our version predates it." [CA-2002-28]
  45. So what you're saying... by Greyfox · · Score: 1

    Is that we used to love Linus, but now it's mostly just a habit?

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  46. Forget about Linus and the bus by Slashdot+Cruiser · · Score: 1

    Forget about Linus being hit by a bus. It's not going to happen. Public transportation in the Seattle area is mostly trains. As long as Linus stays away from rails, we're ok.

    What we really need to worry about is Linus being hit by the Slashdot Cruiser.

    I realize, of course, that the Cruiser does not have sufficient horsepower or vehicle weight to actually kill Mr. Torvalds. Nevertheless, the experience could leave him severely injured and traumatized.

    Imagine how you would feel if you were crossing the street and saw that green automotive embarrassment bearing down on you. It would be horrifying and you would probably be petrified. Unable to dodge the oncoming plymouth, you would be struck at knee-level by an overweighted green go-kart. The personalized plates would undoubtedly leave an "1m 1337" impression in your shin.

    Clearly, the experience would leave Linus unable to write code effectively. He would be unable to follow the development newsgroups because of involuntary twitches every time he sees "1337".

    For the sake of Linus, Linux, the Olsen Twins, and the Fee Software Revolution (tm), I think our course of action is clear: We must dump the Cruiser into the lake. It's the only way.

    --

    Got a full tank of hot grits and a penis bird in the glove box.
  47. Going preemptable shouldn't be hard in principle. by Kaz+Kylheku · · Score: 3

    The SMP support already allows multiple processors to execute much of the kernel code already, except within locks. In principle, any code that is not in a lock and runs on SMP can be made preemptible on a single processor. So this is not a hugely revolutionary step, but rather evolutionary.

    I'm glad that someone is taking the effort to actually do this.

  48. This company doesn't have a clue... by NNKK · · Score: 1
    look at what they said...

    "MontaVista would like to see this technology, or similar technology, utilized as a foundational feature of Linux 2.5,"

    2.5? 2.5 will be an UNSTABLE release, these guys obviously don't have a clue what they're talking about... 2.4 isn't even done, and now they want entirely new technology to be part of a kernel version that by its very nature will be unstable? I don't think so!

    1. Re:This company doesn't have a clue... by Old+Wolf · · Score: 1

      They don't make ranges of kernels just to be unstable and piss you off, you know. The 2.5 range will be a development range. This means that it is in testing for new enhancements, such as this pre-empting thing. Since this is a test series of kernels, they can iron out all the bugs, so in the stable releases 2.6, it will work stably.
      Understand?

    2. Re:This company doesn't have a clue... by NNKK · · Score: 1
      if people such as yourself would happen to think of a little trick known as "look through the rest of the thread before replying" this post would never have shown up

      Understand?

  49. Re:GPL != "open source", fortunately by bgat · · Score: 1

    The BSDL doesn't require changes to the licensed work to be subsequently released in source form. So, Monta Vista could legally make similar changes to FreeBSD and keep the source code all to itself.

    So what I'm talking about *is* GPL-specific, and the ignorance of the common man is *exactly* the reason why we need the FSF.

    b.g.

    --
    b.g.
  50. Kernel truly atomic on all platforms? by atomice · · Score: 1

    So - if MontaVista's kernel is fully preemptive it should be interruptible at any time. This means that there are no times when you can't serve an interrupt, or am I wrong? Therefore, doesn't this throw up problems for atomicity? What if I read the value of A into a register, then an interrupt occurs which reads the value of A, modifies some hardware settings, then changes the value of A, the interrupt returns, then I look at the value I have in the register and on that basis, I modify the hardware settings again? This is the classic problem, where atoms are required, and one standard solution is to use atomic CPU instructions which read, test and modify A in one instruction. But my question is, how are these kind of atoms implemented on platforms which don't support these kind of instructions? (Amiga, for eg., off the top of my head)

    1. Re:Kernel truly atomic on all platforms? by nrg · · Score: 2

      So - if MontaVista's kernel is fully preemptive it should be interruptible at any time. This means that there are no times when you can't serve an interrupt, or am I wrong?

      It's not interruptible when interrupts are disabled. So interrupts are disabled to protect critical regions in this type of kernel.

      "Fully preemptible" means always preemptible by default, except when it isn't. The alternative is non-preemptible by default, except at certain well-defined preemption points. There have been some kernel patches proposed that add more preemption points, but I believe that a fully preemptible kernel is cleaner, more maintainable and higher-performance, when it's done correctly. SGI's IRIX works this way, for example.

  51. Re:Is Linux really open? by kashani · · Score: 1

    You go on with your bad self. Because hey commitees are soooo much better then an informed individual. We can get a committee of people who can agree and are idiots and then start with the five year plans. THat's a great idea.
    Linus killed it because it was a fucking dumb idea. No other reason. He doesn't have to accept anything. He even freely admits that his job is to keep crap out of the kernel more so then writing code.

    --
    - Why is the ninja... so deadly?
  52. Re:GPL != "open source", fortunately by bugg · · Score: 1
    The GPL doesn't force distribution of code. So MontaVista could have kept the Linux code to themself.

    On the other hand, yes, they would be able to distribute a closed binary based on FreeBSD. So what? They suffer from increased merging cost, decreased popularity, decreased peer review, and more expensive development. So really only stupid programmers wouldn't release back in that scenario, and try to take FreeBSD "head-on". Are you afraid of stupid programmers?

    The GPL thrives on the delusion that someone who programs for a living (or their bosses, etc) is a monopolistic idiot that can't embrace open source. That's not true; release back the majority of your changes, and if you must, hold on to that 1% that gives you the definite advantage to your competitors.

    --
    -bugg
  53. You know, I get a good laugh... by pagley · · Score: 2

    ... out of seeing the handful of posts NIT-PICKING the numeric versioning system thing.

    And, since I haven't posted here for awhile, and so dislike people who nit-pick an issue simply to look intelligent, allow me to take the very same sentance and explain it to you:

    "MontaVista would like to see this technology, or similar technology, utilized as a foundational feature of Linux 2.5,"

    "... this technology, or similar technology", referring to the preemptive structure changes and coding they have been working on. Very cool, and I think everyone can follow it this far.

    "... utilized as a foundational feature", meaning they would like to see these largish to major changes made early on, either all theirs, part theirs, worked on by them, others, or a better way, whatever works out to be the Best Thing for Linux. Again, seems fairly clear to me.

    "... of Linux 2.5", meaning they would like to see it begin incorporation in Linux 2.5. This seems proper to me.

    As I see it, it was stated correctly, a new, and fundamentally large change such as this would be inculded in a DEVELOPMENT kernel. Hence, the term DEVELOPMENT.

    A large change like this would NOT get directly incorporated into a STABLE kernel series.

    You're beef seems to be more of a grammatical one than anything else. Would Montavista stating it this way have satisfied you - "MontaVista would like to see this technology, or similar technology, utilized as a foundational feature at the beginning of Linux 2.5,"? Probably not.

    Long ago, I read the explanation of the versioning system being used in Linux, and understood it. And ever since, I've gotten a chuckle out of anal-retentive grammatical nazi Slashdotters like yourself who feel the need to try and show the world that they know it too.

    Get over it.

    And now that I'm guilty of doing the exact same thing I so dislike here, I'm moving on before I end up conditioning myself to be guilty of it more often.

  54. Huh? by Slashdot+Cruiser · · Score: 1

    WTF are you talking about?

    --

    Got a full tank of hot grits and a penis bird in the glove box.
  55. Re:So, will Mp3's not skip in Linux2.5 by De · · Score: 1

    Get some decent hardware - my P2 450 doesnt have such problems

  56. Performance under load by Inoshiro · · Score: 2

    I see you've tried 2.4.. on what hardware setup? 2.4.0-test6 on my K6-III 400 w/ 128 mb of ram produces a very noticeably different behaviour under load (as compared to 2.2.16 and 2.2.17).

    For me, the difference was that make -j 27 (which help get a ludicrous load) didn't destroy interactiveness. I was able to type, etc, as if nothing else was happening on the system. This partially has to do with the atomic timeslice going from 200ms to 50ms, and partially from the general updates to 2.4. If you've not tried -test6, I suggest you do :)
    --

    --
    --
    Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
  57. RedHat(Cygnus) develops eCos RTOS by diabloii · · Score: 1

    This is a RTOS that could use a lot of help for its i386 port. That port is currently still in beta. The other ports for AEB, ARM, MIPS, etc.... are much more stable and usable. Plus, RedHat is introducing the EL/IX layer for Linux application compatibility.

    Definitely check it out if you're interested in something that is free and opensource.

    eCos RTOS Project Page

    Red Hat eCos Product Page

    --
    ---- "It is never too late to give up our prejudices." --Henry David Thoreau(1817-1862)
  58. How to install it by TWX_the_Linux_Zealot · · Score: 1

    I'm trying to install this kernel patch, and I'm having problems. I've tried

    patch -p1 (lessthan redirect) preempt-rtsched-2.4.0-test6-1.1.patch

    from the /usr/src/linux directory, and it cannot find what it's supposed to patch. I admit I'm an idiot who doesn't know how to use patch, so how does one go about sticking this thing in?

    --

    IBM had PL/1, with syntax worse than JOSS,
    And everywhere the language went, it was a total loss...
    1. Re:How to install it by mkldev · · Score: 1
      I believe there are two versions of the patch. Based on the naming convention used, the one you reference does not add the preemption changes to a stock 2.4.0-test6 tree. It adds it to a 2.4.0-test6 tree that has already been patched with the RT scheduler patch (in the same directory). If you're trying to patch the stock tree, I belive you want the one that doesn't have rtsched in its name.

      David

      --
      120 character sigs suck. Make it 250.
  59. Re:GPL != "open source", fortunately by bgat · · Score: 1

    The GPL doesn't force distribution of code. So MontaVista could have kept the Linux code to themself.

    It *does* force disclosure if they "distribute" the product, i.e. offer it for sale. Which is what Jim Ready's former company (Microtec Research, Inc., vxworks RTOS) was all about.

    So really only stupid programmers wouldn't release back in that scenario, and try to take FreeBSD "head-on".

    It happens all the time in embedded systems work, albeit I haven't yet found any FreeBSD examples specifically. I do know of several companies who based their hardware on the "freely available" (i.e. OS-compatible license) and very popular RTOS, uC/OS, and at least one RTOS vendor redistributed uC/OS as its own code!

    Yet the uC/OS authors and contributors saw not a penny for their work, and the rest of us didn't see any source code at all!

    The GPL thrives on the delusion that someone who programs for a living (or their bosses, etc) is a monopolistic idiot that can't embrace open source.

    But unfortunately, at the moment much (most?) software is being developed and released by those "monopolistic idiots" in exactly the fashion you describe. When was the last time you saw the source code for the engine controller in your car, for example?

    The GPL protects "us" from "them": by Linus' releasing of Linux as GPL, "monopolistic idiots" (we both agree they're out there) can't abscond with the Linux source code, enhanced or otherwise, whether Linus gets hit by a bus or not. For once, the sharks are on our side!

    BSDL et al can't claim that. So until the majority take a more enlightened view towards software licensing, there's the GPL.

    b.g.

    --
    b.g.
  60. Re:Kernel enhancements by mkldev · · Score: 1
    Way to go! Lets implement this on a processor that isn't even available in the marketplace.

    The article mentioned IA32 , not IA64. In other words, what most people know as the x86 family, i.e. Pentium III, Athlon, whatever. And of course, as with everything else I've seen from MontaVista, it's 100% free and Open Source. The patches to the kernel are right there on the FTP site, so you should be able to modify it to work on other platforms.

    David

    --
    120 character sigs suck. Make it 250.
  61. 2.4 is FROZEN by dale@shiraz · · Score: 1
    People say two things:
    • Can we have this extra feature in 2.4
    • Why is 2.4 taking so long to come out?
    Well 2.4 is in a feature freeze, currently in the test phase. Lets not even think of asking Linus to put feature X into it.
    All requested features/modifications need to go in the 2.5 list, for consideration and debate.
    Meanwhile vendors can go on getting their distributions ready for 2.4. They have work to do on updates for new ppp, networking, usb, video updates (DRI), XFree86 4, Gnome, KDE-2, LVM, MD, ATA-66, Firewire, I2O, I2C, ... Do you want this sooner or later?
  62. You don't have a clue... by IvyMike · · Score: 1

    You're kidding, right? Or are you really saying that we should put new, experimental, unstable features, such as the MontaVista patches, into the stable kernel series?

    1. Re:You don't have a clue... by NNKK · · Score: 1
      I'm saying we shouldn't have technology this new in a kernel that will be unstable to begin with, this sort of thing should be done with a stable kernel outside of the normal development tree so that we know exactly how it will affect the normal operation of the kernel in a STABLE enviorment.

      Once we've established how it will affect things, THEN it should be placed into the normal development tree.

    2. Re:You don't have a clue... by cant_get_a_good_nick · · Score: 1
      Well, the 2.5 kernel will be based on 2.4 once it becomes stab,e, meaning when the x.x.1 and x.x.2 releases hit. It'll be a fork, and once it forks, any stability updates to 2.4 willl be (judiciously) ported into 2.5.

      I kinda see your point, although not clear in the first post. If this thing deeply affects the kernel and makes it fundamentally unstable, then other stuff (like drivers and possibly userland stuff) will suffer, and you don't want that affecting development.

      Trick is, if it is that destabilizing, don't you want to know at the earlist possible moment? This way you have a chance to fix stuff without holding up a ship date. If they waited til all the other 2.5 stuff was done, then did this, it'd never ship.

    3. Re:You don't have a clue... by NNKK · · Score: 1

      Welcome to hell.

      I really see no reason why we couldn't fork the tree for this and still maintain quick production... think about this:
      2.4 ships, 2.5 starts, at this point they fork off a tree from 2.4 to start implimenting and testing this new patch... if all goes well it should be a very quick development, if not then which would you rather have, implimentation of this stalled along with everything else, or just this?
      If this is done quickly enough, it can be added to 2.5 and 2.5 will only be delayed days possibly a week or two at most and it'll be in once 2.6 is released, and there you have it.
      Now if all hell breaks loose when we put it into 2.4 and stress test it etc. then we'll know there's a problem and to NOT put it in 2.5 since it could delay 2.6 by god only knows how long.
      My point is, this is a GREAT addition to the linux kernel if it works, but personaly I'm not willing to risk it delaying other development, are you?

  63. MontaVista's reply by kmorgan · · Score: 5

    I'll try to answer/respond to the most significant questions and points made here. 1. 2.5 is the next "development kernel", and is clearly the right place to initiate a fundamental kernel change such as preemptability. 2.6 is the right place for commercial usage, obviously. 2. Preemptibility means the systems can and will stop a process running in kernel mode and switch to a higher priority newly executable process. For more, including specifics of what our prototype does and how we want to advance it...read our white paper! Here isn't the place to repeat those details. 3. We are not dogs, but after a few beers or missed shots on the pool table we do howl alot. 4. We actually did initial work on 2.2.14 but our primary goal is proving out this technology, providing to customers who may need it, and offering back as a technology for 2.5 (->2.6). Hence, 2.4 was and is the proper base, given that we think we can have production ready software early next year, "long after" 2.4 is cooked. We feel releasing a prototype on 2.4-test software is okay. 5. A preemptable kernel is not a rate monotonic scheduler! We also offer a scheduler that sits on top of (runs before) the standard Linux scheduler that does a good job of selecting/dispatching real-time processes very quickly and with fixed overhead. It's not rate monotonic, it's a simple priority driven scheduler. 6. I won't engage in arguing the pro's and con's of "one man's control of an OS". It is the way it is. MontaVista lives with it and is trying to work with it. We think a preemptible kernel design, leveraging the SMP locks, is a good next step for the Linux kernel and benefits all "market segments" (types of users). We want to prove it with real software, and this is our starting point. We are "releasing early, releasing often", amen. 7. "these guys proposal was regeted"...I reget to tell you that you misunderstand. What was "rejected" was a set of patches that injected preemption points, which is a fundamentally different technology than what we've implemented. We have not proposed or submitted anything as of yet, beyond making our current prototype available. 8. Fross, THANK YOU. 9. Inclusion in 2.4 is absurd, it's time for it to stabilize, finalize and start getting deployed. 10. Most of the systems that Hard Hat Linux get designed into aren't serving "multiple users". They are control oriented environments. In such environments, having a design ability to assure that high priority tasks get cycles very quickly, with assurance, and all the cycles they want until they are "done", is critical. We are trying to enable that capability. Superuser privileges usually protect real-time priorities from casual mis-use on multi-user systems. 11. RTAI and RTLinux are "sub-kernels" which provide a lower level multi-tasking environment, a small set of services (mostly around synchronization and passing data to/from higher level Linux processes), and which virtualize interrupt off/on operations in Linux. Basically, they provide a multi-threaded interrupt handling environment with better worst case interrupt off characteristics. There are limitations to such an environment. A preemptible Linux kernel attempts to improve PROCESS responsiveness in Linux proper (as opposed to attached a small underlying, separate multi-tasking environment). They are quite different. They are not in conflict, and even with excellent preemption performance, a system can still benefit from improved interrupt responsiveness via use of RTLinux. 12. MontaVista did not request/support the request for preemption point inclusion in Linux. The perspective of our real-time team is that preemption points are NOT a desirable long-term technology, and we don't support their inclusion in Linus's kernel. 13. Everything MontaVista develops on our own dime is released as GPL or LGPL software. Everything to date anyway, and we don't see that changing anytime soon. Even most of what we've been paid to develop user professional services has been GPL/LGPL licensed (with our customers approval of course), as it's turned out. We are dedicated to the values of open source. We're a Linux company for gosh sakes! 14. Minimizing throughput impact on a uniprocessor is important. There are opportunities for throughput improvement under busy workloads...very simple workloads won't improve and could degrade, the questions are how much, and is the tradeoff worth it in order to get responsiveness/consistency of high priority behavior. Exploring, proving and educating in this area is an important component of our prototype work. 15. No our prototype doesn't yet support SMP. The cost of synchronizing across processors using the SMP locks shouldn't be more than synchronizing across processors using the SMP locks...don't know where you are coming from suggesting what we are doing will be prohibitively expensive on a multiprocessor! We'll share an SMP version when we get one put together (but it's not highest priority for us, our first order target for this thing is uniprocessors, which are far more prevalent in the embedded market segments.) 16. This is available for an IA32 platform. If you think that's an obscure platform...I guess you live in a parallel universe where Motorola hardware got selected by IBM back in the early 80's for their PC, or something! We'll productize on all supported MontaVista platforms (21 different boards across 4 different architectures as of our 2.1 release 2 weeks ago...). 17. I'm not aware Ingo did fully preemptable kernel work, and if Ingo did any work on such a system, we weren't aware of it and did not base this on any such work. 18. Preemptible is not interruptable. We've separately and previously done characterization work on interrupt off times in Linux. See our real-time project area on our web pages (www.mvista.com). Interrupt off times in Linux are surprisingly good, with one exception (child process exit with many children)...and of course ignoring arbitrary drivers that can misbehave. 19. Time to go howl... Sorry to be long winded. I hope this helps to clarify a few things. -Kevin

    1. Re:MontaVista's reply by scrytch · · Score: 2
      Here's that post reformatted a bit for readability. I'm not karma whoring here, I've already hit the cap.

      ---Begin quote---

      I'll try to answer/respond to the most significant questions and points made here.

      1. 2.5 is the next "development kernel", and is clearly the right place to initiate a fundamental kernel change such as preemptability. 2.6 is the right place for commercial usage, obviously.

      2. Preemptibility means the systems can and will stop a process running in kernel mode and switch to a higher priority newly executable process. For more, including specifics of what our prototype does and how we want to advance it...read our white paper! Here isn't the place to repeat those details.

      3. We are not dogs, but after a few beers or missed shots on the pool table we do howl alot.

      4. We actually did initial work on 2.2.14 but our primary goal is proving out this technology, providing to customers who may need it, and offering back as a technology for 2.5 (->2.6). Hence, 2.4 was and is the proper base, given that we think we can have production ready software early next year, "long after" 2.4 is cooked. We feel releasing a prototype on 2.4-test software is okay.

      5. A preemptable kernel is not a rate monotonic scheduler! We also offer a scheduler that sits on top of (runs before) the standard Linux scheduler that does a good job of selecting/dispatching real-time processes very quickly and with fixed overhead. It's not rate monotonic, it's a simple priority driven scheduler.

      6. I won't engage in arguing the pro's and con's of "one man's control of an OS". It is the way it is. MontaVista lives with it and is trying to work with it. We think a preemptible kernel design, leveraging the SMP locks, is a good next step for the Linux kernel and benefits all "market segments" (types of users). We want to prove it with real software, and this is our starting point. We are "releasing early, releasing often", amen.

      7. "these guys proposal was regeted"...I reget to tell you that you misunderstand. What was "rejected" was a set of patches that injected preemption points, which is a fundamentally different technology than what we've implemented. We have not proposed or submitted anything as of yet, beyond making our current prototype available.

      8. Fross, THANK YOU.

      9. Inclusion in 2.4 is absurd, it's time for it to stabilize, finalize and start getting deployed.

      10. Most of the systems that Hard Hat Linux get designed into aren't serving "multiple users". They are control oriented environments. In such environments, having a design ability to assure that high priority tasks get cycles very quickly, with assurance, and all the cycles they want until they are "done", is critical. We are trying to enable that capability. Superuser privileges usually protect real-time priorities from casual mis-use on multi-user systems.

      11. RTAI and RTLinux are "sub-kernels" which provide a lower level multi-tasking environment, a small set of services (mostly around synchronization and passing data to/from higher level Linux processes), and which virtualize interrupt off/on operations in Linux. Basically, they provide a multi-threaded interrupt handling environment with better worst case interrupt off characteristics. There are limitations to such an environment. A preemptible Linux kernel attempts to improve PROCESS responsiveness in Linux proper (as opposed to attached a small underlying, separate multi-tasking environment). They are quite different. They are not in conflict, and even with excellent preemption performance, a system can still benefit from improved interrupt responsiveness via use of RTLinux.

      12. MontaVista did not request/support the request for preemption point inclusion in Linux. The perspective of our real-time team is that preemption points are NOT a desirable long-term technology, and we don't support their inclusion in Linus's kernel.

      13. Everything MontaVista develops on our own dime is released as GPL or LGPL software. Everything to date anyway, and we don't see that changing anytime soon. Even most of what we've been paid to develop user professional services has been GPL/LGPL licensed (with our customers approval of course), as it's turned out. We are dedicated to the values of open source. We're a Linux company for gosh sakes!

      14. Minimizing throughput impact on a uniprocessor is important. There are opportunities for throughput improvement under busy workloads...very simple workloads won't improve and could degrade, the questions are how much, and is the tradeoff worth it in order to get responsiveness/consistency of high priority behavior. Exploring, proving and educating in this area is an important component of our prototype work.

      15. No our prototype doesn't yet support SMP. The cost of synchronizing across processors using the SMP locks shouldn't be more than synchronizing across processors using the SMP locks...don't know where you are coming from suggesting what we are doing will be prohibitively expensive on a multiprocessor! We'll share an SMP version when we get one put together (but it's not highest priority for us, our first order target for this thing is uniprocessors, which are far more prevalent in the embedded market segments.)

      16. This is available for an IA32 platform. If you think that's an obscure platform...I guess you live in a parallel universe where Motorola hardware got selected by IBM back in the early 80's for their PC, or something! We'll productize on all supported MontaVista platforms (21 different boards across 4 different architectures as of our 2.1 release 2 weeks ago...).

      17. I'm not aware Ingo did fully preemptable kernel work, and if Ingo did any work on such a system, we weren't aware of it and did not base this on any such work.

      18. Preemptible is not interruptable. We've separately and previously done characterization work on interrupt off times in Linux. See our real-time project area on our web pages (www.mvista.com). Interrupt off times in Linux are surprisingly good, with one exception (child process exit with many children)...and of course ignoring arbitrary drivers that can misbehave.

      19. Time to go howl... Sorry to be long winded. I hope this helps to clarify a few things. -Kevin

      --
      I've finally had it: until slashdot gets article moderation, I am not coming back.
  64. Re:So, will Mp3's not skip in Linux2.5 by smash · · Score: 1
    ...also, turn on interrupt unmasking on your IDE drives.

    I did some testing on my old p2-350, and was able to get the system load up to ~13.5 (rc5, about 14 recursive finds in various xterms, a kernel compiling, X and netscrape running, etc..) before XMMS started to skip, as opposed to a load of 3-4 without doing it.

    its off by default in case you run on broken hardware... if you have a reasonably recent (and reasonable quality) motherboard/ide controller play with unmaskirq and the other hdparm settings.. smash

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  65. Re:GPL != "open source", fortunately by bugg · · Score: 1
    Why do I want the source for the engine controller in my car?

    I don't see relevance; most GPL and BSD-licensed work is not for embedded systems deep in an every day appliance.

    --
    -bugg
  66. Re:GPL != "open source", fortunately by bgat · · Score: 1

    Why do I want the source for the engine controller in my car?

    Because it may contain code that you wrote, taken from something you posted under a BSD (or similar) license.

    [But being the embedded hacker type, I can think of a lot more reasons, too! ;^)]

    It isn't so much the fact that someone might *take* my code that troubles me, it's that they may use it as a starting point for some kind of legitimate improvement, and then not give it *back*. They get rich, while the people who actually did the hard part, creating the code, get shafted.

    I don't see relevance; most GPL and BSD-licensed work is not for embedded systems deep in an every day appliance.

    Don't tell Lineo or Monta Vista that! :^)

    Deep embedded is *exactly* the market that they're shooting for. In fact, Lineo's marketing current marketing tagline is "Put Linux Anywhere".

    And LinuxWorks used to be Lynx, a company that produced an embedded RTOS with a POSIX API, i.e. an embedded Linux lookalike targeted for deeply embedded systems (although it predates Linux by a number of years, I think).

    The Day for embedded Linux is coming, if it isn't here already. I'm glad to see that it won't turn out like Jim Ready's previous company, where I had to pay >$10k for the priviledge of running his buggy, bloated and poorly documented RTOS, vxworks. On one product. Never again.

    b.g.

    I just noticed, we haven't mentioned Natalie Portman in this entire thread. Oops! :^)

    --
    b.g.
  67. WinAmp is not a realtime application.... by plastik55 · · Score: 1
    "Hell, my normal usage is 1) Listening to an MP3 2) Coding in Visual Studio. 3) Doing graphics in 3D Studio 4) Doing textures in Photoshop. This is without any skips from the MP3 player! "

    I've *never* had my MP3 player skip on me in Linux. However it's not the point. The point is latency. You see, anyone can simply allocate a whoppin' big buffer and get rid of skips that way. It's easy, and it's the wrong solution.

    Let's say I'm performing music live, using a sequencer and a software synth. If I hit a note on my keyboard, the software synth needs to respond to it and play that note. This needs to happen immediately, i.e. within milliseconds. A buffer does nothing for you here--you need to guarantee that the synth program geets a timeslice whenever it needs one, no matter what.

    Your mp3 player doesn't need to respond immediately to any actions, so it can prebuffer as long as it needs to. Try adjusting the equalizer. Notice how long it takes for your changes to take effect? There's your prebuffering.

    For true realtime performance--scientific and mission-critical applications, say, like targeting a brain tumor with a linear accelerator--you need hard realtime (i.e. microsecond latencies). This is provided by QNX and the RTLinux kernel.

    For 'soft' realtime like my synthesizer, you need millisecond latencies. This is provided by BeOS, Ingo Molnar's Linux patches, and now the MonteVista patches. Not by Windows or WindowsNT.

    For mp3 playing, you just need buffering, and you can have shit latencies. This can be implemented under any OS.

    --

    I have a positive modifier on Troll. When I mod someone Troll their karma should go UP!

    1. Re:WinAmp is not a realtime application.... by be-fan · · Score: 2

      I've never had an MP3 player skip on me in NT, what's your point? The person I was responding too said nothing about audio latencies. He said that he couldn't listen to an MP3 and surf the internet at the same time with NT. That statement is patently false. True, WindowsNT won't give you millisecond latencies (and neither will regular Linux), but hell, it wasn't designed to. It was designed to be a fast (as in interactive speed) workstation OS, and in that segment, it more or less suceeds.

      As for Mp3 playing being implemented under any OS, that's also false. It's not if you can play an MP3 without skipping, but how many you can play, and what load the system will take before it starts skipping. Linux starts skipping at a lot lower load than does NT, which handles a lower load than BeOS. That's just the truth of it. You can totally max you the processors in BeOS and still have the system stay responsive, while doing something proc intensive (like gunzipping the kernel archives, which can fit into main memory) will cause the system to become unresponsive.

      --
      A deep unwavering belief is a sure sign you're missing something...
    2. Re:WinAmp is not a realtime application.... by Ambassador+Kosh · · Score: 1

      I am using linux 2.4.0test7 + reiserfs + ingo's low latency patch + promise ATA-100 patch support. On a K6-2 500 with 128 megs of ram I can unzip at least 2 kernels at a time without causing xmms to skip and it has about 128kb buffer. I can get the load up to at least 20 on my system with no audio skipping. I did a make -j on the kernel and the audio never broke up. Of course due to the vm bug in 2.4test7 when it ran out of vm it pretty much locked up but that is what I get for using a devel kernel ;)

      Ingo's low latency patches make a huge difference. However they will not be incorporated into the kernel until cleaned up more. That is something both Ingo and Linus agreed on.

      --
      Computer modeling for biotech drug manufacturing is HARD! :)
    3. Re:WinAmp is not a realtime application.... by be-fan · · Score: 2

      Yea, you can also say that BeOS network performance kicks ass or that it's OpenGL is faster than Windows OpenGL. However, given that those two products are in Beta, they mean nothing until they're actually implemented in the mainstream. Same thing with the eostoric Linux patches. While Ingo's patch may be fine and good, it is really marginal until it is implemented in a production kernel.

      --
      A deep unwavering belief is a sure sign you're missing something...
  68. Behind MS again by Old+Wolf · · Score: 1

    Windows has had pre-emptable kernel and advanced thread scheduling since Windows NT 4.0, a time of several years. Good to see that the Linux guys are finally getting around to it.
    It's interesting to see that they are going down the same path as MS - improving GUI performance by putting specific hooks into the kernel. Everyone knows that this is why Windows crashes.

    Personally I'd like to see the Linux kernel stay as a kernel and not have any GUI, video or multimedia stuff "integrated". Hasn't it always been a strength of Linux that you only install what you need, and compile a kernel with only the bits you want? A lot of people don't use X-windows, and like Linux's fast performance under those conditions.

    This company seems to be trying to create an open-source version of MS Windows. Is that what we want?

  69. real time linux has been around for a while by pgarrone · · Score: 1
    I did a project based on www.rtlinux.com software a year ago. On my dual SMP 450Mhz intel system, I get maximum 30 microseconds latency, as long as I dont use my modem.

    All device drivers have to be re-compiled though.

    Similar software is available for NT. However it is difficult to recompile device drivers for it. If a device driver disables interrupts, then the real-time concept gets preempted.

  70. re: Media OS and RTOS - waiting for 2.4 by t482 · · Score: 1

    I am desperately awaiting the 2.4 kernel. Three companies I work with are all waiting for the 2.4 kernel. Basically the number of processes and filehandles make the OS unscalable for our application (Lotus Domino). Currently out of the box it only will support about 150 concurrent users after tweaking.

  71. Lame maybe to those who don't think. by Mr+Z · · Score: 1
    I mean, do you know anyone who is using version 1.0 of the GIMP?

    Hmm... Lessee:

    • (im14u2c) gnarf:~$ gimp --version
      GIMP version 1.0.4

    Well, it's not 1.0.0, but it is 1.0.x. Your point? I'm not ready to have 1.1.x eat my work just yet.

    I rather like our even-odd version scheme, since it is actually comprehendable, and uses the digits to reasonable effect. Compare to much of the commercial software world, which only increments the leading digit, and includes the ".0" at the end just to make it sound official. (Or, once they get bored of that, they just start naming the software after the year that they thought it would ship in.) How can you tell an alpha from a beta in that scheme?

    --Joe
    --
  72. Typical Moderator Stupidity by Dwonis · · Score: 1

    Did any moderator notice the ";-)" at the end of my post? Hello?
    --------
    "I already have all the latest software."

  73. ack, ack, ack! I meant 2.2 and 2.0 by hawk · · Score: 2

    I haven't tried 2.4, that should have said 2.0. I guess it's time to give it a try and see what I get . . .

  74. Re: No toy - But is the ship date in real time? by billstewart · · Score: 2
    "will definately not be a toy when it's out" somewhat correlates with "what's the REAL shipping date for 1.0. not 0.9, not 0.9" :-)

    I wish them luck - the more realtime capabilities are available in Linux, the more applications can use it instead of either specialized embedded system OS's or close-enough Windows products.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  75. Timesharing with "notnice" command by billstewart · · Score: 1

    It's still timesharing, you've just given root the ability to do a "notnice" as well as nicing things :-) More precisely, hard realtime schedulers let you guarantee response times to applications that need it, typically on the few-microseconds or few-milliseconds scale, and the "every process is equal" gets replaced with "some processes are better than others, but every process of the same social class is equal." Yes, this means the low-class tasks may starve; if you don't like that, don't schedule too many high-priority tasks.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks