Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
Will Embedded Linux Win?

By President Steve Elvis America in Technology
Fri Mar 22, 2002 at 06:30:18 PM EST
Tags: Software (all tags)
Software

When most people think of linux, they think of installing RedHat, Debian, Slackware or one of many others on a PC platoform for their server or desktop. There are other areas that linux has expanded into. One of these areas is to use linux as a small embedded operating system on various appliances such as gaming consoles, stereo equipment, video recorders, ATMs, and other devices. There are many companies interested in embedded linux technology so it is clearly capable and proven for working as an embedded OS. However, does this mean that it is the best solution?


Microsoft doesn't seem to think so. According to them, Windows XP Embedded has 200+ OEM partners, 85+ IHV and 150+ ISV partners while embedded linux has 78 companies in their consortium. While Microsoft's dominance in this category may be attributed to their monopolistic business practices, it is not the only advantage that Windows XP Embedded has over embedded Linux.

Windows XP has better development resources in their DDK (Driver Development Kit), the standard Windows SDK (Software Development Kit) and Microsoft's new .NET which will allow you to port Windows applications from a desktop computer to an embedded system seamlessly. Embedded Linux, on the other hand, has no standard api or development kit. Using embedded Linux will almost always require you to spend a lot of time and effort developing drivers and fulfilling the other requirements to port the software.

Windows XP Embedded does not have all the advantages over embedded Linux though. According to Lineo, Embedix Linux can be installed into as little as 2MB of ROM (PDF) while Windows XP Embedded requires 4.8MB. Obviously these numbers grow as your requirements grow, but memory is cheap enough that it should pose little added expense to your project. Both operating systems can be used with many different types of memory and storage devices. Another advantage embedded Linux has over Windows XP Embedded is that it does not require a GUI. Some uses for embedded systems, such as portable MP3 players, would only require using a small LCD screen rather than a larger GUI like an ATM would require. Embedded Linux would also allow you to use a more customizable GUI due to the lack of a standard linux graphical user interface.

There are still some other hurdles that embedded Linux must overcome in order to come out in the lead of the embedded market. With Microsoft's prevalance on the desktop and mid-range server environement, many people will be wanting to develop applications that work similarly for these with embedded devices. Embedded Linux must find a way to run the same applications on them that you can run on a Windows desktop computer. One such way is to develop things on a Java platform. The only drawback is that there is not a miniature version of Java that is small enough to work very well on an embedded device. Even the smallest JRE kits can take up almost as much space as the embedded Linux OS itself. However, if a smaller JRE can be developed for both Windows XP Embedded and embedded Linux, then applications can be ported even between the OSes, which would benefit everyone. The other savior in this category may even be Mono if work is done to make it useful for embedded Linux as well.

Another potential sticking point for embedded Linux is the lack of working drivers. While many people code drivers on their own for their hardware, imagine trying to assmeble a small PDA that uses technology built with a wireless network card by Linksys, a sound card from Creative, and an imput device built by Wacom. These manufacturers always release Windows drivers, and most likely an embedded device would need a little change to the configuration but the chip would be the same as on the full-sized card. This would mean that it would be easier for the manufacturers to create the drivers for these. There may or may not be Linux drivers built, and even then it is often not released officially from the manufacturer of the hardware. In these situations you may not be able to get the full functionality of the hardware due to a lack of good drivers.

There are many other categories that could turn the favor in either direction. Both embedded operating systems have a potentially large base of developers. As more people use Windows XP Embedded, Microsoft will hire more programmers to make things for it. As more people use systems with embedded Linux on it, more people will port their favorite applications to it as well. At this point, Microsoft is in the lead. With new companies like Sony joining on the embedded Linux bandwagon, will this change? It seems that if Linux is to beat Windows in the home, it is not in the desktop, but rather in embedded devices.

Sponsors

Voxel dot net
o Managed Hosting
o VoxCAST Content Delivery
o Raw Infrastructure

Login

