RTLinux Boasts Single-Digit uSec Responsiveness 362
An anonymous reader writes "A Linux implementation delivering single-digit microsecond responsiveness on 64-bit dual-core AMD Opteron processors is being demonstrated at the Embedded Systems Conference in Boston this week. From the article: "According to FSMLabs, an AMD Opteron 265 dual-core system running RTLinux can deliver guaranteed interrupt latencies of no more than five microseconds, with scheduling jitter of no more than eight microseconds, even with Linux under a heavy load." Heck, with numbers like that it seems like Linux could run circles around XP Pro for audio/video apps such as streaming, recording, and playback!"
BeOS (Score:3, Interesting)
Re:BeOS (Score:4, Interesting)
And yes, I'm a huge BeOS fan :)
For the love of Christ people, it's a RTOS (Score:5, Informative)
RTLinux is a *Real Time Operating System*, a tiny kernel that runs the Linux kernel. It has a rather sexy interfact that allows you to write the non-RT code that interacts with it in the regular, Linux way. You also don't need to hassle with Wind River salesmen to use it. This makes it good.
There seems to be a significant misperception here as to what an RTOS is, and the extremely misleading article summary makes it worse.
An RTOS is an extremely specific tool designed to allow someone to write code with very harsh restrictions on it with very low latency. This is almost always used for control applications (telling servos when to fire accurately). You can't "run Quake in RTLinux" and just get more accurate times -- code running as real-time in RTLinux can do very little besides memory manipulation, basic computation, and some extremely limited I/O. RTOSes are powerful tools for solving a very limited set of problems which very few people on Slashdot have.
RTLinux lets you write very simple, limited code that runs in a real-time mode, and run it on the same machine as regular Linux applications. And communicate with them. That's it. Doesn't do anything to improve the regular ol' Linux applications.
RTOSes give very low latency to the code they run -- something happens, code to handle it gets fired off very quickly. Microsecond latency (*not* millisecond) is completely overkill for the kind of general-purpose video or whatever work that people here are thinking of, unless you're trying to build some sort of specialized embedded system that does something to a real-time feed -- and your hardware's going to be very specially designed for this.
There's a good reason that we don't use RTOSes in day-to-day work. They have bad throughput, and you can't *do* very much with them in real-time. They're good if you specifically have a latency constraint from the time one sensor triggers to the time I/O goes out to another device. They aren't going to avoid audio dropouts on your GNOME desktop. Real-time is a *bad thing* from most people's standpoint -- oh, and they're really easy to accidentally hang.
If you want something to get excited about for general purpose use, look at the preempt patches for 2.6. 2.6 Linux has better latency than Windows XP (2.4 had worse). This is not RTLinux, this is regular-ol-Linux-which-can-run-Quake. My understanding is that ALSA and JACK represent improvements in the general-purpose latency area.
Unless you are designing application logic for robotic control systems, or are interfacing with PLCs, RTLinux really doesn't benefit you (okay, I'm sure there's someone out there that has a different application, but Joe Hacker with his Gentoo box doesn't benefit directly from this).
Every time realtime systems come up on Slashdot, misperceptions of 'em seem to get worse.
If you just want better latency (Score:4, Informative)
Comment removed (Score:4, Funny)
Re:Er? (Score:3, Interesting)
With tools shipping to do this right now, this may actually make a nice impact in the feasibility of routers/fws/filters/LBs/etc... processing higher-level protocols at nearer wire speed.
Nice!
Re:Er? (Score:5, Insightful)
When you need a real time OS with ridiculously low latencies is when you have something mission critical. For example, a nuclear reaction being controlled. Say, interrupt 666 triggers when something goes horribly wrong, and if you enable a safety system within 10ms, nothing bad happens. It would be good to have a system that guarantees response in less than that time. That's the purpose of a real time OS like RTLinux. This is not appropriate, necessary, or indeed useful for desktop systems or workstations of any sort, or even servers.
Everyone is convinced (Score:5, Insightful)
Often, nothing could be further from the truth.
I wonder why this seems to escape Slashdot article authors.
Wait... nevermind
Re:Everyone is convinced (Score:5, Informative)
Often, nothing could be further from the truth.
What's missed here is a Real Time OS is being compared to Windows XP. Windows anything is not a real time OS. It keeps getting pushed into real time use, simply because it is there, but it is not the best tool for the job. Having an OS respond in real time to interupts is like having a mouse that doesn't freeze for several seconds at a time on a busy system. (if you run Windows, you know what I'm talking about.) Using Windows in a real time environment such as video encoding, or such almost always produces the ocasional jump or glitch because Windows is not a real time OS. Interupts get ignored during such things as a disk access.
WTF mods? (Score:3, Informative)
Re:Er? (Score:5, Informative)
Probably mostly true, but not entirely. Consider the case when you're using a computer in a recording studio to record a bunch of musicians. In the old days, they used multitrack tape machines which could be configured so that each track could be individually set to record or to play back. Might then record a drum kit on 5 out of 16 tracks, and then come back and have someone else (the bass player, then instrumentalists, then singers) come and lay down tracks on top of that.
These days, tape is effectively dead, and people do this all with computers. And not, generally, with specialized kickass embedded computers, but with Windows machines or Macs.
So, what is the relevance of all this to latency? Well, when you are doing multitrack recording on a computer, you are doing something fairly unique: you are recording a track, but at the same time you are playing back the tracks that have already been recorded and the signal you are getting from the instrument or vocalist that you're recording right now. So, the (let's say) guitar player you're recording hears the drum and bass tracks that have been recorded as well as his own guitar, and all of this is coming through the computer.
Now, one little quirk about musicians (and I'm sure you'll understand once you think about it) is that they really hate hearing themselves in their headphones if what they're hearing is coming in 100 ms later than when they're making the sound. This tends to throw them off, because rhythm is an important part of music.
As a result, guys with workstations that are used for recording are to an extent after the lowest latency they can get their hands on. The only way to achieve this is with a minimum amount of buffering of the audio data and an OS that can handle servicing interrupts for the device driver quickly AND scheduling the audio software to run in time. Well, either that or a minimum amount of buffering and ridiculously over-specced computer so that the CPU is just so fast that it doesn't matter as much if the operating system sucks.
So, a system like this could be really great for a recording studio. That is, if Linux had pro-quality recording software and supported device drivers from pro-grade A/D and D/A converter manufacturers. (I'm not talking about your average Soundblaster Live here -- I'm talking about things that can around 16 channels of 24-bit, 192 kHz, both in and out, simultaneously. Hardware like that is fairly uncommon, and professional recording guys are not going to use a third-party driver -- they want something with support from the manufacturer of the hardware, because if the system dies in the middle of a session, they may have lost the chance to capture a performance that can never be reproduced.
My point (other than that Linux has a long way to go on the application software side of things for pro audio recording) is that latency can be a hugely important thing for audio -- if it's audio that involves live musicians or an audience in any way.
Re:Er? (Score:2)
Re:Er? (Score:5, Interesting)
Re:Er? (Score:3, Informative)
Re:Er? (Score:3, Informative)
Local songwriter wrote an album of songs, bought a Walmart PC for $300 powered by a Celery 1800 processor. He bootlegged a copy of
Re:Er? (Score:4, Insightful)
Just wanted to comment that the requirement for real-timeness is usually a lot less spectacular then the good ole nuke example. It's usually more something like "interrupt 12 triggers when 14 out of 20 network receive buffers are full, and if you don't respond within 10 microseconds by freeing some of those up, the other 6 buffers are potentially going to be full and the network controller has no place to put incoming data, so it will drop anything coming in after that point".
Re:Er? (Score:2, Insightful)
Re:Er? (Score:3, Interesting)
If it doesn't exist already, it wouldn't be hard to write a streaming module for mplayer. Whether that be streamed to pipe, file or socket. It can already read most codecs and if you have a license for the WMP Win32 DLLs, it'll handle that too.
There are a lot of options for Linux.
Re:Er? (Score:2)
mplayerplug-in
Re:Er? (Score:4, Interesting)
http://en.wikipedia.org/wiki/Codec [wikipedia.org], http://en.wikipedia.org/wiki/Codex [wikipedia.org].
I can't spell either, but I figured that straightening out the meanings might be interesting to some people.
Re:Er? (Score:2)
To assume that all people know as little as you do it's a big fallacy.
Re:Er? (Score:5, Informative)
Many of these tools are easily commercial quality and/or created by commercial companies for use on linux - and many of them are 'linux-only' which blows the 'not for linux' argument out of the water.
ignorance is bliss
Re:Er? (Score:2)
a list of major motion picture studios and the movies that have been produced on linux.
but NOO, there are no tools for video on linux
Well I suppose it should be clarified (Score:5, Insightful)
Now on the Windows side, you can get software that plays in the same league. It's questionable if it's as good as Final Cut, but it's in the same Ballpark. Sony Vegas would be one, the Adobe Video Suite would be another. Basically, if you are an individual or small orginization looking at doing smaller budget work, there are reasonably priced solutions to meet your needs. They are professional, powerful, and easy to use (I particularly like Vegas). They are also flexable in that you can do DV work, streaming media, HD (consumer and pro) and so on. You can fully produce a web demo in RealMedia in the same program you make a show for broadcast.
Now look at those Linux utilities listed. Some of them are just plain wrong (Fusion for example lists only Windows 2000 and XP as supported OSes, not Linux). Most of the ones that are real are in the "if you have to ask it's too expensive category" as in they don't even list prices on the web, it's a "contact us for a quote" situation, in fact I couldn't find prices for any commercial editor. One of the few programs I actually could find a price on was Shake (which is Apple and thus also works on OS-X) and it's $3000 and it's JUST a compositor. Vegas and Final Cut and the like do compositing as well, admittedly not near to the level of Shake, but they do it well enough for most low level work.
Now as for the free software, well if there's good stuff out there, I've never seen it. The AV editing situation on Linux is abysmal last time I tried. Maybe I was just unlucky, maybe I've never been pointed to the right products, but even when I got stuff working, it was a distant second. I tried the Planet CCRMA Fedora image, which has everything you need all installed (it's designed to give you an AV workstation) and all configured, and I found that Vegas installed on vanilla Windows was much better.
So it seems that you can use Linux, when you go really high end, but then the OS isn't so much of a big deal. You are likely buying enterprise Linux (most of the stuff only provides support under things like RHEL) and thus paying for licensing anyhow, and the software cost is enough to dwarf the OS cost. Many times it's even turnkey solutions (meaning they provide the entire hardware/software package).
Great, but what about the rest of us? What if you work for a school and want to do online education videos? What if you are a band that wants to make low-budget music videos? What if you are a film student that wants to make indy digital videos?
It seems that Linux would be the way you'd want to go since the whole free thing, but it seems the tools available for it are the very least suited. They just don't match up to the commercial tools for Mac and Windows, and the commercial tools are things you might actually use later. If you go on to work broadcast TV, it's a good chance you may run into a Final Cut workstation. Even some Hollywood movies are being done in Final Cut these days. Not likely you are going to find a Cuisene station, to them it's worth the grand or two in software and OS licenses to have something that easier to use and more powerful. Please also note that it's the ONLY free video editor listed on the site you linked to.
So I guess when I have a choice between Vegas, which does multi-track audio and video editing, effects, titles, compositing (somewhat simple but not bad) motion tracking, audio effects, streaming input output, DV input/output, MPEG input/output, and so on for like $400-500 all in one easy to use package, or Cuisene which works only with DV and is hard to use, Ardour for sound which is a pain and lacks effects, probably something like POVray to render 3d effects since nothing built in and so on for free, I'll take Vegas. The $500 plus a $100 for Windows is worth it for the fact that I can just easily get shit done.
Heard of VLC player (Score:2)
I am sure we will get other apps soon. Its not like the Movie industry is switching to Windows for their movie production.
Re:Er? (Score:2)
Re:Er? (Score:2)
Hear, hear... And what's more, people who make those kinds of trollish complaints often mean that they can't pirate them via Kazaa/Gnutella/BitTorrent therefore they don't exist...
News flash: (Score:3, Interesting)
I love linux, but Windows handles A/V like a champ (with the exception of, perhaps, editing the two, bug I have no experience in this area...) And I'm not going to go out and buy a dual co
Re:News flash: (Score:2)
I do that every day, works great for me.
NOT primarily for audio/video stuff (Score:5, Insightful)
But usecond resolution would be usefull for higher-frequency data processing and control.
Re:NOT primarily for audio/video stuff (Score:3, Informative)
Re:NOT primarily for audio/video stuff (Score:3, Informative)
As a practical matter when I set Sonar to it's lowest latency mode, with the drivers at a 64 sample buffer at 96,000Hz it reports the effective latency as 1ms in W
Re:Er? (Score:2)
You say that like it's a hard mark to hit.
Yes, but Windows XP will run circles around Linux in those other uses of audio/video, not including streaming, recording, and playback.
beos (Score:5, Informative)
Commodity hardware (Score:2, Informative)
A couple of things about this (Score:4, Insightful)
Second, what are the limitations? How does RTLinux handle priority inversion? How does it stack up to something like OSE-RTOS or GreenHills? Just how preemptible are those ISRs?
And finally, what is the performance penalty? Just because you are servicing interrupts at lightning quick speed, it doesn't mean you get a boost in speed. It may mean you have to lower the priority of many system services.
I am skeptical of RTLinux's claims, though the numbers seem to be in order. Maybe it is just their actions in the past (FSMLabs) that has colored my opinion of them.
Re:A couple of things about this (Score:3, Informative)
RTLinux is generally in the same class. You mentioned that they're using a desktop beast, but those are actually mainf
Re:A couple of things about this (Score:2)
Re:A couple of things about this (Score:3, Informative)
The AMD Opteron 265 is a dual-core processor. There was just one in the the test machine, it's not a huge mainframe/server system.
Re:A couple of things about this (Score:3, Interesting)
Scheduler latency may not normally be a big problem, but user interface latency is a problem and UI should be a (soft) realtime system.
Re:A couple of things about this (Score:2)
Re:A couple of things about this (Score:5, Informative)
Indeed. One year ago, I participated in the installation of a High Energy Physics (HEP) experiment. We were using PowerPC 604 CPUs running VxWorks (the commercial "industry standard" RTOS).
On that configuration, I was getting interrupt latencies always under 12 us (3 us average), and that was on a 300 Mhz CPU ! 5 us is hardly impressive on the kind of systems they are using.
However, what would be interesting would be to know how the system behaves under load. RTLinux has been known in the past to crumble when heavily loaded by low priority tasks. It might have gone better recently.
Note that RTLinux is not the only Real-time Linux implementation. There's also RTAI released under LGPL.
Multimedia (Score:3, Insightful)
Re:Multimedia (Score:2)
Re:Multimedia (Score:5, Funny)
That's unfortunate - I cooked mine a while back.
a/v doesn't need hard real-time (Score:4, Insightful)
>could run circles around XP Pro for audio/video
>apps such as streaming, recording, and playback!"
To me the numbers announced are on par with hard real-time constraints, for which there are a lot more interesting and critical applications than a/v streaming, recording and playback!
How about anything the pure real-time kernels can do, such as running a car, plane, spaceship, etc ?
Re:a/v doesn't need hard real-time (Score:3, Informative)
One would hope so, from a hard real-time OS [fsmlabs.com].
In any case, hard real-time does not mean "really low latency." It means "failure to meet latency guarantee is fatal." You can't necessarily make a soft real-time system hard real-time just by speeding it up, particularly if there are unbounded waits involved.
A better and more thorough explanation. [wikipedia.org]
What about Windows, anyway? (Score:2)
Depends on the app in question (Score:5, Insightful)
This decreases latency (response time to some stimulus, in the most general definition) but does not increase the total throughput.
For embedded applications such as perhaps a data acquisition system that might want to sample one external circuit's output when another circuit sends a line high, this is perfect because the system can react extremely quickly and thus increase the accuracy of the data.
However, it is conceivable that because of processor reservation, you will lose some of the power available to you. Thus, you cannot say for sure that it can run circles around XP based on simply this feature...especially for a feature like encoding a video which doesn't depend much on interrupts.
There might be other reasons for why Linux is a better platform for streaming, playing, recording, or encoding video. But I doubt this is it. Real-time OS's are aimed at embedded applications, usually systems that combine both external hardware and software...
Re:Depends on the app in question (Score:2, Informative)
Two things. First, low latency at the expense of a little throughput is actually quite important for pro audio recording, and especially for applications like software synthesizers; it really sucks when there's a half-second delay between twiddling a k
API is limited, too (Score:3, Informative)
RTLinux, last I checked, was a real time OS completely unlike Linux that was able to run a Linux system as a subtask, much the same as Xen would. Linux tasks would have the same scheduling latency they would normally have, but programs running on RTLinux would have higher scheduling precision. However, you give up a lot in order to achieve low latency - the system doesn't have many of the features most programs would expect to be present, so don't expect, say, Open Office or Firefox to benefit from runnin
Re:Depends on the app in question (Score:3, Interesting)
Well normally for desktop, and espically for AV work, you want a boost on that. You want the video app to get time when it needs it, even if
Multimedia? o_O (Score:5, Insightful)
Am I the only one who thinks ScuttleMonkey's comment on this story is a bit...out of place? Why would you need one-digit microsecond scheduling jitter for multimedia applications?
For 'real' real-time applications, this is gold though, especially now that many more people realize Linux' potential in this area - heck, even the good folks over at Windriver have realized that now, and they used to laugh at us Linux folks.
Does anyone replying here actually DO MM? (Score:2)
So does mixing audio. Because high or unpredicatble interrrupt latency leads directly to longer buffer times needed to overcome jitter, which is a pain in the ass when you are laying down tracks. Every new track based on the previous tracks gets just a little more skewed, which you have to stop and cor
I do (Score:5, Interesting)
For audio recording, the software takes care of this. The latencies are known to the software (if it's worth a shit) quite precisely. I tool aorund with MIDI and frequently I'll use a combination of hardware and software synths. The software ones are rendered directly to a wav file, the hardware one is recorded digitally via S/PDIF. Now normally I run my setup with pretty conservative buffering, there's about 50ms of input latency, which is an extremely noticable amount of latency. Yet, when all is saind and done and the tracks are loaded up in multi-track, you hear no latency. Why? Well the software knows about the input latency and corrects for it.
The importace of low latency comes in to play when you are doing sound on sound, musicians monitoring themselves via the software. Then it needs to be low, or they'll get screwed up. No problem, a good audio setup can get 5ms or less of latency. If you really wnt low latency, again screw the computer. Monitor via your mixer, just have the computer record.
Also I'm not so sure a RTOS is what you want. Remember RTOS is all about gaurenteeing time slices to all devices. It basically says you will get a time slice of at least x ms a minimum of every y ms. Ok, great, but what if your critical device needs more time? What if your sound input needs 2x ms to service it or needs it every y/2 ms? A non-realtime system can put off other stuff to do that, a RTOS can't since the whole design is reliable scheduling.
Apples to apples? (Score:5, Insightful)
Umm.. why compare a REAL TIME operating system to Windows?
Re:Apples to apples? (Score:3, Funny)
Real time is not only about how fast (Score:2)
RTLinux is Unfair by Design (Score:3, Informative)
Anything else think... (Score:5, Interesting)
Re:Anything else think... (Score:5, Interesting)
Yes. I think for anyone that has done embedded systems for a while that's laughable.
Before I start on my rant I will say that (a) the last time I've looked into Linux as a potential embedded OS has been a while (1-2 years) and (b) a fair amount of elitism can't be denied when it comes to talking about RTOSs.
Having said that, I never understood why people are so hot on making Linux an embedded RTOS. The kernel is NOT designed to be an RTOS. The distributions/tools are not designed for embedded.
Last time I looked at RTLinux, it would have been more accurate to call it a very small RTOS kernel that ran Linux as a sub-process. You needed to write/port your own drivers for devices that needed real-time response. The Linux kernel itself was not real-time.
The last version of the Linux kernel itself that I looked at was not designed to be re-entrant/pre-empted in a way that's required for a true RTOS. However, the multi-processor "#ifdefs" seemed to make it possible to create a kernel which locked at a much "lower" level. I think Robert Love's patches took advantage of that and from what I understand those are now incorporated into the main source tree (but I'm by no means a regular lkml reader), which IMHO was a more promising path to take. Although I still don't think it's making Linux a viable RTOS...
Re:Anything else think... (Score:5, Informative)
Not for your desktop (Score:5, Informative)
But there's a catch: at development, you control all aspects (hardware and software) of that system. If just one component fails real-time requirements, you card castle crumbles.
In a desktop system, you can't control all aspects. That video card you just bought just added a little latency to your system, and it's not realtime. What is that program?
Never heard of it, but it fails RT requirement.
So, this is cool... but in the embedded systems field. Don't start comparing it to Windows XP and thinking you'll get it on a desktop Linux.
Software or hardware? (Score:5, Insightful)
To those who compare this to XP - you've completely missed the mark. XP is not, will never be, and has never been claimed to be realtime. There really is no comparable offering from Microsoft at the moment, with Windows CE coming closest in terms of realtime capability. I doubt that 5 us is within reach on ANY hardware with WinCE, though.
Re:Software or hardware? (Score:2)
Perhaps, but from a manufacturer whose CPUs have traditionally had slow context switches. That goes for any x86 CPU, by the way.
Good points (Score:3, Interesting)
Of course, all of these would be a lot MORE real-time if someone would update that damned PPS patch, so we had a good nanosecond clock to work with. When you get to single-digits, small fluctuations (which can't be in units smaller than 1) will be relatively large to the blocks you're working with (in this case, units of
Re:Software or hardware? (Score:2)
"you can easily add real-time capabilities and optimize Windows XP embedded to meet your real-time needs"
http://msdn.microsoft.com/embedded/getstart/prodov erview/features/xp/realtime/default.aspx [microsoft.com]
Although it seems MS prefers to sell WinCE for those with RT requirements:
"a number of significant changes made to the kernel of Windows CE 3.0 have greatly enhanced real-time performance to withstand the most dem
Old news for morons, opinion that doesn't matter (Score:5, Insightful)
but.... (Score:3, Insightful)
>could run circles around XP Pro for audio/video
>apps such as streaming, recording, and playback!"
Yeah, but how feasible is it to run RTLinux just to watch DVDs?
umm... (Score:2, Funny)
Re:umm... (Score:2)
5usec is to slow (Score:5, Funny)
QNX (Score:2, Interesting)
Re:QNX (Score:4, Interesting)
morons (Score:3, Insightful)
i really hate when people confuse network latency with CPU latency or driver latency or poor software running on the application layer.
Strange: I can't find the source (Score:4, Interesting)
I've emailed them asking them what they've done to satisfy section 3 of the GPL version 2. I await their reply with interest.
Re:Strange: I can't find the source (Score:2)
From this, I gather that RTLinuxPro is an operating system that runs either beside or under neither an embedded Linux kernel.
They do offer RTLinuxFree, which is available with the source. T
Complied with the GPL maybe (Score:2)
Re:Complied with the GPL maybe (Score:2)
It will be interesting to see what happens if a dispute goes to court. Non-enforcement of trademarks errodes the basis for the claim, which is why it is "tissue" and not "Kleenex ®" and why they are "photocopies" and not "Xeroxes ®".
Of course, FSMLabs may (already have) pony up the money for a tr
RTLinux patented (Score:2, Informative)
http://www.fsmlabs.com/openpatentlicense.html [fsmlabs.com]
http://www.aero.polimi.it/~rtai/documentation/art
Finally! maybe? Who wants to write a driver? HLEP! (Score:3)
We boot into 3.11 because the operational code was developed using Borland C++, but need to exit 3.11 into DOS for the "RT" interrupt capability of the driver for a A/D data acquisition board. You can imagine the hassles that this has given us. It has become a problem just to upload data to our servers.
Our main problem in upgrading the system is that the board hasn't been supported for years, a driver for anything past DOS was never developed, which was proprietary. AFAIK, the company doesn't even exist, and so its unlikey that we could even find someone who might have the code for us to inspect.
IANACoder of much of anything extensive beyond MatLab scripts, and so the idea of myself (or anyone else currently in the lab) wrtiting a new driver for the A/D board. Furthermore, I wouldn't even know where to start to point someone in that direction.
So, I've a muti-part question here, and any input would be appreciated.
1) Would this "rt" linux be up to the task, assuming that drivers are available. (I'd guess that it would, but that's a guess.)
2) How hard would it be, in general, to write a linux driver for this vague hardware?
The easiest solution to our problem might be a complete revamp of the experimental system, but this would cost us well beyond what our current research funding is. Note that wikipedia link, we're one of the few groups worldwide doing NQR research. Such little interest in the field means little funding available, so we'd prefer to be able to reuse as much of the current system as possible.
Any thoughts, ideas, recommendations? Thanks!
Re:Finally! maybe? Who wants to write a driver? HL (Score:3, Insightful)
b) Get the make/model info for the card and see if there isn't already a driver for it. If there isn't, it may be possible to get a driver written, either by finding documentation on the card, or reverse engineering the DOS drivers. Any more of an answer is kind of moot because there isn't enough information in your post.
Could you use a differe
It is for systems control, not video response (Score:4, Insightful)
Stupid & Pathetic (Score:5, Insightful)
Heck, with brain like that it seems you could run circles around a tree without realizing you're not getting anywhere.
Just look at his piece-of-shit submission - the only interesting part is one that was copied from TFA and the rest is a "I'm a moron" type of comment that tells everyone how stupid and clueless the submitter (and the editor) is.
If had any brains and if he bothered to spend just 10 minutes to make a quality submission, he'd have read an article or two related to RT OS and he would:
a) compare RTLinux to published latency figures of some other (open or proprietary) soft- or hard-RT OS
b) would not make that idiotic Windows XP comment since it is completely irrelevant
c) would make a link to best of those reference articles that he reviewed prior to submitting the story
Being such, the article only does a good job in making tons of likely-minded folks gather at
The editor should have edited out the stupid Windows XP comment or replace it with something meaningful. Not having done that, he hasn't done his job and I can only pass to him same compliments that I had for the submitter.
Everyone, learn how to skip stupid submissions, it's a great way to save time not stupefy yourself.
The problem is that on certain days you can skip pretty much everything.
I Can't Believe It Hasn't Been Said... (Score:3)
RT pedants missing the point (Score:5, Insightful)
The RT experts say "multimedia isn't real-time." Multimedia is absolutely real-time. If you miss a deadline for supplying the sound card with an output buffer, you get clicks and dropouts. If you miss a deadline for pulling input buffers, you lose recorded data. No, it won't launch a nuclear missile, but it is clearly a real-time operation.
The RT experts say "but multimedia doesn't need scheduling latencies that low." It's true that single digit usec latencies are beyond what most multimedia systems require, but single-digit msec responses would be extremely welcome. In fact, if you've ever followed JACK (JACK Audio Connection Kit) development, you'll discover a community of people who invest significant effort tuning their kernels and environment exactly so they can get these kinds of latencies. If you're dragging sliders on a mixer while playing back a multi-track recording, you care very much about latency. If you're using your computer as a real-time effects processor, you care very much about latency.
This is why the XP comment, while somewhat inflammatory, has some truth to it: the lower-latency your operating system, the more useful it is for these kinds of tasks. Who cares if it calls itself a "real-time" operating system or not -- what I care about it what's on my desk!
The RT experts say "no fair comparing RT Linux with Windows XP, a non-realtime system." I'm not sure why we take it as a given that this dichotomy must continue to exist. Why do we accept that general purpose operating systems can sit on an interrupt for an unbounded amount of time? If a high-priority interrupt comes in, I want it right now!
Computers are really fast these days, but latencies do not decrease in proportion to CPU speed. What good is my 20GHz Pentium VII if arbitrary drivers still grab locks for tens or hundreds of milliseconds?
Rehashing the same old lines isn't insightful, it's backward-looking. Yes, I know that "real-time is about guaranteed deadlines." But current CPUs are so fast they could probably render a mandelbrot set before they give me the CPU and I wouldn't notice. But as long as they're holding these locks, I'll never see the benefit.
QNX - 4us on a Pentium 233 (Score:5, Informative)
This isn't that impressive for RTLinux, which is really a scheme for loading applications as loadable kernel modules running without memory protection. RTLinux is an obsolete approach; the more recent Linux variants from Lynuxworks and Montevista have a much cleaner approach, based on the low-latency fixes in the 2.6 kernel.
Linux Rocks! (Score:2, Interesting)
Re:Apps (Score:3, Interesting)
The problem is more that if it isn't Cubase, many people don't recognize it as a midi recorder/editor/sequencer. There are alternatives, that may not be as extended as Cubase is, but are quite suitable for most projects. The first that comes to mind is ROsegarden.
With regards to multitrack recording/editing, take a look at Audacity, it seems to do really well
Ehem (Score:3, Interesting)
http://linux.slashdot.org/article.pl?sid=05/07/27/ 1551250&tid=126&tid=106 [slashdot.org]
Re:One thing I've noticed; (Score:2)
Re:10,000,000 clock cycles? (Score:2, Interesting)
What 10 million?
5 usec (that's micro-seconds[1], not milli-seconds) is 1/20,000th of a second, so if you take a 2 GHz CPU it's more like 2,000,000,000 clock cycles * sec^-1 divided by 20,000 sec^-1=100,000 clock cycles...
[1] which should have a mu instead of an u before the second, but SlashDot doesn't seem want to display µ...
Re:10,000,000 clock cycles? (Score:2, Informative)
Re:10,000,000 clock cycles? (Score:2)
Re:10,000,000 clock cycles? (Score:4, Informative)
Re:10,000,000 clock cycles? (Score:2)
Still, of course, a multi-threaded system won't be able to do real time for every single sample in an audio stream. Video is far easier, you only 30 FPS or so, so all you need is to do the page switch with some accuracy.
Re:10,000,000 clock cycles? (Score:2, Interesting)
In fact it may even increase the interrupt latency. The fact that a single CPU system could process a network interrupt faster than a dual CPU system was one of the reasons the Horseshoe [dcsc.sdu.dk] cluster was build using single CPU systems.
Re:Linux Rocks! (Score:2, Funny)
Re:Already Speedy (Score:2)
Icecast on Debian Linux already has great performance for streaming, if not "realtime" interrupts
I have no idea why you would need anything remotely like 5 microsecond latency for "streaming." When you stream media you have a buffer at the client end. If you are a bit late with a single packet it shouldn't make any difference.
But I do wonder about loads people have seen with standard datacenter server HW. For example, how many 128Kbps streams can a P4/4.3GHz/128K-cache/512MB-RAM Icecast2 server str
Re:ok great.. (Score:3, Interesting)