Realtime OS Jaluna
rkgmd writes "Jaluna-1, a software component suite based on the
respected chorus realtime os is now available in opensource (MPL-derived license) form. Jaluna, the company behind this, is a spin-off from sun to promote and develop chorus, and consists of many developers from the original chorus team before it was acquired by Sun. Chorus developed one of the earliest successful microkernel-based rtos's (could even run parallel, distributed unix in realtime on inkos transputers in 1992). Lots of good research papers here, and a link to the original newsgroup announcement."
How does this compare with QNX?
But it's really too bad that my university doesn't teach this stuff.
It's something I realized the other day; we have so many advances in the field of computer science, such as Jaluna, and yet our centers of learning don't touch it. In fact, Java isn't even a core requirement in my plan of work!
When is it that we'll finally be able to have a good environment for learning all of these spectacular technologies?
Another notch for opensource, sounds like a useful thing to have lying around for all your real-time os needs. "Jaluna-1 supports POSIX Real-Time standard applications, and includes state of the art tools for developing, deploying, configuring, and managing embedded systems. Jaluna-1 is being offered as open source, royalty-free software. Jaluna complements its open source software offering with technology and services enabling customers to easily migrate from proprietary Real-Time Operating System (RTOS) based projects to royalty-free Jaluna-1"
Last.fm - join the social music revolution
Who are they?
Don't you mean Inmos?
It should probably be mentioned that LOT's of commercial RTOS's provide source. For a lot of applications this is pretty much a requirement. The real distinction here is the royalty-free license, although RT-Linux (which I know almost nothing about) obviously doesn't require royalties.
Roving Web-Teleoperated Robot
I know it sounds harsh but the reality is that most courses worry about Java, C++, Jaluna and people become concerned about the technologies rather than the theories.
The person who knows Knuth will be able to code in any language, the person who doesn't is limited in what they can do. Did your course teach you how to dope a transistor, build an Op-Amp ? An AND Gate ? A Compiler for a processor you design ? An OS for that Processor ?
And did it do all of these by starting with theory or was the first lesson "Print hello world" ?
The problem with practical courses is that they teach people to be the bricklayers of the Software Engineering world. The theory course teach you to be the engineer and how to apply theory to practicality.
It isn't about being taught "cool" technologies, its about being taught the theory behind them. RTOS is great in that it teaches you about Thread-death, dead-lock, live-lock, IO blocking, race conditions in a very immediate environment, so when you build a bigger system you automatically avoid those issues because you understand what is the right way to work.
Some Universities do teach the cool theory stuff, but most people don't choose to do that as its harder. It also makes you less marketable in the first year after graduation as you don't have the buzzwords... 12 months on however you'll be roasting everyone.
An Eye for an Eye will make the whole world blind - Gandhi
College is to give you a foundation of understanding so no matter where the technology goes you will have the ability to learn it due to your broad base.
If you want tech training go to DeVry/University of Phoenix (what a crock name). This is why a degree is worth more than certifications.
Plus, no one is stopping you from learning about RTOSes. I'm going through the Minix Computer OS Design book by Tanenbaum right now. You can either be spoon fed like most university students, or you can get up off your ass, show some motivation and learn it on your own. This is why I never have a problem finding a job and others cant get an interview. People want to hire motivated workers not someone who'll just tow the line.
...as opposed to TimeDelay OS?
There's a Mercedes gap too. I want one and can't afford one, but it's not government's job to do anything about it.
I left Uni with one programming language (Ada) (Okay and LISP, M68k, Prolog and other really useful languages!) one OS (AIX) but I understood however thing worked.
However the answer to the question "do you know X" is always "yes" the advantage to theory is that it makes the lie true. How long to learn a new language ? If you understand the theory then the only thing that matters is syntax, 2 days ? 3 more days to learn the libraries ?
You resume should say that at University you learnt the following, not "I taught myself" because employers will look for the former wording not the later.
Jesus though "Advanced web design" where you do Perl. What has the planet come to ? Sorry to sound like an old fart but "Advanced Web Design" doesn't sound like something in a degree, it sounds like a Dummies book. XML as a course ? Its a bloody markup language, what is there to learn ? XSLT ?!
Learning extra languages or technologies is simple if you just understand the principles. Then you can claim to have known them for years, even though it was only last week when you found out this interview required it. As long as you can understand the theory then everything else makes sense.... except VB.
An Eye for an Eye will make the whole world blind - Gandhi
What is this, the name of a new Gundam?
I sounds like you're right, that you should have chosen a different university. Different people look to get different things out of an education.
I have trouble imagining a university offering courses called "Java" or "XML". But if these are the types of courses you'd be interested in, then it sounds like a good community college would have been the way to go.
If, on the other hand, you like the stuff you're learning in the theory courses but just want a chance to try some of it out in programming assignments, then it sounds like you've got screwed over pretty good by your university. In my experience a good portion of courses at reputable universities also include programming assignments for hands-on experience. For examples, a course in algorithm design and analysis or in operating systems would include assignments where you implement those algorithms or implement process control.
So it sounds like whichever of these things you're looking for, you're at the wrong university.
Of course, it is possible that when you say "theory courses" you do in fact mean real hard-core abstract theory, and that this university is trying to produce all theoretical computer scientists. In that case the university would not be crappy, as I claimed, but would just be different and unique. Although it would definitely not be offering what you sound like you're looking for in that case, either. However, I sincerely doubt that a university with such a daring program would offer electives called "Java" and "XML", so I don't think we have to consider this case.
Atheism is a religion to the same extent that not collecting stamps is a hobby.
Comment removed based on user account deletion
Over at the U of S computer science department, you learn (if you don't already know them) Java, Eiffel, C, C++, Prolog, MIPS Assembler, OS design, UNIX systems programming, etc. Take a skim through the class descriptions.
Considering we're such a podunk town, I find it hard to believe you can't find something as good or better than it.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
Atari also had one that was based on the Transuputer from Inmos ( 4 cpu ), that i dont think was merely a 'add-in', but designed from the gronud up using it as the main cpu.
But since i never saw one in the flesh i could be wrong.
---- Booth was a patriot ----
I am a student at Merton College, Oxford and this is exactly how they teach CS here.
The "real world" is all about politics.
I have had some below average teachers as well. However, simply quiting school because you don't agree with something is a pathetic excuse. What happens when your boss who wants you to develop some piece of software has a different understanding of how it should be implemented than you? You quit?
College also shows you can complete something, in spite of the fact it may be irrelevant to what you need to do a particular job. For example, Non-Western Civ (History) classes I took in college don't help me at all in performing statistical analysis of data for custom built reports. However, it did give me some interesting insights in to the Mongolian Empire and the rise of Communisim in China and the history between Japan and China. There are great lessons to be learned from history, and a well-rounded education can give you that.
Maybe you should have chose a better school? I know MIT students don't seem to complain about their professors being stupid.
While i fully agree with you in that principles and theory are important, practice and looking into the details of a project or a technology is important as well.
From that standpoint taking a course in XML can make sense - especially if it is a practice course where you can learn how to apply the technology to real-world problems and deal with all the little details that make up the real world.
time is a funny concept
Wonder if its running Jaluna OS ?.
It would compute the weather 3 days hence, and power clean your car at the same time.
Now that's heavy computing power...
You can learn C++ for years and then open a good book about it and understand that you still don't know SHIT. Don't agree? Buy yourself the following books:
Effective C++
More Effective C++
Exceptional C++
I read these books to humiliate myself, and other people when I pull something that I read in them from my head and even the "experts" start talking crap.
The more you know, the better you understand how much more you don't know.
*
I thought it was the Inmos Transputer!
Are they still used?
It's time I ask this question:)
What is a Microkernel? And what are it's advantages?
Linux is not a microkernel, but darwin is ?
Is this just a buzz work?
I've been wondering this for some time now. I remember using QNX (back when it was QnX from Quantum!) on the ICON computers round-about 84-85. These were 268's with big screens, graphics, everything. The thing I remember most was that they were FAST, snappy, you know, everything this 2k box isn't.
So is there any downside to an RTOS? I know about the slots and scheduling yadda yadda, but these strike me as theoretical problems and not nessesarily real-world ones.
Can someone clue me in here? Why don't we all use QNX for everything?
The micro kernel in unicos/mk that uns on Cray T3Es is chorus. Seem to do very well in that job.
Backups are for wimps. Real men post their data in comments and have slashdot mirror it
I did a quick search, but didn't find much.
Is there anything available today that works like
a transputer ? Do FPGA's have enough gates to simulate one of these ? I'd love to play with something like this : )
The University of Saskatchewan has the reputation of having one of the best Canadian computer science faculties west of Waterloo. That said, you're right: every university should (and does, for the most part) teach OS design, CPU design, assembler and two or three general coding classes (that awful term "information structures") on top of what I would consider "real" computer science (complexity, language theory, etc.).
A RTOS does have everything that you are saying, but the statement about a process having to give up its time slice is just a little off.
The highest priority thread, other than the OS itself, has almost full control of the OS in a real-time OS. It can only be preempted by a higher-priority thread. So if it doesn't finish its task by the end of its timeslice, it gets the next one and the next one after that, until it finishes its task or is preempted by another higher-priority thread.
What keeps this all in balance is that most threads run at the same, low default thread priority, so they all share the processor equally. But if some thread is deemed important enough to raise above the default, it will preempt all those lowly default priority threads.
A popular book on the Space Shuttle talked about the flight control software: Rockwell (those hard-headed EE's) wanted to use a simple round-robin schedular (pretty much what cooperative does -- you are dependant on each task not being a hog) while IBM (which did the primary -- Rockwell got the backup) went with their fancy-schmanzy preemptive system, which I believe was blamed for scrubbing a Shuttle launch early in the program. You know, Keep It Simple and Stupid, and for some applications the dumb way is simple, reliable, high performance, and cost-effective.