![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 10/28/2010 4:35 PM, Orchid XP v8 wrote:
>
> More specifically, given that Windows should never, ever, under any
> circumstances, be running on a single-function device like this, why are
> all the device drivers being written for Windows?
>
Um... Because Embedded Windows is extremely common, and very easy to
write software for? Embedded Windows isn't your garden variety desktop
OS, though it mirrors a lot of the desktop stuff in regards to API and
such; heck, a laser projector we used had only an interface to it in C#.
--
~Mike
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 10/29/2010 4:04 AM, Invisible wrote:
>>> More specifically, given that Windows should never, ever, under any
>>> circumstances, be running on a single-function device like this, why
>>> are all the device drivers being written for Windows?
>>
>> What would you run instead?
>
> How about just writing the few dozen lines of C is actually takes to
> prod a few bits in the framebuffer, write some stuff on the screen, talk
> to the card reader a bit, and make the dispenser chuck out some money?
There's a reason the embedded system has an OS. Sure, if it were running
a microcontroller, you'd probably be doing just that, and spending a
huge amount of man-hours writing code to transfer bitmaps from
advertisers to the display, creating a font (or reading a well known
font format) to display information on the screen, to do basic drawing
functions for HMI stuff, to interact with the flash drive on a hardware
level, to deal with the TCP/IP protocol through an embedded NIC so it
can communicate with the machine, or to program the UART to communicate
with the one sensor that sends back everything in RS232. To handle
encryption and everything else.
Real simple. :)
> OK, you're right, it probably *is* faster to take some code that
> somebody else already wrote. But I still think grabbing the relevant
> parts of (say) the Linux kernel is going to be quicker and easier than
> porting the entire Windows OS (most of which you don't need) to a new
> platform and trying to make it work...
Always... There's a lot to it, actually. Sure, the hardware vendor may
choose to embed Linux as their OS of choice. But the more common choice
is embedded Windows, so that's what gets used.
--
~Mike
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 10/29/2010 11:21 AM, Patrick Elliott wrote:
> In this specific case, probably true, but then you have "phones" and
> other things running this OS too.. Gosh, my phone has 2GB memory. Gee,
> what apps do you have on it? Hmm, not much, I only have 200MB free, the
> rest is Windows. lol
>
> Ok, ok, its not *that* bad, but still.. ;)
>
We've managed to get Embedded Windows XP under 1GB.. ;) Of course, once
you install the .NET framework, and all of the other things needed to
run the machine, the install shoots up to 1.5-2GB.. :D
--
~Mike
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Mike Raiford wrote:
> We've managed to get Embedded Windows XP under 1GB.. ;) Of course, once
> you install the .NET framework, and all of the other things needed to
> run the machine, the install shoots up to 1.5-2GB.. :D
That's why there's a "compact" version of .NET.
--
Darren New, San Diego CA, USA (PST)
Serving Suggestion:
"Don't serve this any more. It's awful."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Mike Raiford wrote:
> Obviously there must be some sort of protocol, and the device's firmware
> probably only communicates the bare minimum to work with the host.
Well, the essential point was risk reduction. Sure, you *can* reverse
engineer it. Now tell me how long it'll take, with the same accuracy with
which I can predict how long it'll take to buy a copy of Windows.
--
Darren New, San Diego CA, USA (PST)
Serving Suggestion:
"Don't serve this any more. It's awful."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 11/3/2010 10:11 AM, Darren New wrote:
>
> That's why there's a "compact" version of .NET.
>
I thought that only applied to CE?
--
~Mike
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 11/3/2010 10:14 AM, Darren New wrote:
> Mike Raiford wrote:
>> Obviously there must be some sort of protocol, and the device's
>> firmware probably only communicates the bare minimum to work with the
>> host.
>
> Well, the essential point was risk reduction. Sure, you *can* reverse
> engineer it. Now tell me how long it'll take, with the same accuracy
> with which I can predict how long it'll take to buy a copy of Windows.
>
Hmm, thousands of dollars in programming hours, and the risk that you
get something critical wrong or, $75 per machine for a license.
Might make sense if you plan on manufacturing a huge amount of machines.
Even then, is it worth loss of revenue or risking a lawsuit because the
device malfunctioned, and the malfunction would have been easily avoided
had you used the libraries under windows?
Also, Time to market.... You have something cutting edge, and it takes
several more months to develop because you don't want to pay for a
Windows license. and you miss a window of opportunity. Not good.
--
~Mike
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>> Well, the essential point was risk reduction. Sure, you *can* reverse
>> engineer it. Now tell me how long it'll take, with the same accuracy
>> with which I can predict how long it'll take to buy a copy of Windows.
>>
>
> Hmm, thousands of dollars in programming hours, and the risk that you
> get something critical wrong or, $75 per machine for a license.
While these arguments seem sound, it still doesn't really address the
whole "you don't need an entire desktop OS just to run a trivial
embedded device like an ATM" angle.
Although, if our old dishwasher was running Windows, I guess that would
explain why it eventually stopped working. :-P
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 11/3/2010 11:19 AM, Invisible wrote:
>>> Well, the essential point was risk reduction. Sure, you *can* reverse
>>> engineer it. Now tell me how long it'll take, with the same accuracy
>>> with which I can predict how long it'll take to buy a copy of Windows.
>>>
>>
>> Hmm, thousands of dollars in programming hours, and the risk that you
>> get something critical wrong or, $75 per machine for a license.
>
> While these arguments seem sound, it still doesn't really address the
> whole "you don't need an entire desktop OS just to run a trivial
> embedded device like an ATM" angle.
ATM's aren't exactly trivial. But, then they also have existed for years
with their own OS, no embedded Windows, but now they want to display
glitzy advertisements while you pull your money out.
I'll never forget the time I used an ATM machine, and as it was
processing the transaction I hears several of the characteristic IE link
click sounds as it finished up.. that was a bit worrying.
> Although, if our old dishwasher was running Windows, I guess that would
> explain why it eventually stopped working. :-P
It does. You forgot to install the latest security update. Good luck
reinstalling windows on that. :D
--
~Mike
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Mike Raiford wrote:
> On 11/3/2010 10:11 AM, Darren New wrote:
>> That's why there's a "compact" version of .NET.
> I thought that only applied to CE?
Probably. It's on the xbox too, but I don't know what that runs.
I wasn't denying your experience. I was simply pointing out it's a known
problem with a known fix. :-)
--
Darren New, San Diego CA, USA (PST)
Serving Suggestion:
"Don't serve this any more. It's awful."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |