Domain: qnx.com
Stories and comments across the archive that link to qnx.com.
Comments · 436
-
Re:um
I can't believe this got a +5 insightful.
It's not made for PCs
You are mistaken, I'm afraid. See below.
What you won't find in QNX is USB support
QNX most defiantly has USB support, as I have a Audrey that has it sitting in front of me.
As for the "not meant for PCs", QNX runs extremely well on a PC, with just about everything you need.
QNX also has 3d support, as evidenced in the FAQ here.
To quote:
Photon supports rapid animation, 3D graphics, and realtime trending
through off-screen memory, bypass mode, video overlay, and other
advanced features.
QNX also supports the following:
* XScale processors and boards
* >4G address spaces on PowerPC boards
* more video hardware
* UDMA 66 chipset (high-speed disk interface)
* Enhanced TCP/IP stack - includes IPv4, Unix domain sockets, multicast support
* NFS v3
* Resource database for better device mapping
* Bi-directional pipes
* Block driver DMA
* Enhanced support for shared memory, with full support for creation mode and ownership information
And SMP, which OpenBSD still hasn't included, for instance.
I recommend that anyone who is interested download the free ISO and install it on
a spare computer you may have laying around and see for yourself. Get it here.
Don't rely on /. or me to give accurate information, go see for yourself.
SealBeater -
Re:um
I can't believe this got a +5 insightful.
It's not made for PCs
You are mistaken, I'm afraid. See below.
What you won't find in QNX is USB support
QNX most defiantly has USB support, as I have a Audrey that has it sitting in front of me.
As for the "not meant for PCs", QNX runs extremely well on a PC, with just about everything you need.
QNX also has 3d support, as evidenced in the FAQ here.
To quote:
Photon supports rapid animation, 3D graphics, and realtime trending
through off-screen memory, bypass mode, video overlay, and other
advanced features.
QNX also supports the following:
* XScale processors and boards
* >4G address spaces on PowerPC boards
* more video hardware
* UDMA 66 chipset (high-speed disk interface)
* Enhanced TCP/IP stack - includes IPv4, Unix domain sockets, multicast support
* NFS v3
* Resource database for better device mapping
* Bi-directional pipes
* Block driver DMA
* Enhanced support for shared memory, with full support for creation mode and ownership information
And SMP, which OpenBSD still hasn't included, for instance.
I recommend that anyone who is interested download the free ISO and install it on
a spare computer you may have laying around and see for yourself. Get it here.
Don't rely on /. or me to give accurate information, go see for yourself.
SealBeater -
ehm?
What you won't find in QNX is USB support, drivers for a Sound Blaster 16
are you sure about that? -
Re:umWhat you won't find in QNX is USB support
Sorry, wrong. QNX USB support.
-
Crap...
Should have linked here.
-
Re:um
Here's what you DO get (from the Neutrino page):
The QNX Momentics Development Suite Non-Commercial (NC) edition gives you a full self-hosted development environment with the QNX Neutrino RTOS, plus tools, device driver kits, a desktop class browser, and more.
QNX Neutrino RTOS v 6.2.1
* Symmetric Multiprocessing (SMP)
* QNX Photon microGUI
* Hundreds of POSIX, UNIX, and QNX utilities
* Distributed processing
Self-hosted C/C++ development environment for x86 & ARM development only. Reference Platform:
* iPAQ (ARM development target)
Driver Development Kits (DDKs)
Libraries and Tools:
* ANSI C, GCC v2.95x optimizing compiler, GDB 5.x, Binutils 2.10.x -
download link here
sorry for being a dork and replying to myself, but look here for Neutrino. right side of the page.
-
Disk-on-Chip
M-Systems makes a device called the Disk-on-Chip that I believe can do this. Although it doesn't interface through IDE, it can be made to emulate a hard drive at the BIOS level, using M-Sys's TrueFFS BIOS. Therefore, operating systems (like Windows 98, I believe) that use BIOS calls to access the hard drive can use the Disk-on-Chip as if it were a hard drive. Other operating systems like Windows NT and Linux need the proper drivers / kernel modules to access the disk. The upshot of all of this is that I was able to get my own hacked-up minidistribution of GNU/Linux (which I naturally called Asshat Linux), to boot and run off of the 16-Megabyte Disk-on-Chip in a Visara 1783 thin client machine (formerly running QNX). I believe that the same could be done for Windows 98. If anyone wants info on how I did this, email me or post a reply.
-
Linus discovers priority inversionsWhat's being described here is called a priority inversion, where a high-priority task makes a request of some service running at a lower priority and gets hung up behind it. Real-time programmers have been dealing with this for decades, with varying degrees of success. A priority inversion bug caused problems with the Mars Pathfinder mission, and had to be patched remotely.
There are various solutions to this problem. It sounds like the Linux kernel people are trying priority inheritance via the messaging system (local sockets). QNX has had that for over a decade. Because QNX does almost everything, including all I/O, by message passing, it has to do this right. In the UNIX world, message-passing was added quite late, in BSD, and X is one of the few interactive programs that uses socket communication on the local machine. Sockets are used mostly to talk across the network. So support for time-critical local sockets isn't very good. UNIX pipes were the original UNIX interprocess communication mechanism, and they were intended as batch-like devices. Sockets look, and work, a lot like pipes. This legacy is the real cause of the problem.
Of course, the reason Linux users actually want this feature is so that they can play their pirated MP3s in the background while using X-windows.
-
Re:Linux
You should be nice to your fellow slashdotters and provide a link. It is really easy.
-
Re:Oh dear. Is it terminal?If you want a pure browser terminal, you can try the free version of QNX, and bring it up in diskless mode. That's enough to run a browser. It's the same system that ran the i-Opener, but not as locked down. You can run Mozilla or the lightweight Voyager browser. Voyager has much better response that Mozilla, but hasn't kept up with what Microsoft has done to HTML.
Before Microsoft wrecked web standards, this was a viable option. There ought to be a stateless i-Opener like device in every hotel room in the developed world.
-
Re:Separation of operating system and windowingI'd like to know more about it not being a performance issue. Linkies?
Not any more. Microsoft leaned on the guy behind NTinternals.com to stop publishing stuff like that. NTinternals.com also had the famous "NTcrash.exe", which made random system calls while recording what it had tried. You'd run it for a few hours, and, a few autoreboots later, it would have a list of exploits ready for you. Microsoft leaned on Mark Russinovich to take that down, too.
There's a general feeling that interprocess communication is expensive, but that's because UNIX does it badly. It was an afterthought in UNIX, as were threads and locking. Those are really the most fundamental operating system operations, and to get them right, the kernel has to be designed and optimized for interprocess communication.
Take a look at QNX, which can do a million or more interprocess communication operations a second. That's how it should work.
QNX is something of a specialist operating system, mostly used for industrial real-time control. But if you can use Linux at the command line, you'll find QNX easy to use. It's Posix-compliant, and all the GNU command line tools have been ported. There's a GUI, called Photon, and it's all in user space.
If you want to play with QNX, download their free version as a CD image. This makes a bootable CD workable on most x86 machines. You can boot it and run without touching the hard disk, which makes your machine an "Internet appliance" - you can connect via dialup or LAN and browse. It's just like the i-Opener, which was powered by QNX. Except that it runs both Voyager, their little browser, and Mozilla. (If you see slow graphics, it's probably because QNX doesn't have a driver for your graphics card, and defaults to VGA or VESA mode. Check the supported hardware list.)
But you only do that to see that it works. Then you install it into a disk partition or on a bare machine. This gets you a QNX system with all the development tools. All the important stuff is there, but there's far less cruft than in the Windows, UNIX, or Linux world. QNX got the basic design decisions right back in the 1980s, and it shows. All the growth is outside the kernel. The kernel itself is tiny. Only about 60K of code runs in kernel mode, and that code changes very seldom and is well debugged. Drivers are outside the kernel. You can do driver development on a running system, without rebooting. I'm working on a QNX driver for FireWire cameras now, and I haven't had to reboot yet.
-
Re:Separation of operating system and windowingI'd like to know more about it not being a performance issue. Linkies?
Not any more. Microsoft leaned on the guy behind NTinternals.com to stop publishing stuff like that. NTinternals.com also had the famous "NTcrash.exe", which made random system calls while recording what it had tried. You'd run it for a few hours, and, a few autoreboots later, it would have a list of exploits ready for you. Microsoft leaned on Mark Russinovich to take that down, too.
There's a general feeling that interprocess communication is expensive, but that's because UNIX does it badly. It was an afterthought in UNIX, as were threads and locking. Those are really the most fundamental operating system operations, and to get them right, the kernel has to be designed and optimized for interprocess communication.
Take a look at QNX, which can do a million or more interprocess communication operations a second. That's how it should work.
QNX is something of a specialist operating system, mostly used for industrial real-time control. But if you can use Linux at the command line, you'll find QNX easy to use. It's Posix-compliant, and all the GNU command line tools have been ported. There's a GUI, called Photon, and it's all in user space.
If you want to play with QNX, download their free version as a CD image. This makes a bootable CD workable on most x86 machines. You can boot it and run without touching the hard disk, which makes your machine an "Internet appliance" - you can connect via dialup or LAN and browse. It's just like the i-Opener, which was powered by QNX. Except that it runs both Voyager, their little browser, and Mozilla. (If you see slow graphics, it's probably because QNX doesn't have a driver for your graphics card, and defaults to VGA or VESA mode. Check the supported hardware list.)
But you only do that to see that it works. Then you install it into a disk partition or on a bare machine. This gets you a QNX system with all the development tools. All the important stuff is there, but there's far less cruft than in the Windows, UNIX, or Linux world. QNX got the basic design decisions right back in the 1980s, and it shows. All the growth is outside the kernel. The kernel itself is tiny. Only about 60K of code runs in kernel mode, and that code changes very seldom and is well debugged. Drivers are outside the kernel. You can do driver development on a running system, without rebooting. I'm working on a QNX driver for FireWire cameras now, and I haven't had to reboot yet.
-
Re:Unm
-
Re:Unm
-
Re:web platform
QNX - 3-4 years ago you could download a fully graphical web browser (on top of a 32-bit multi-threaded OS with IP stack) and run it from a single 1.44MB bootable floppy.
I'll leave it to the reader to find whether they still offer something similar on their site. (Yes, I'm too lazy to do it myself.)
-
Re:Fits on a floppy...
I've been looking for a truly "portable" OS for quite some time - one that I could fit on a single bootable floppy and have a GUI interface. Upon failing to find anything suitable, I have since started writing my own. As I have a penchant for assembly language programming, I'm about halfway done with it.
Damn it! There used to be a fully-functioning QNX OS demo that fit on a floppy and had a nice GUI. Unfortunately, it doesn't seem to be on their site any more. That's a shame; it was really cool. -
GamePC, another "no OS" option vendor.I just ordered a Shuttle machine from GamePC, with no OS installed. Their OS options, and prices, are straightforward, and you can see what Microsoft is costing you.
- Dual Boot : Microsoft Windows 2000 Professional and Windows 98 SE - $290.00
- Dual Boot : Microsoft Windows XP Professional and Windows 98 SE - $300.00
- Dual Boot : Red Hat Linux 8.0 and Microsoft Windows 2000 Professional - $260.00
- Dual Boot : Red Hat Linux 8.0 and Windows 98 SE - $170.00
- Dual Boot : Red Hat Linux 8.0 with Microsoft Windows XP Professional - $270.00
- Microsoft Office XP Professional OEM - $375.00
- Microsoft Windows 2000 Professional OEM - $190.00
- Microsoft Windows 98 Second Edition OEM - $100.00
- Microsoft Windows XP Home Edition OEM - $115.00
- Microsoft Windows XP Professional OEM - $200.00
- Red Hat Linux 8.0 Personal Retail - $50.00
- None - $0.00
(I'm putting QNX on it, for embedded development. QNX, incidentally, has become more friendly to Linux programmers. They now use the GNU toolchain. If you're not doing real-time work, QNX now works a lot like Linux. If you are doing real-time work, it works a lot better than Linux.)
-
Goodbye OS/2.
I thought a lot of ATM's used OS/2. I wonder what OS they'll eventually migrate those to -- QNX perhaps?
It's sad to see OS/2 die - I had hopes that BeOS was going to be "everything OS/2 could have been, but wasn't." Too bad it died too :( It's interesting to just sit back and wonder what the computing world would be like now (and what type of operating system we'd be running today) if IBM would have actually marketed OS/2 effectively. -
Re:We know how to do software rightI've been disappointed with the HURD effort. Part of the problem is that they started with Mach, which in retrospect seems not to be the way to do a microkernel. Mach started life as a set of interprocess communication add-ons to the Berkeley UNIX kernel, and has struggled to outgrow the Berkeley code.
One thing we know now is that microkernel design is very tough. You can kludge together a UNIX-like OS without much trouble, and many people have done so. But there are key early design decisions in microkernel OSs which, if wrong, are not recoverable later in the project. EROS, for example, tried "persistence" at the kernel level, and they're now struggling to back out that decision.
Download the free version of QNX, build the boot CD, and install it on a spare machine. There's a protected mode microkernel OS with really good performance. All the drivers are protected mode processes, as is the file system. It can be done. A lot of control systems that have to work run QNX.
-
Here's one recipe you can try...Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?
Do the install demo the last day. Show them all the wonderful things non-Micr0s0ft platforms can achieve first, then show them how to harness all that power on their own system at home by demonstrating how to dual boot a box. NOT! Be sure to include a big disclamer - write letters to parents to back up their data, etc. Or give out demo CD's like the Knoppix distro and maybe figure out a way for people to store their data somehow. Messing with people's parents' hard drives would not be advised for a bunch of high schoolers. Fried hard drives are not the right way to send a good message about Linux and other alternatives to parents, etc.
What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)Use debian for the majority of your demos. Debian is used as a base for a lot of other distros out there, so this would be a terrific learning platform. apt-get is extremely popular and easy to use and would be a great way to build confidence. "Gee! That's even easier than windows!" It is, again, used in a number of debian-based distros and this is a plus. Messing with RPM dependencies I would say would be less conducive to learning. It should be experienced, but you don't want to spend a lot of time with a headache like this. Let them figure it out when they get to a real RPM based system and they overload their harddrive with unnecessary packages. We needn't worry their little minds with this now.
Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?I would suggest, if you've got a bunch of spare computers for your use, installing a selection of operating systems. Maybe just have them around, for kids to explore on their own time if they seem interested. A selection of the common Linux distros would be good - Red Hat, Mandrake, etc. If you've got the money, do some installs of Xandros, Lindows or Lycoris. Show an install of Gentoo and demonstrate the portage build system. Put YellowDog or LinuxPPC on some older Mac machines that the school is sure to have laying around. Install something fun on a new G4. You're wide open here. If you've got the time, do installs of NetBSD, OpenBSD, and FreeBSD. Actually, I'd move FreeBSD up the ladder a bit, even into the linux distros above. This one I think is going to become pretty important in the next few years. It's clean, stable and very security concious. It also runs linux binaries and, all in all, is a tremendous platform. The flexible workhorse.
Linux and *BSD aren't the only alternative operating systems. Try doing an install of SkyOS, AtheOS, or MinuetOS. Read about those here.
There's also Syl-la-ble, QNX[review], and, lest not forget, the Wonderful! the Amazing! MacOS X. Amiga, Minix, VMS, on and on. Find a local LUG with someone in it that likes these obscure operating systems. See if he (she?? --nahh...) will lend a hand. No. Not that hand.
Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.'Show them the GUI. Copy some files around or perform some other common tasks using the GUI's helpful tools. Then show them how much faster and more efficiently they can do the same after clicking on gnome-terminal (or Kterm or whatever). Show them the virtual terminals that are availible if X isn't around. Show them that you can start up two instances of X, each with a different user, and switch between them [after you have one going, type "startx --
:1" in a virtual terminal as the user you want running the second instance, then Alt-Fx to find it. Switch back and forth). Then ask them if they can do that on dad's windows box. Give them a printed reference of some of the more common unix command and have them figure out how to perform a selection of tasks. Do the shuffle about pipes and redirection and all that and have them do some "homeworks," maybe working together. Then tell them to use the man pages for command xxxxx and yyyy, integrate the knowledge found there with the printed references you gave them, to complete another task. Do speed trials. Ask them to try the same task with only the GUI. Point made.
Are there any other key issue I need to think about?Hand them a Knoppix disk. Let them find debian if they are feeling adventerous. Suggest to them if they think they know what they are doing, and can stand being grounded or whatever if they break mom's computer, to try an install of Mandrake - with the easy repartitioning and all built in so nicely. Easy to use from the get go, but quite fully functional linux distro as well. Easier still, and based on debian, would be Xandros. Apt-get to your hearts content, and can even resize NTFS partitions.
"Am I wearing my pants?"
Don't forget this one before you walk into your first day of class.
-
Sure can!
Available distros should include Debian, and perhaps YDL or SuSE, among others. (Debian is pretty much a sure thing, can't remember the status of the others.)
NetBSD is also in the works, and on the AmigaOne side of the fence (very similar hardware, using a different bootloader, so some minor porting work would be needed), they have a port of SuSE going too.
Basically, good *NIX support will be had for both the Pegasos and AmigaOne, even if neither group is playing it up just yet.
The question should be, will it run QNX? ;) -
I just did this recentlywith only 8 megs of RAM. I have finally gotten it to a usable point with FVWM and a custom, pared-down kernel.
I used Debian Slink, but I have access to a broadband internet connection. The X Configuration was a major pain. You should look into a mini distribution that comes with TinyX or something based on UCLibC if you really want the most bang for your download time. Remember, VesaFB is your friend.
I'm also looking for a distro specifically for old 486's, but I am yet to find one. I have run across this commercial OS, though, which is pretty cool.
-
Re:In reguards to Hyper-Threading.
QNX Realtime OS supports HyperThreading since Sep 2002. Till now only Xeon had hyperthreading.
-
Re:Tha HURD
There's a difference. Linus wrote a monolithic Unix-like kernel. That's a *huge* accomplishment (I know I couldn't do it!), but Unix-like kernels are well-understood.
The Hurd, on the other hand, is a multi-server design. This is new stuff -- the only other major such system I know is QNX. Building multi-servers is something that most people have no experience with.
So, if you're going to complain that the Hurd is taking too long to implement, I ask you this: do you think it is the place of Free/Open Source developers to innovate (which will take a long time), or only to copy what Microsoft and other proprietary software companies do?
-
Re:The Hurd
Bang on the money.
If I might add to what you've pointed out, RMS has explained that the motivation for continuing development of the Hurd is that it has the potential to be something much more powerful.
Which leads to what really bothers me about the Slashdot crowd's reaction to the Hurd. Lot's of people I know criticize Free/Open Source Software just rips stuff off, and doesn't innovate. Well, the Hurd is one of the most innovative Free Software projects around. These guys were talking about buiding a multi-server OS back at the beginning of the 90s.
Come on, once the Hurd is finished, GNU/Hurd will be years ahead of GNU/Linux, Windows NT, or Mac OSX. The only other OS I know of that's as theoretically-advanced as GNU/Hurd is QNX another multi-server.
This is cool stuff. Unfortunately, it seems that most people just want to complain, "Oh, does it have the drivers for XXXXX? No. Then it's useless." Grow up - the value of an operating system isn't defined by what hardware it runs on. That's much easier to change than the fundamental architecture of the system.
-
Your next PC
We've got TiVo type boxes with Hard Drives, and DVD type boxes with DivX...really what we need is a more generalized component-sized PC that works to augment out television viewing experience. I know it's been done before, but the public hadn't caught up with the idea of computational ubiquity. Now's the time for:
* Component-sized set top box format
* 20G HD (minimum) for recording shows and user apps
* Low heat processor (e.g. Transmeta or XScale)
* A embedded operating system of one kind or another
* CD-RW/DVD combo drive
* Video in/out, RJ-45 for connectivity
* Front port for wired/wireless keyboard/mouse/joystick
Something like this ought to be doable for less than $500. Advantage: DivX 3.11, Ogg, MAME. whatever you want would be just a download away. Of course, a hacked XBox is already pretty close to this already. -
Re:The change I want to see...
To do so in an efficient manner (rather than a x0rfbserver/vnc manner), would probably require quite significant changes to the X Window System's windowing model to make it a bit more like, say QNX/Photon's.
The X protocol was indeed designed for extensibility, but just because you can extend the protocol doesn't mean it's not a lot of work to produce a whole new windowing model (though I hesitate to call it impossible).
If you have investigate the QNX/Photon GUI, you'll see that one can not only migrate windows, one can have 1/2 of a window on one display with one bit-depth and resolution, and the other 1/2 of the _same_ window on another display with another bit-depth and resoluion.
I remember several years ago seeing a DOOM port running on QNX. It was possible to drag the window, while DOOM was running, back and forth, and even leave it perched midway beteen the two displays. Very impressive.
Of course, in QNX/Photon, there's a (pixel-granularity if desired) Z-axis - a fundamental difference to X's X/Y+Stacking Order.
-
Re:Proof that Passport Can Be Secure?
And don't forget QNX!
I've always just used "*n?x" myself :P -
Re:The question is
all the Minix guy did was put forth his opinion that microkernels were the wave of the future
If you want proof that MicroKernels are neat, go and get QNX. -
Re:First? Probably not. Taking bets now.
-
QNX
QNX does this - free *nixy RTOS for non-commercial use.
-
Re:Too much support for my tastes..
-
Perhaps it was the way you asked....
I have had a great experience with QNX and its users. Perhaps its the way you asked. If you demand attention, of course you are going to be met with hostility. Have you ever joined the chat rooms on IRC?
QNX have also started a great community site, headed by Bill Bull.
Join the chat room sometime, I think you'll change your mind
[clip] Hurray for the Community!
When you're developing on the QNX operating system, you should never feel like you're in isolation. The QNX community is all around you and is filled with all sorts of professionals who are likely working on the same projects you are. Yes, we have support plans and training classes for the professionals, but at 2am, you might be surprised to see who's on the newsgroups or hanging out in an IRC channel. This may seem unconventional to you, but in all honesty, we're all working together. QNX developers are a community of programmers interested in developing with the best RTOS on the planet -- yup, that's how we feel about it. Don't be shy to post comments, visit websites or log into an IRC channel. Just be sure to help out when you get a chance! [end clip] -
The real users of filtering?Q. What about the counterargument that if people were really upset about their inability to see the list of blocked sites, then they just wouldn't buy the filtering software?
A. There are a few different problems with that argument. First is that the people who are buying the filtering are not, by and large, the people who are subject to the filtering. The person in a particular library who is buying the filter, for example, is likely the network administrator of the filter, probably a pretty savvy computer user who can figure out a way around the filter. If anyone can do it, it's the person who's in charge of putting it in. He's the expert in computers, after all.
... So the person who's making the decision is, oddly, not all that affected by the filter, as I think about it.I thought the biggest users of filters were clueless parents who heard some horror story of the internet, bought a filter and installed it just so they could be 'hands-off' parents. Parents don't want the responsibilly of monitoring the net usage of their kid.
I think putting the computers where everyone can see them, and actually discussing! what's out there is a far better answer than filtering, which is trivial to get around for even the dumbest of kids/adults. Go to a friends house or other computer (unfiltered), download the QNX internet browser floppy disk for instance.
Actually, unless OSS is filtered (Goddless heathens! Communists! Child Molesters!) you could do that right there.
-
Re:Dolphin...
I'm not postitive, but I don't think QNX is any fun.
At least I hope it isn't, for IT's sake. -
Re:Tom also has a review of itLinux: Because rebooting is for adding hardware.
If you used a real OS, you wouldn't even have to reboot then.
-
Why, why, why would you make it smaller
What is with this incessant desire to make things ever smaller and smaller? I'm just going to take my teeny tiny Motorola V. Series 66 phone, my ultra slim Fujitsu LifeBook S-4510 , which of course is running with QNX as the operating system, viewing the worlds smallest website and neatly set them all in my Mini Cooper S and drive off the nearest curb, falling to my death while transferring all my life's memories onto my IBM Microdrive.
-
Has anyone ever tried..
various alternatives to RPM packaging? I don't know much about this, but I've found QNX's Package Installer to be quite efficient and trouble-free (at least in 6.1, can't say much on the new one in 6.2NC) compared to what many experience with RPMs..
Then again, RPMs would work better if more distributions were a little more uniform in their cores (UnitedLinux might solve this?) -
QNX/Nuetrino RTP would've been better
Check out their QNX-Nuetrino Demo Floppy it has a POSIX complient realtime OS, with their Photon GUI (elegant in the extreme compared to X), a full file system, Networking, their Voyager web Browser, & dial up networking (with wider CHAP/PAP logon script support than BeOS &) or Network card/cable modem support, all on a bootable floppy drive. This OS system on a floppy also by default dynamically supports at least Intel, SIS, ALI & VIA chipsets & S3, Intel, 3df/x, ATI, Nvidia, SIS 'n Trident graphics out of the box too.
-
Re:Bloat? or not
For an idea about what fits into 2MByte, click here. 1.44 MB actually, so there would be room for a "conventional" BIOS. Which brings up the question where I can buy a mainboard with a big enough flash chip and a BIOS which allows me to flash a floppy image and use it to boot the machine.
-
Re:This is great news
Huh??? It isn't even a proper RTOS. Calling it the premier embedded OS is silly and untrue. PalmOS has been a very very minor player in the embedded market. WinCE embeded almost certainly outsells by a factor of ten or more. Qnx is a far better canidate for the premier OS.
-
QNX microkernel OS works...
QNX is probably the best-known working microkernel system out there. (Mach is better-known, but nobody actually used the microkernel versions, they used the 2.5ish versions like Next mostly.) Runs on a reasonably large number of Intel platforms, though unfortunately the single-floppy network demo only had drivers for a model of Ethernet card I didn't have, and hasn't been updated since 1999. They've probably had enough bloatware that the kernel no longer fits in 4KB (but newer Intel chips have bigger L1 caches these days
:-), not that you're really need it to stay in L1. -
Why Linux ?
Why not Symbian, QNX/a> or any of these ? This unhealthy obsession of "one size fits all" that abounds in the Linux world is exactly the sort of thing that people on Slashdot complain about the Microsoft world. You can't shoehorn these things without getting a poorer product as a result.
Wouldn't it be a better open source project if someone did what Linus did when he wanted to build an Open Source Unix and do the same for a proper RTOS ? By viewing Linux as the "only" solution it turns into the old "everything is a nail if you only have a hammer" discussion.
News for Nerds would be detailing what is happening in the RTOS and embedded world, rather than just being "News about Linux" to the detriment of better technologies. I know it sounds like a rant, but people like Wind River really do know what they are doing, this isn't a crappy Microsoft driven arena, this is where people really do know their shit, and the customer will not accept failure as part of the package.
-
Re:Open QNX?
While mostly true, this comment may be a little misleading. QNX is "free for non-commercial use". See get.qnx.com. QNX also has "accessible source", meaning that supposedly the entire OS except the microkernel will eventually be available. So far the source has been pretty slow in coming. To see what's available look at cvs.qnx.com
-
Re:Open QNX?
While mostly true, this comment may be a little misleading. QNX is "free for non-commercial use". See get.qnx.com. QNX also has "accessible source", meaning that supposedly the entire OS except the microkernel will eventually be available. So far the source has been pretty slow in coming. To see what's available look at cvs.qnx.com
-
Re:Open QNX?
-
Re:TiVo or ReplayTV?
Replay runs an embedded RTOS called QNX. Why would I want a multi-user, pre-emptive multi-tasking operating system on my PVR? It just needs to record what I want it to record, and play what I want it to play.
You need a multi-threaded OS so you can push a button on the remote and have it respond before it finishes recording or playing back your entire program, as well as for garbage collection and other background maintenance tasks. -
Re:great news - Linux is NOT a microkernelJust to clarify, Linux is not a microkernel.
Microkernels like Mach, L4, Spin, and QNX run as much of the operating system as possible in user space (the processors unprivildged execution mode). Device drivers, virtual memory managers (pagers), all run in user space, as normal applications. Alternate resource allocation policies (processor scheduling) can often be implemented on top of the microkernel. This allows a lot of flexibility, as parts of the os can be stopped, started, replaced, and debugged just like any other user applications.
You can even run entrie alternate operating systems on top of a microkernel. MkLinux (Linux on Mach) and L4Linux (Linux on L4) are examples of this. Traditionally microkernels have been slower than conventional kernels, but that's chaning. Linux in user space on top of L4 (L4Linux) runs only 5% to 10% slower than native linux.
Linux does have loadable modules, which can be loaded and unloaded at run time. However, the the loaded code run as part of the kernel, in the prividged execution mode.
Nathan Wiebe -
Embedded vs. "desktop" perspectivesFirst off, it's an excellent article covering most of the issues that arise in embedded systems -- you should at least peruse it if you're going to comment in this thread. One of the biggest issues for non-embedded developers to understand is that each development task is somewhat unique -- different hardware, I/O requirements, cost targets, time to market, etc. It's not a [relatively] standard environment like that of a typical desktop computer. In fact, the vast majority of embedded devices are "headless" -- no keyboard or monitor, so support for video drivers and/or X only impacts a very small number of applications.
My company recently went down the path of evaluating several embedded linux suppliers, including Hard Hat Linux, LynuxWorks, RTLinux, and others. This evaluation was for an embedded communications platform.
There are many "real-world" issues that will arise when considering Linux instead of some of the more established embedded OS players (WindRiver/pSOS, Green Hills, Keil, QNX, et al -- see Embedded Systems Programming magazine for a pdf summary of embedded OS providers). These real-world issues, which will vary in importance among organizations for various reasons, include:
- Existing non-linux OS usage (e.g., WindRiver)
- Staff familiarity with Unix-like programming (most embedded developers know traditional RTOS-like architectures, not unix IPC methods or socket programming)
- Ease/difficulty with which already-written application software can migrate to a new OS
- OS support for preferred hardware devices (processor, communications peripherals, flash, etc. -- writing drivers from scratch isn't desirable)
- Internal corporate or organizational resistance to change (don't underestimate this one, folks!)
- Product life cycle phase
- Existing customer experience(s) with any previous OS-related behavior that may change under linux (customers like seeing behaviors they've seen before, not something new)
- Hard real-time versus soft real-time requirement(s)
- Communications stack and protocol requirements
In short, development in the embedded world tends to have many more complications associated with it. That's not necessarily bad -- in fact it often makes it more technically challenging and thus professionally satisfying -- it's just something that ought to be recognized, acknowledged, and taken into account when OS decisions are being made.
Andy