Poll
Which is better?
o XP Embedded, from a developer's point of view 10%
o Embedded Linux, from a developer's point of view 20%
o XP Embedded, from an end user's point of view 10%
o Embedded Linux, from an end user's point of view 14%
o XP Embedded, from a Windows zealot's point of view 1%
o Embedded Linux, from a Linux zealot's point of view 24%
o Neither, only time will tell 18%

Votes: 69
Results | Other Polls

Related Links
o Windows XP Embedded has 200+ OEM partners, 85+ IHV and 150+ ISV partners
o 78 companies in their consortium
o better development resources
o Embedix Linux can be installed into as little as 2MB of ROM
o Mono
o Also by President Steve Elvis America


Display: Sort:
Will Embedded Linux Win? | 54 comments (44 topical, 10 editorial, 0 hidden)
Lots of good info at (4.50 / 8) (#1)
by wiredog on Fri Mar 22, 2002 at 12:09:51 PM EST

Embedded Linux Journal.

Oh, and everybody please remember that "embedded" and "real time" are not necessarily synonymous.

Peoples Front To Reunite Gondwanaland: "Stop the Laurasian Separatist Movement!"

Embedded systems... (4.00 / 7) (#2)
by ragabr on Fri Mar 22, 2002 at 12:11:07 PM EST

not that i've done very much research, but everything i've noticed within my very small circle of reading on the subject suggests than many companies in the embedded realm are prefering the BSD's to Linux or MS products because they can alter the software however they want without having to distribute it to anyone who comes asking or waiting for MS to implement the changes for them.

i also recall a bunch of vendors going with QNX type solutions because of the tendency to need real-time support for their system and last i read, (a really long time ago on this point) the Linux real-time patch wasn't up to par.

-------
And my tongue would be made of chocolate. Mmmmm. Chocolate.
-rusty
Arrrgh (3.00 / 5) (#4)
by wiredog on Fri Mar 22, 2002 at 12:38:36 PM EST

Embedded is not synonymous with real Time!

You can have an embedded system that isn't real time, and you can run real time OS's on a desktop PC.

Peoples Front To Reunite Gondwanaland: "Stop the Laurasian Separatist Movement!"
[ Parent ]

I didn't say they were... (4.00 / 4) (#6)
by ragabr on Fri Mar 22, 2002 at 12:47:06 PM EST

I just mentioned that there are many embedded systems that need real-time support and that at the time I had read about it Linux' real-time patch wasn't good enough.

-------
And my tongue would be made of chocolate. Mmmmm. Chocolate.
-rusty
[ Parent ]
Maybe not (4.00 / 4) (#8)
by khallow on Fri Mar 22, 2002 at 12:55:22 PM EST

He wasn't saying the two were synonymous. As you may recall a lot of embedded applications are real time. Hence, the desire to use a real time OS. ;-)

The part I had a quibble with was the statement that you had to give your code to everyone who asks for it. Unless these people are directly modifying the OS source code or some other GPL'ed code (what, I can't imagine), this shouldn't be an issue. And I'm pretty dubious of attempts to directly modify the OS. Sounds like a painfully expensive way to milk that extra fraction of a percent to me. I don't believe that would be a good decision for most companies.

Instead my understanding is that a number of these other OS's (eg, the ones with real time capability) have significant performance advantages over Linux.

Stating the obvious since 1969.
[ Parent ]

Windows Advantages? (4.45 / 11) (#3)
by kuran42 on Fri Mar 22, 2002 at 12:14:56 PM EST

Linux's answer to .NET is POSIX compliance. Oh, wait. POSIX was here first. I guess .NET is Microsoft's answer to POSIX.

The driver issue is the same as it is anywhere else. If vendors don't release specs or code for their hardware, no one can easily support it. Linux is low-cost, and the $30 (I think) for an embedded windows license makes a large difference on the smaller scale, so vendors have a larger incentive to release linux drivers, or at least hardware specs, for their devices. Lower end-user costs means more hardware sales. Profit is a good motivator.

Java is an interesting solution. I think, in the long run, people will just develop how they always have, and then port when they need to. The real number of applications you'd want to share between an embedded device and a desktop machine are somewhat limited.

--
kuran42? genius? Nary a difference betwixt the two. -- Defect

Drivers (4.80 / 5) (#28)
by ShadowNode on Fri Mar 22, 2002 at 04:05:52 PM EST

Component manufacturers don't usually have their driver code available for download. Usually, you will need this, as your platform is not likely the same as the one the drivers where written for. You can usually work out a licensing agreement with them, but in this case the GPL is a lot simpler.

There's likely an open source driver for any given component you'd like to put on your board. Certianly, you'll have to put some work into getting Linux running on a board, but don't fool yourself thinking that CE/Embedded XP "just works" on some board you've just built.

Application development may be easier for Embedded XP, but it isn't any easier to get it up and running on a new board than Linux. On the other hand, many, many applications can be cross compiled for another architecture with little to no effort.

I have been paid to do this sort of thing.

[ Parent ]
Java and WinCE (none / 0) (#48)
by xtremex on Sun Mar 24, 2002 at 09:30:01 AM EST

I used to work for a company that made a custom app for a Compaq IPAQ, completely written in Java. The worst part about it, is it had to load up a DOS box to start the program! It looked super cheesy. ..so how is Java better?

[ Parent ]
Not a Java problem (none / 0) (#49)
by ggeens on Sun Mar 24, 2002 at 11:27:09 AM EST

Java doesn't need a DOS box at all. This is a Windows thing: when windows thinks a program needs a terminal, it will open one. (OK, more of a setup problem than a real Windows bug.)

On "regular" Windows, there is an executable javaw.exe. When you run that, no DOS box will appear. I suppose this will also be available on CE.


L'enfer, c'est les huîtres.


[ Parent ]
CE and DOS Box (none / 0) (#54)
by xtremex on Thu Mar 28, 2002 at 08:33:40 PM EST

This wasnt viable when we were doing this app. Too bad there weren't any Linux PDA available at the time

[ Parent ]
I'll just use whatever works (3.00 / 7) (#5)
by theboz on Fri Mar 22, 2002 at 12:42:14 PM EST

I still don't fully understand what the difference is between an embedded system and a regular one, so this post may be lacking in factual data.

I like to use PalmOS on my Clie because it was made from the ground up to fit that device. Windows CE is simply trying to force the Windows interface onto a PDA. I don't think that works well, because the Windows interface was designed with a keyboard and a larger screen in mind. I am not sure that it would work well on anything other than that specific scheme of input devices. Linux can suffer from the same things. If you vary from the keyboard/mouse/large monitor way of input, Linux can be fairly useless to the end user. I don't know that either Microsoft or Linux will win out in this category because of that.

By the way, on an editorial type note, while I don't really care about what this article has to say, I do like that it is a technical article for once so I voted +1 for it.

Stuff.

PDAs aren't really embedded systems (4.33 / 6) (#7)
by nosilA on Fri Mar 22, 2002 at 12:51:31 PM EST

There's not a totally clear definition of embedded systems, but a good working definition is that it's embedded in another device - not a coputer of its own right.

For example, the computer controlling your automatic transmisison in your car (if you have an automatic car) is a perfect example of an embedded system. Another would be the thermostat in your house (if you have a digital theromstat). The computer in your stereo receiver is another example of an embedded device, as is your DVD player. A TiVo is more questionable, since it really is just a PC without a keyboard. It doesn't really do anything special, it runs a full fledged operating system. Some people might call it embedded, others might not.

Linux has a big problem for embedded systems, the GPL. Companies would rather not give away the secrets to the internals of their embedded system. My company is contemplating switching from FreeBSD to Linux for our product and we're having some serious questions about whether or not that's a good idea.

-Alison
Vote to Abstain!
[ Parent ]
That raises a question then (2.66 / 3) (#9)
by theboz on Fri Mar 22, 2002 at 01:02:07 PM EST

If an embedded system works as the way you described, then why would anyone care about the UI for it? It sounds to me like they are things that people wouldn't really have to mess with much.

Stuff.
[ Parent ]

An ATM for example (3.50 / 2) (#11)
by nosilA on Fri Mar 22, 2002 at 01:08:27 PM EST

An ATM is definitely an embedded system, but it has a user interface. The interface is (usually) a windows application. Every once in a while, I see an ATM with a BSOD. Developing a windows application is easier than writing your own GUI, and you don't really want to include all of X on most embedded systems.

Also, Microsoft wants you to have pretty touch screens for every device, rather than real knobs and buttons, and for that, Windows is 'better.'

-Alison
Vote to Abstain!
[ Parent ]
Another OS? (2.00 / 2) (#13)
by unDees on Fri Mar 22, 2002 at 01:21:58 PM EST

I thought ATMs' interfaces were usually OS/2. And most of the ones I've used have had a text-only interface, with real knobs and buttons and no touch screen.

Now, if I could just figure out why my stupid bank's ATMs occasionally refuse to take deposits (don't tell me 10,000 other people have shown up in the last twelve hours and filled it up with their own envelopes)....

Your account balance is $0.02; to continue receiving our quality opinions, please remit payment as soon as possible.
[ Parent ]

It depends (4.00 / 1) (#14)
by nosilA on Fri Mar 22, 2002 at 01:27:22 PM EST

There's a handful of companies that make ATMs, and they use different OS's. THe OS/2 ones don't usually crash :)

I've seen some pretty ATMs that used windowing systems, but I haven't seen any touch screens yet. But Windows didn't really have good support for that until XP, so maybe the next generation ones will have touch screens.

-Alison
Vote to Abstain!
[ Parent ]
Windows != CE (3.00 / 1) (#35)
by ShadowNode on Fri Mar 22, 2002 at 09:03:56 PM EST

CE has always (as far as I know) had support for touchscreens.

[ Parent ]
Linux and TouchScreens (none / 0) (#47)
by xtremex on Sun Mar 24, 2002 at 09:27:26 AM EST

I'm designing a Linux based kiosk that uses a touchscreen, and it's not a custom driver

[ Parent ]
embedded system details? (4.00 / 3) (#10)
by khallow on Fri Mar 22, 2002 at 01:06:22 PM EST

Linux has a big problem for embedded systems, the GPL. Companies would rather not give away the secrets to the internals of their embedded system. My company is contemplating switching from FreeBSD to Linux for our product and we're having some serious questions about whether or not that's a good idea.

one of the things I think a fairly common OS would have an advantage is when integrating multiple embedded devices particularly from different vendors. It would be nice to have a common interface across all embedded systems. Also the more standard your developer environment is, the cheaper the development costs for customers.

Stating the obvious since 1969.
[ Parent ]

Good for other companies... (4.00 / 2) (#12)
by nosilA on Fri Mar 22, 2002 at 01:16:44 PM EST

But is sucks for the company that does all of the research. Actually, look at Open Source Development Labs for an example of a group of companies working together so one doesn't have to shoulder the entire responsibility of development. But this requires a lot of collboration which is probably good, but difficult.

-Alison
Vote to Abstain!
[ Parent ]

You don't *have* to release code to drivers (4.66 / 3) (#34)
by ShadowNode on Fri Mar 22, 2002 at 09:01:23 PM EST

Linus allows people to release binary only modules for the kernel. (For example, NVidia's drivers).

[ Parent ]
How is the GPL a problem? (5.00 / 1) (#38)
by tzanger on Fri Mar 22, 2002 at 10:28:57 PM EST

My company is contemplating switching from FreeBSD to Linux for our product and we're having some serious questions about whether or not that's a good idea.

How is the GPL a problem? Are you modifying the kernel directly with proprietary information? If so, why?

Drivers can be supplied as binary modules, and application software does not need to be GPL. Where, exactly, is the problem?



[ Parent ]
Messing with TCP/IP stack (none / 0) (#39)
by nosilA on Sat Mar 23, 2002 at 02:30:48 AM EST

The device in question is a router. This requires kernel-level modifications all over the place. But quite frequently when doing very specialized devices, modifying the kernel is necessary for one reason or another. A driver just isn't sufficient.

-Alison
Vote to Abstain!
[ Parent ]
kernel mods (5.00 / 1) (#43)
by tzanger on Sat Mar 23, 2002 at 01:47:10 PM EST

The device in question is a router. This requires kernel-level modifications all over the place.

Unless I'm sorely mistaken I believe that everything from packet filtering and tagging to classification and prioritization/scheduling is modular in the 2.4 kernel series.

I'm not trying to be arrogant but I really think that this is a non-issue in 2.4. I don't have any links handy but I also believe that the entire TCP/IP subsystem can be swapped out in module form (either as an experimental patch in 2.4 or as standard in 2.5)



[ Parent ]
No (2.11 / 9) (#17)
by yicky yacky on Fri Mar 22, 2002 at 01:47:20 PM EST




yicky yacky
**************
'The actual reasonable Britons are correct, you're being a cock.' - Hide The Hamster.
Yes (1.00 / 2) (#25)
by 8ctavIan on Fri Mar 22, 2002 at 03:39:17 PM EST

Well ... I sure hope so.
Injustice is relatively easy to bear; what stings is justice. -- H.L. Mencken
[ Parent ]
I'm sorry for rating you for your signature (4.00 / 1) (#45)
by BlowCat on Sun Mar 24, 2002 at 12:45:41 AM EST

... but it clearly outweighs the comment. While I agree that the word "win" is hardly applicable to OS'es (it can apply to companies behind them), you comment is completely inane.

[ Parent ]
slot machines (2.00 / 5) (#19)
by paf0 on Fri Mar 22, 2002 at 02:20:47 PM EST

There are slot machine developers using embedded MS technology to develop. This is due to the directX platform being easy to develop on and more of a common knowledge among developers than openGL. Linux will not be used for anything other than PDAs and mp3 players until there is a directx port. It is still not a gaming platform, embedded or not.
-----------
The real question is not whether machines think but whether men do. --B. F. Skinner
icq 3505006
And Nevada goes along with this? (4.25 / 4) (#37)
by localroger on Fri Mar 22, 2002 at 09:55:00 PM EST

There are slot machine developers using embedded MS technology to develop.

My understanding is that the state of Nevada requires *all* the source code for any gaming device. They also require this even if the machine made by the Nevada-based company is sold outside of Nevada, if the company wants to keep its Nevada gaming license.

This is why you can trust, for example, video poker machines made by IGT to deal you an actual deck of cards even when they are located in Louisiana truck stops (which in turn allows you to figure out how badly you are being ripped off by reading the payout table).

I cannot believe Nevada would allow a closed-source OS like XP to be included in a gaming device. Unless, of course, these developers are outside of Nevada and not subject to their strict rules, in which case only an idiot would put a quarter into them.

I can haz blog!
[ Parent ]

Have you ever herd of SDL ? (none / 0) (#50)
by danne on Sun Mar 24, 2002 at 04:20:29 PM EST

I think the closest one comes to direct x is sdl.
Doom, Quake, Quake II, Quake III, Unreal.
BTW. Max Payne runs under wine.

www.libsdl.org
www.winehq.com

[ Parent ]
Embedded changes all the rules (4.33 / 6) (#22)
by karb on Fri Mar 22, 2002 at 02:53:35 PM EST

Obviously these numbers grow as your requirements grow, but memory is cheap enough that it should pose little added expense to your project.

Memory and performance are of little matter to most programmers, because they write custom code. Every programmer has probably had at least one instance where they've needed to use less memory, or have faster performance. But it's just not common. Every programmer-week spent fine tuning performance costs at least one to two thousand dollars, and the money is probably better spent on a faster target machine.

However, embedded is very different. We're talking about potentially deploying millions of units, and probably at least hundreds. At this point, it's worth having a programmer work for a year optimizing code if you can save a dime apiece on a processor for two million units.

Same thing with memory. Memory is cheap, but paying two bucks more per on 10k units is a noticeable expense.
--
Who is the geek who would risk his neck for his brother geek?

Embedded memory (4.33 / 3) (#32)
by Lord of the Wasteland on Fri Mar 22, 2002 at 06:39:26 PM EST

Another important point about memory requirements for embedded systems is that for most, everything must fit into memory. Your operating system is competing for resources with all the application code you have to run. Going from 4.8 to 2.0 meg of ROM taken up by your operating system almost 100% more memory on an 8 MB flash chip and 40% more on a 16 MB chip that you can use for your own code and data.

[ Parent ]
Linux isn't a corporate entity (4.50 / 12) (#26)
by ksandstr on Fri Mar 22, 2002 at 03:49:11 PM EST

Thus, I don't think that it should be talked about as if it were. Anyway, most of these arguments have been gone over a whole bunch of times during the "web server benchmark" jihads, and most of the counterarguments for TOSTSNBN's "superiority" also apply here.

Since the writer does make a few of these similar arguments, I'll try to respond to the best of my knowledge.

  • "Windows XP has better development resources in their DDK (Driver Development Kit),"; tell me, what kind of a development kit can beat being able to read the lowest level of the kernel source, and having almost all of the existing driver base to draw from? From what I've understood, microsoft doesn't provide source to its licensees of "windows xp embedded".
  • "and Microsoft's new .NET which will allow you to port Windows applications from a desktop computer to an embedded system seamlessly."; I'm assuming that by "seamlessly", the writer is referring to a simple recompilation of existing source code (at most). While this may indeed be the case, I have to wonder who in their right mind would even consider porting a say, desktop office suite (or even a web browser!) to an environment where every memory page counts and where there is no swap space?
  • "Embedded Linux, on the other hand, has no standard api or development kit."; what do you call POSIX then? The GNU compiler collection? EMACS? Nano-X (aka Microwindows)? There are people who view the lack of a development kit being shoved down your throat as an advantage (myself included).
  • "According to them, Windows XP Embedded has 200+ OEM partners, 85+ IHV and 150+ ISV partners while embedded linux has 78 companies in their consortium." -- Is this information from microsoft, as could be understood from the preceding statement? If I were in the shoes of microsoft (which I thankfully am not) I wouldn't exactly throw up blood looking for numbers that would show the existence of more than viable competition to potential customers. Furthermore, the decentralized nature of Linux makes certain that there will be quite a bunch of other companies and/or projects making use of the Linux kernel and the GNU toolchain who simply haven't had the time and/or the money to join the aforementioned consortium. (This is not to say that pre-existing dominance by numbers in any way indicates technical or support superiority. We all know how well-oiled the microsoft marketing machine is.)
To reiterate, linux is not a corporate entity like microsoft is. Linux is but the kernel; you can't stamp it out by forcing any number of companies into bankruptcy. My answer to the question asked in the story title is "hopefully". I'd hate to live in a world where every single digital device comes with the microsoft tax.



Fin.
Both have their places (3.50 / 4) (#31)
by ShadowNode on Fri Mar 22, 2002 at 04:20:00 PM EST

Linux is NOT ready for your average Palm using PHB type. CE is easier to use, and that's all that really matters for this. However, for customized PDA devices, it doesn't really matter. The device is likely to serve one purpose, so the user is only going to use a few custom programs. Linux in the embedded world is usefull for custom devices, because it's easier to alter than CE/XP Embedded. It doesn't really matter weather or not MS Pocket Word runs on some field data gathering device - that's not what it's for.

CE/Embedded XP makes absolutley no sense in headless devices; the GUI doesn't matter at all if there's no screen. This is the majority of the embedded world, and this is where Linux is winning today.

I've been paid to do this stuff in a company that uses both Linux and CE. Believe it or not, Linux is more popular with embedded customers.

CE isn't suited to a palm-type device, either. (4.00 / 1) (#33)
by Trepalium on Fri Mar 22, 2002 at 09:00:43 PM EST

CE/XP Embeded/whatever-the-name-of-the-week-is-today isn't great for a palm-type device either. The GUI is too invasive for a device which will primarily be used with a stylus. WinCE seems better suited to devices that want to be slightly smarter than a personal organizer/Palm Pilot, but without being a full blown laptop. For devices that rely on networking services, like NAS appliances, etc, Linux does make sense. However, things like WindRiver's VxWorks is still one of the most popular embeded OS's, dwarfing both Microsoft and Linux in this field.

[ Parent ]
True... (3.00 / 1) (#36)
by ShadowNode on Fri Mar 22, 2002 at 09:30:18 PM EST

But when you add PocketPC, it is a decent PDA interface. CE on it's own is for more embedded/headless devices.

[ Parent ]
Qtopia. (4.00 / 2) (#40)
by alge on Sat Mar 23, 2002 at 07:04:28 AM EST

What is this you say, linux devices don't have a standard GUI? Well, wake up, and go check out Qtopia. If you have any Qt app, porting it to Linux/Qtopia (or Anything/Qtopia) should be piece of cake. trolltech.com seems to be down so I can't provide any direct link, but check out the review at linuxdevices.com. It's got your precious SDK, it has several apps already ported (opera, ..), what more do you want? (:

vi er ikke lenger elsket her

Short answer NO, long answer maybe (4.00 / 1) (#41)
by eviltwin on Sat Mar 23, 2002 at 08:35:10 AM EST

Why does there need to be a winner anyway ? isnt the world big enough for many people. The issue i see unfortunately with linux is that its a win or lose in so many peoples minds - its war and we need to beat them (we all know who them are)

Why ?

Linux wont win for a long time if at all because at the moment it is like all open source software, a hodge podge of conflicting standards and implementations with no controlled standards and no fully documented systems, there is no standard SDK and no simple interface, in short anything you need to do you almost have to do from scratch and thats before you dive into the minefield that is linux evangelism - criticise the product and get slammed (it makes constructive criticism a waste of time) as evil and that makes you pro Microsoft.

Why does it have to be a war? who declared it?

Maybe a vendor can come along and do for embedded systems what Redhat has done for servers and i believe Lycoris will do for desktops, but as has been proven time and again linux doesnt work in most cases as a business model, you cannot develop something for nothing.

its unfortunate because i like linux, in many applications its the best fit.

All generalisations are false, including this one.
Have you ever had to write a driver from scratch? (4.50 / 4) (#46)
by BlowCat on Sun Mar 24, 2002 at 01:13:04 AM EST

The issue i see unfortunately with linux is that its a win or lose in so many peoples minds

It's a western approach. People are used to it because competition for the consumer is always competition between companies. I remember visiting a Linux User Group in Saint Petersburg, Russia. There were absolutely no talks "how do we win". Most people were rather asking "how do I use it effectively" or "what else can I do with Linux".

hodge podge of conflicting standards and implementations with no controlled standards

I'm yet to see an OS that only implements established standards without establishing its own standards. In case of embedded systems, you are the distributor, not RedHat or Slackware. Pick the packages implementing a non-conflicting set of standards.

no fully documented systems

I agree here. Still, I'm yet to see an OS that fully documents its kernel.

there is no standard SDK and no simple interface

You don't need it on embedded systems unless you let users download third party software and agree to provide support even after that.

in short anything you need to do you almost have to do from scratch

Wrong. You can reuse existing sources. Adding support e.g. for a new network card usually requires a 30-line patch to an existing driver.

thats before you dive into the minefield that is linux evangelism - criticise the product and get slammed (it makes constructive criticism a waste of time) as evil and that makes you pro Microsoft

man procmailex. On the other hand, what you describe is not typical for embedded engineers.

Maybe a vendor can come along and do for embedded systems what Redhat has done for servers

Ever heard about Lineo and Montavista? The fact that they are not thriving shows (IMHO) that most companies don't have problems hiring Linux developers and can, in fact, reuse the software instead of "starting from scratch".

[ Parent ]

kernel docs (5.00 / 1) (#52)
by pb on Mon Mar 25, 2002 at 01:42:03 PM EST

The OS that fully documented its kernel was UNIX; check out the Lions book, it's very intresting reading.
---
"See what the drooling, ravening, flesh-eating hordes^W^W^W^WKuro5hin.org readers have to say."
-- pwhysall
[ Parent ]
Reasons why I think embedded Linux will win (3.80 / 5) (#42)
by salsaman on Sat Mar 23, 2002 at 12:11:22 PM EST

1. The majority of embedded devices will not have screens. This means in effect you will be running console mode linux or DOS. I know which one I prefer.

2. Cost. Most embedded devices in the future will probably be sub $100 or even sub $50. How much does M$ charge for an embedded OS ?

3. Drivers. You point out that there are more drivers for Windows than for Linux. This is probably true, but most devices these days *are* supported by linux. Also, if you are producing a million of a particular device, the costs for writing a driver or two would be miniscule when spread over all those devices.

4. Being able to change/ remove bits from the kernel. Embedded devices will probably not be the most complex of things, so it's likely that certain parts of the kernel would be used frequently, other parts probably not at all. Having the source code enables you to optimise so that the frequently used parts of the kernel could be made more efficient.

5. Familiarity - most people working on embedded device design would likely be CS or EE graduates. This means that they will probably already be familiar with Linux/Unix and comfortable working with it.

6. The GPL. Because of the GPL, any kernel tweaks for one embedded project would automatically be available for all projects.

Linux, *BSD, DOS (none / 0) (#44)
by BlowCat on Sun Mar 24, 2002 at 12:39:57 AM EST

Strictly speaking, 5 of your 6 arguments are applicable to *BSD as well. And speaking of GPL, I think that at least some companies would prefer not to disclose their changes.

Also I think that saying that Windows without GUI is essentially DOS is wrong. DOS is a very different OS (if it can be called an OS) - it doesn't rely on memory management and doesn't have strict separation between user and kernel code.

[ Parent ]

Huh? (none / 0) (#51)
by pb on Mon Mar 25, 2002 at 01:38:22 PM EST

First of all, this article is specifically about Embedded Linux vs. Embedded Windows, no more, no less. Neither of these, in my mind, are very large players in the embedded market, but like it or not they are the subject of this article. Therefore, yes, *BSD could be used here; so could QNX, or LegOS, or DOS (which is equally irrelevant). But it has nothing to do with this article. So if you feel like *BSD is being snubbed here, you're right; but you're also off topic. Maybe you should write a more comprehensive article about embedded systems, the current players in the market, and the alternatives available to them; THEN you could discuss *BSD and it would make sense in that context.

And DOS has relied on memory management for a long time, especially since they had to manage more than 640k, but segmentation is also a form of memory management. DOS doesn't really have memory protection, unless you do it yourself in protected mode; but many versions of Windows don't really have memory protection either. Ditto for separation of user and kernel space. In either OS, I can--as a user--add a file that will get executed 'in the kernel'. Either a DLL, or a new IO.SYS, or whatever. So, yes, Windows and DOS are different, but not for those reasons...
---
"See what the drooling, ravening, flesh-eating hordes^W^W^W^WKuro5hin.org readers have to say."
-- pwhysall
[ Parent ]
Simple question (none / 0) (#53)
by mewse on Mon Mar 25, 2002 at 09:03:35 PM EST

How do you define 'win'?

mewse

(Anyone else notice that about half my comments are 'Simple Question's?)



Will Embedded Linux Win? | 54 comments (44 topical, 10 editorial, 0 hidden)
Display: Sort:

kuro5hin.org

[XML]
All trademarks and copyrights on this page are owned by their respective companies. The Rest © 2000 - Present Kuro5hin.org Inc.
See our legalese page for copyright policies. Please also read our Privacy Policy.
Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
Need some help? Email help@kuro5hin.org.
My heart's the long stairs.

Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!