Loading user information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading user information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Mike Hall - Why are there so many operating systems?

3 minutes, 32 seconds


Right click “Save as…”

You've seen Mike Hall give a tour of his lab. You've seen him build an operating system for a new device. So why do we need a new operating system? Why can't Windows XP do everything? Mike answers.

Oh, and he shows off a really cool virtual roller coaster robot that's controlled by Windows CE. Made by Kuka, the "RoboCoaster" (you can ride this in Legoland in Denmark).


Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
  • I'm curious how Longhorn affects this.  Paul Thurott posted some time ago an article on the new structure of the OS (core stuff, language add-ons, etc.)  Does this organization of Windows come from XP Embedded?  If so, is there convergence between the two in the future?
  • zbzb

    Why i Can't download to watch,only watch oneline??


  • WinInsiderWinInsider Mike, MCAD
    To download the video, right mouse click on this link and select "Save Target As..."

    Note: This will work in IE only.

    UPDATED: forget what I said above, it apears that this method seems to be blocked.
  • scobleizerscobleizer I'm the video guy
    Yeah, right now the videos are on a streaming media server so can't be downloaded.

    I have to reupload all the videos so that you can download them. It'll take some time. I'm working on it.
  • Jaz00Jaz00 Jaz00
    Use A Package called SDP. It will create a windows media file from a streaming server that can be used by any normal media player ..

    Although always check that you are allowed to make an offline copy.
  • Great stuff the Windows XP embedded. If I take it right, I will be able to build, say a cashregister with the embedded version of Windows XP. So I would only need a compact flash card and a PC108 motherboard to be able to boot this thing.
  • barlo_mungbarlo_mung w00t

    He points out that one difference is that CE supports multiple architectures (mips, arm etc) and XP needs x86. I'm not convinced this is true.
    NT was designed as a layered system with the HAL providing core specific support. So wouldn't they just need a HAL for arm and XP would run on it?

  • mikehallmikehall Mike
    It's true that previous versions of Windows NT ran on multiple processor cores, NT4 ran on MIPS R3000, DEC Alpha, and x86 - support for the MIPS and DEC processors was dropped though - Windows 2000 and Windows XP are only available on x86.

    Windows XP Embedded is a componentized version of the Windows XP Professional binaries which only ship for x86.

    Windows CE is built with multiple processor core support built into the product "Platform Builder" is the tool that's used to configure and build your Windows CE operating system image, you choose which O/S components you want and the processor and BSP you want to target.

    - Mike
  • mikehallmikehall Mike

    Yes, correct, you choose which 'bits' of the Windows XP Embedded operating system you need for your device, you can completely replace the shell, add your own applications etc...

    I've pinged the Scoble to get him over to record a Windows XP Embedded video...

    - Mike
  • Well I see a number of features that I like to see in the Desktop version of Windows...

    Mike, said that Windows CE is Real time and that its kernel footprint is about 200Kb and componentised. Can you imagine if Windows XP where that way? we could have our PC turned in to speed demons.

    I think MS is capable of using a single OS Kernel and getting rid of competition, in a single shot!

    What is in NT that doesn't allows it to be real time?.  Alright! I know that NT kernel must do a lot of more stuff. 

    Please can someone explain me why this hasn't been done yet? or all of what I said is just none sense?

  • mikehallmikehall Mike
    When we're talking about real time we're talking about deterministic response times to external hardware interrupts, the time taken from a hardware interrupt firing to the time a device driver in the O/S is working on the interrupt - Windows XP uses a queue based system to deliver interrupt messages to a driver, by it's very nature this is non-deterministic, imagine a robot in a manufacturing plant building a car or a RoboCoaster - check out this video from Kuka - http://archiv.kuka-roboter.de/robocoaster/video/video1.html this needs to be hard real-time.

    You may be interested to know that this robot is using Windows CE real-time capabilities for command and control of the robot - nothing like a PDA, eh!

    Windows XP/Embedded can be a real-time operating system with the addition of some 3rd party real-time extensions.

    Check out the following page for more information about real-time systems and real-time extensions for Windows XP Embedded - http://msdn.microsoft.com/embedded/choose/techinsights/realtime/default.aspx

    - Mike
  • raptor3676 wrote:
    Well I see a number of features that I like to see in the Desktop version of Windows...

    Mike, said that Windows CE is Real time and that its kernel footprint is about 200Kb and componentised. Can you imagine if Windows XP where that way? we could have our PC turned in to speed demons.

    CE makes a number of size/speed tradeoffs to get that small. Read up on CE's memory model at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dncenet/html/advmemmgmt.asp. I'm a Pocket PC developer, mainly, and we keep hitting that DLL load problem.

    CE 3.0 and earlier don't build a complete set of page tables that the processor can access automatically, when encountering a virtual address it doesn't have in its Translation Lookaside Buffer. The TLB is a special hardware cache which maps a virtual address to a physical address in constant time. The x86 and ARM processors' memory management units can fill the TLB in hardware without raising a software interrupt, but this feature wasn't used, partly because MIPS and SHx processors don't offer this feature. The result is that the processor raises an exception (page fault) every time a page is accessed which hasn't been accessed recently. CE 4.1 (IIRC) and later support this feature and get something like a 20% speed improvement over previous versions.

    The other impact is of course that CE doesn't offer anything like the feature set of XP. XP's GDI offers world transforms and multiple mapping modes, allowing you to draw using different co-ordinate systems and the OS to perform (most) graphical scaling. CE only offers 1:1 mapping between GDI co-ordinates and screen pixels. CE drops a large number of drawing APIs: where XP has MoveTo, LineTo, etc, CE only offers Polyline.

    CE doesn't have much of a graphics acceleration API, essentially only allowing hardware-accelerated blits (bitmap copies to the screen). XP's graphics stack allows the hardware to claim accelerated support for a complicated operation, then call back into GDI to perform some portions of the operation in software and divide it into simpler operations that can be accelerated. This back-and-forth nature allows virtually the same output to be produced on very different hardware, but it can be slow, which is why DirectX exists (which is all-or-nothing - either all accelerated, or all emulated).

    I actually wonder if CE's days as the basis for Pocket PC and Smartphone are numbered - the requirements of those devices are drifting away from the requirements of a hard real-time embedded system.
  • >>I actually wonder if CE's days as the basis for Pocket PC and Smartphone are numbered

    My hunch would be that CE is put out to pasture after 5.0, and that future Windows Mobile versions (after the expected Windows Mobile 2005) are based on XP Embedded. [and you can be pretty sure someone will have got it running on ARM with real-time extensions]

    This would explain the 'is Cardhu [Ce 6.0] alive or dead' debate, and [as I've posted as a comment to the recent CE 5.0 licensing story] also why Microsoft might not be so precious about licensees' derivative works on CE5.0 and the platform fragmentation this could cause.

  • mikehallmikehall Mike
    I can assure you the next version of Windows CE is alive and well - Windows CE 5.0 (Macallan) is now released, and the work is now underway for the next version. Is Windows CE dead? - no, far from it...

    - Mike

Remove this comment

Remove this thread


Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.