The Xbox Operating System

Sorry it's been a while since my last post - blogging is hard to keep up with, especially when it's not your job.  I'm off to Japan next week, so it will probably be another week of silence before you hear from me again.

One of the first questions I get when someone hears I work on Xbox is "So, what operating system do you guys use?  Windows 2000, right?"  I am honestly not sure where the Win2K misperception comes from, but Xbox runs a custom operating system built from the ground up.  While our operating system exports many of the same APIs found in Win32 (e.g. CreateThread or WaitForSingleObject), not everything is there.  For instance, there is no use for CreateWindow on Xbox - all graphics are done through (our own flavor of) Direct3D.

There are a number of reasons both Xbox and 360 have their own OS.  First, it gives Xbox a chance to own its own destiny in terms of architecture.  When you have your own operating system, it's easy to go in and change things.  Second comes performance.  There isn't much of a hardware abstraction layer on Xbox - most stuff talks almost directly to hardware.  This eliminates a lot of software overhead you might find on a PC.  Third is security.  With our own operating system, it also becomes a lot easier to design & implement our own security architecture.  As the community is finding out, there is a lot of custom stuff.

The operating system is more than just the kernel.  On Windows, you have critical components such as explorer.exe, shlwapi.dll, user32.dll, and others that are required for your system to function.  On Xbox 360, we have similarly critical components.  When you see a required system update from Xbox Live, we are mostly updating these critical components with fixes as well as new features.

That's a primer on our operating system.  I wouldn't want to spill all my guts in one post 'cuz then I'd have nothing to talk about later on.  Let us know if you want to know more about the OS in the comments...

Comments

  • Anonymous
    February 17, 2006
    Wow, I guess I really am a nerd for knowing that, that's a nobrainer.  From now on when people ask you about the OS you should just say "Why Linux of course"

    gt-Feelz Good

  • Anonymous
    February 17, 2006
    The comment has been removed

  • Anonymous
    February 17, 2006
    It's interesting that WinCE is not used. The message from MS is that WinCE would meet requirements for a device like this, but when XBox was designed, the old "roll-your-own-RTOS" decision with typical justification was made. It would have been a much better story for WinCE if it ran XBox.

    Thanks for sharing this information... Really interesting.

  • Anonymous
    February 17, 2006
    My question on the OS is that in terms of features and functionality, will it continue to be significantly improved over the lifetime of the console or is their only plans to get it to a certain set of features and then cease development except for bug fixes and security updates?

    While I know you couldn't say much about future features and updates if they are in the works, I'd hope that not only will Microsoft be competitive with other console developers (if needed) in terms of features but will continue to innovate in the living room area and not just through Media Center.

    I would easily pay the cost of a full game for a fully featured internet application sweet that would let me check my e-mail(imap please), surf with a fully featured browser, read rss feeds or even let me admin my servers via a tv formatted terminal services client. Heck you can sell me a first party wifi xbox live keyboard and mouse to go with it also.

    While alot of this functionality can no doubt be found in similar apps made by third parties for running on the Media Center platform, you wouldn't be able to beat an optional "Internet" blade on the dash board with these features made by Microsoft.

    So regardless of whether or not these features are coming, how aggressive is Microsoft being about bringing any new features typically reserved for desktop platforms.

    -Ric

  • Anonymous
    February 17, 2006
    Would it be possible to port .NET to the 360 for Xbox Live arcade development?  By 'possible' I mean practical, by which I mean 'do you guys have any plans to do this'? ;)

  • Anonymous
    February 17, 2006
    That's very cool. Is it possible for external developers to write applications on the OS APIs? Are they documented any where? And, I was interested on Ryan's question about .NET for the XBOX...

  • Anonymous
    February 17, 2006
    Недавно с удивлением обнаружил, что Microsoft создал и давным-давно продаёт ещё

  • Anonymous
    February 17, 2006
    I'm curious if the Xbox OS has any sort of background disk defragmenter for the hard drive. Something similar to what Windows has, except it runs as needed in the background instead of when the user tells it to. With the size of Xbox 360 hard drives set to grow (hopefully) soon, game data caching, and the increase in XBL content, I would imagine that the file system could eventually become pretty fragmented and drive performance could be impacted.

    Though it isn't directly related to the OS, I will third it since somebody else already brought it up. The ability to use C# for XBLA games would be an amazing bonus to the Xbox 360 development process. I think there are a LOT of indie developers out there who definitely want to hear a "yes" or "no" from Microsoft on C# support for Xbox 360. Are there any plans to support C# (in its managed capacity, of course) for Xbox 360 development?

    Thanks for your time,
    Nick

  • Anonymous
    February 17, 2006
    More info on the OS please! It's interesting.

  • Anonymous
    February 17, 2006
    Enough of this fluff... I once again request multi-person voice chat! Provide! That is all. Thank you.

  • Anonymous
    February 17, 2006
    I agree with Ric. Also, I doubt they'll let us develop our own apps for security reasons. It's a shame though, I could think of hundreds of cool things to do :(

  • Anonymous
    February 18, 2006
    would it be possible in the future, you guys release a Dreamcast emulator for the XBOX 360? I mean, it was based on WinCE or something like that. I bet millions will pay for it via XBOX LIVE ARCADE. In fact, you should start doing official emulators for Sega consoles, like Sega CD, Saturn, DC. How cool is that? not only backward compatible with XBOX, but with Sega too.

  • Anonymous
    February 18, 2006
    I don't know where I first saw it, but since the announcement of the original Xbox I've read that its OS was a customized version of the Windows 2000 OS.  Interesting to hear that it actually isn't.

    Though it is pretty obvious that it's some sort of NT-like system.  Given, for example, that there is a IMAGE_XBOX_SYSTEM constant in the Windows header files to indicate that a PE file is designed for Xbox.

  • Anonymous
    February 18, 2006
    I noticed that the market place can get a little lengthy to browse, in the future it will need updateing. I expect this will be a likely enhancement. I disagree with what Ric said, keep the mouse out of the house. This is a family room. Get voice regognition technology or gestures to really make my TV surfing a family activity.

    Are we likely to see more blades appearing in the OS? There are rumours of a Direct TV blade across the web (i'd suggest this is rubbish) - but will we see the catagories change and grow? From a UI Design point of view i'd guess you guys want to keep the blade catagories, and organise the content within each blade.

    PS - I'm loving the microsoft brand these days (i'm a convert FROM mac!).

  • Anonymous
    February 18, 2006
    A .net environment running isolated from the rest of the xbox would be very useful, like the emulator for xbox 1 runs as an app, the .net framework as an app would be a happy compromise. No real need to get full access to hd for example just an isolated area/partition.

  • Anonymous
    February 19, 2006
    SO IM TAKING IT THAT THEY ARE EXPECTING VIRUSES WITH THE WEB BROWSING ON THE 360, AND IM GUESSING THAT THEY OPERATING WILL ALLOW US TO FORMAT THE 360 LIKE A PC?

  • Anonymous
    February 19, 2006
    The comment has been removed

  • Anonymous
    February 19, 2006
    It would be interesting to hear how the updating of the OS works.

    When the XB 360 "hangs", or suffer any other problems, does the errors get logged and sent to MS for troubleshooting? Personally I would feel better if the dev teams got logs from my console whenever I suffered a problem.

  • Anonymous
    February 19, 2006
    The comment has been removed

  • Anonymous
    February 19, 2006
    The comment has been removed

  • Anonymous
    February 19, 2006
    The Xb 360 could have the potential of becoming a true hub for all our entertainment AND information needs. If MS play their cards right, they could really dominate the PS3.

    Sorry for my several posts. I've got so many ideas :-D

  • Anonymous
    February 19, 2006
    I know microsoft has said they don't want to own the living room, but the 360 is well equipped to do just that.

    Also I don't know if you can answer this one, but is the 360 operating system at all comparable to the unreleased windows vista?  I'd like the 360 to be capable of fully taking advantage of vista.

  • Anonymous
    February 19, 2006
    The comment has been removed

  • Anonymous
    February 20, 2006
    It's probably just their Xbox exploding... happens to me all the time :P

  • Anonymous
    February 20, 2006
    As near as I can tell, the origin of the Windows 2000 story is at WindowsForDevices.com:

    http://www.windowsfordevices.com/news/NS3988467635.html

    Basically, that says that the original Xbox OS had its roots in Windows 2000 (but was quite a bit different by the time it was retooled) and the Xbox 360 OS had its roots in the Xbox OS (but was similarly redone).  Is this a somewhat accurate portrayal of events?

  • Anonymous
    February 20, 2006
    The comment has been removed

  • Anonymous
    February 21, 2006
    In regards to my post above; if support for western european keyboard layouts is "impssible", i.e Microsoft doesn't want to spend time correcting the problem :-P, at least give us the possibility to write special characters using ascii code.

    I would be accept holding down alt for example and pressing 229 to get an "å".

  • Anonymous
    February 21, 2006
    The comment has been removed

  • Anonymous
    February 23, 2006
    The comment has been removed

  • Anonymous
    February 25, 2006
    sachin: sorry, documentation for the Xbox 360 Development Kit is subject to being an approved Xbox 360 game developer.  I'm sorry that I can't publicly show the information you are asking for.

  • Anonymous
    March 12, 2006
    The comment has been removed

  • Anonymous
    April 07, 2006
    The comment has been removed

  • Anonymous
    May 02, 2006
    The comment has been removed

  • Anonymous
    June 05, 2006
    The comment has been removed

  • Anonymous
    June 17, 2006
    i felt so sad now... because my xbox 360 hang after playing whatever games for 5 mins. i don't know why... but before it hangs i update it's software when i insert BATMAN BEGINS xbox game. when i insert xbox 360 games... it just can't work. some don't even start up... what really happen?

  • Anonymous
    July 10, 2006
    I have owned a Xbox 360 for more than 2 months and based on my experience so far, i think it is still a beta product.  My Xbox 360 consistently hangs - while in game play, while downloading movie trailer, while playing movie trailer, while playing songs from my iPod, etc...

    Worst of all, Halo 2 seriously lags in Live play.  

  • Anonymous
    August 01, 2006
    PingBack from http://www.xboxic.com/news/232

  • Anonymous
    August 26, 2006
    I am interested to know if there is a fix for the crashing that occurs when you are playing a game that creates large save files(like Elder Scrolls). If there is a fix for this please e-mail me, dacybertank@hotmail.com. I have been sitting with a half completed game for almost 2 years because it starts crashing when you get about halfway through it.

  • Anonymous
    September 20, 2006
    hmm xbox used alot of Windows NT kernel (sure a snapshot from w2k) but still NT kernel.

    You may have customized alot of the API layers you expose but NTOSKRNL is still there ... :)

  • Anonymous
    September 24, 2006
    The comment has been removed

  • Anonymous
    November 05, 2006
    Is it possible to acquire an image of the XBox OS?  My XBox has went kaput(Your XBox Requries Service message with no error code), and I'm suspecting a fried hard drive.  Microsoft won't fix it because I've opened it once before to replace the DVD drive, so I'm looking for some way to get a copy of the XBox 1 OS so I can put it on a new hard drive and get my system up and running again.  You can e-mail me regarding this at marcusdean.adams@gmail.com

  • Anonymous
    December 04, 2006
    i ask if som 1 can buld a os for the xbox an if he can learn me how can i do it regards bazoka

  • Anonymous
    December 11, 2006
    hello.. Can anybody tell me if xbox supports java?

  • Anonymous
    December 26, 2006
    is it possible to boot an xbox with a cd like you would with a normal computer?

  • Anonymous
    March 04, 2007
    it is possible to put another OS such as linux on the xbox but you need a modchip, which is a legal grey area

  • Anonymous
    March 04, 2007
    why did they nto use CE anyway? was it due to CE's lack of directx support?

  • Anonymous
    March 07, 2007
    Is there any way to get ahold of an OS Disk or download the OS from a third party?

  • Anonymous
    March 26, 2007
    The comment has been removed

  • Anonymous
    April 06, 2007
    i was wondering how to upgrade hard drive for my xbox

  • Anonymous
    April 07, 2007
    hey guys, just wondering if there's a place i can go to download the OS onto my laptop? or just a desktop theme that implements the blade system (such as desktop / my computer / control panel, etc.) thanks!

  • Anonymous
    May 09, 2007
    microsoft should create a whole different operating for game systems and even maybe regular computers than just building from an older operating system...

  • Anonymous
    June 13, 2008
    PingBack from http://rose.dvdvideosite.com/xboxharddriveoperatingsystem.html