Building robust USB 3.0 support


One of the important roles Windows plays as part of a broad ecosystem is developing support for new hardware. This is a pretty involved process and so for this post we wanted to take a look at supporting USB 3.0, something we know everyone is anxious to be using because of the improvements it brings. This is also our first video post – we aimed for "engineering" videos and not high production values but I think we make our point (note videos are embedded in HTML5 and available for download). If you’re like me when looking at the video, you might think that those file copy progress indicators are looking a bit dated…stay tuned. This post was authored by Dennis Flanagan, the Director of Program Management for the Devices and Networking group. –Steven

With throughput up to 10 times faster than USB 2.0 and improved power management that results in longer battery life, USB 3.0 introduces compelling reasons to improve the world’s most popular PC interface. By 2015, all new PCs are expected to offer USB 3.0 ports, and over 2 billion new "SuperSpeed" USB devices will be sold in that year alone.

 Figure 1 - USB 3.0 PC Market Forecast
In-Stat, June 2011

Figure 2 - USB Device Market Forecast, June 2011
In-Stat, June 2011

The decision to invest in USB 3.0 was an easy one to make, but doing so without compromising the existing USB ecosystem was a big challenge to overcome. Our design had to follow the revised 3.0 specification precisely in order to enable emerging USB 3.0 hardware. There are also billions of older USB devices that Windows must remain compatible with. How do you write a single piece of software to enable the latest technology on evolving hardware, while making sure it still works with 10 billion existing devices in homes and offices across the world?

First, a bit of history

In 1996, the USB standards organization released the first USB specification, which defined two speeds for USB devices: low speed (1.5 Mbps) and full speed (12 Mbps). At the time, the idea of “hot plugging” a device (plugging in and unplugging without needing to reboot), was revolutionary. USB also supported different ways to transfer data: bulk, for devices like printers that send a lot of data and forget about it; isochronous, for devices like speakers that continuously receive data in a specific order; and interrupt, for devices like keyboards that only send data once in a while.

The 1996 specification also moved the complexity from the USB device into the PC, making devices cheaper and simpler to implement. These features made USB the most attractive external device connector. As a result, device makers adopted USB and joined the standards body to define common interfaces between software and hardware for different classes of devices. These common interfaces allow a single software driver, a class driver, to support an entire type of device. From the beginning, Microsoft embraced the USB technology and the standards organization, contributing to many specifications over the years. We introduced USB 1.1 support in Windows 95 OSR 2.

In 2000, the USB 2.0 specification came to light with a new, high speed (480 Mbps). Unfortunately, the host controller, the hardware used to connect a PC to devices, was not compatible with earlier versions. High speed devices worked with all controllers, but low and full speed devices could not work with USB 2.0 controllers. PCs needed to ship with two different controllers, or embed a USB 2.0 hub, in order to support all types of devices. In Windows XP SP1, we enhanced our existing software driver stack by adding USB 2.0 functionally.

The path to USB 3: start with a solid specification

By actively participating in the USB standards organization, we helped create a specification that was both compelling and interoperable. Like other members of the USB Implementer’s Forum, we wanted to see a faster, more power-efficient version of USB, where, unlike USB 2.0, a single combination of hardware and software could work with all USB devices.

In 2008 the USB Standards organization released the new USB 3.0 specification, which included a new host controller and defined the new “SuperSpeed” USB device (5 Gbps). Together, the controller and device could operate at theoretical speeds of up to 10 times faster than USB 2.0. With this new standard, you’d be able to copy a high definition movie from a USB storage drive in about 80 seconds instead of the 15 minutes it takes with USB 2.0. The specification also introduced a new transfer type —streams — which allows the storage drives to process reads and writes more efficiently.

The new specification provided 80% more power than USB 2.0. This meant faster charging and removed the need for odd “Y” cables used by external DVD drives and other high power devices. But charging isn’t the only power consideration. With mobile computing, people want PCs that conserve battery life. By also introducing new low power states, finishing tasks more quickly, and powering down at every opportunity, USB 3.0 is more power efficient than its predecessors. This translates to longer battery life for notebooks and less power consumption for desktops.

Most importantly, the specification promises to enable a new generation of USB while maintaining compatibility with full, low, and high speed devices. Even the plugs are backwards compatible.

Close partnership with the hardware industry

As the specification began to solidify, we started to design Windows and faced our first difficult decision. Do we update our existing USB software, which we’ve gradually modified since Windows 95 OSR2, or, do we write new software following modern design principles? Countless devices and their drivers rely on the behavior of our existing software, so we couldn’t simply jump into a brand new design. The solution? Don’t jump in. Instead, meticulously design a new USB software stack for the new controller while maintaining existing interfaces and behaviors, ensuring every device and driver will work. For older controllers, we retained our existing software stack.

To create a brand new USB software stack, we had to start work early. If we waited for hardware to be available we would be too late to support the budding USB 3.0 ecosystem. We decided to start before there were any USB 3.0 devices by building "virtual” devices. Virtual devices are software representations of real, physical USB hardware: the ports, the hubs, and other devices.

With virtual device development underway, we started designing and prototyping. USB software is complex because it has to manage hubs and devices while still dealing with any errors. To create something with longevity we needed to visualize and document the flow. We designed three massive flow charts and a code generator to automatically convert a Visio diagram into software. Together with Microsoft Research, we refined a tool called Zing, which could validate every aspect of this software model.

 Figure 3 - Flow chart with its architects, Randy Aull and Vivek Gupta
Flow chart with its architects, Randy Aull and Vivek Gupta

Once we finished some initial development, the first USB host controllers arrived. We recognized that simulation provided a great starting point, but it wasn’t enough. With hardware, we identified incorrect assumptions, timing issues, and other problems unique to real-world scenarios. The path forward also required us to help foster a new ecosystem that would require a strong collaboration with our hardware partners. We needed to work together to prototype, exchange ideas, have deep technical discussions, and report bugs in both directions. We had to build a shared commitment to work together closely so we could identify issues before designs were final.

As USB 3.0 development progressed, so did a sense of community. Software is only as successful as the hardware it enables. Together with our partners in the hardware industry, we were finding issues, developing solutions, and creating the foundation for a new USB ecosystem.

I test, therefore I am

While we were focused on building support for USB 3.0 chips inside the PC, we couldn’t ignore the world of devices. We had to think outside the box – literally. There are over 10 billion USB devices worldwide. Some are in use daily and some are tucked away collecting dust, but all were originally designed to work with Windows PCs. Compatibility is the Windows promise. Our customers have grown  accustomed to expecting new versions of Windows to work with their existing devices and drivers. This commitment to compatibility remains a high priority for Windows 8 across the whole product.

For USB compatibility testing, the “brute force” approach does not work because there are so many devices, with new ones appearing every day, and many old devices that can no longer be purchased. We needed to develop a smart device test strategy.  After analyzing the device statistics, we broke devices into three main categories:

  1. Device popularity 
    When looking at the telemetry sources for the most popular devices, we noticed a pattern. Each device class (keyboard, webcam, printers, storage, etc.) had a handful of prevalent manufacturers with just a few main product lines. After projecting these findings, we could represent 70-80% of devices with a few hundred devices. Testers use the mathematic term "equivalence classing" to describe this work.
  2. Chipset
    We still had a significant percentage of devices that would go untested if we just settled for popularity data, so we looked deeper at the actual circuit design. Just like humans, devices that appear very different on the outside are pretty similar on the inside. If we could ensure all USB chipsets worked, then it’s highly likely the devices that contained them would work as well.  A relatively small number of chipset makers are embedded in devices, so we chose to represent their USB IP with development boards.
  3. High-profile and challenging devices
    It’s not often a USB device tops the support call lines. When it does, we want to make sure Windows will work with it going forward.

After 10 years of USB experience, a dozen telemetry sources, and tons of research and brainstorming, we were able to reduce the USB compatibility effort to roughly 1000 unique devices that we regularly test in the Windows labs. We ensure the devices get recognized correctly when connected to PCs, that they sleep and resume appropriately to conserve power, and that they are able to withstand various stress conditions. Our telemetry data indicates that over 90% of devices rely on the 16 class drivers in Windows, but for the more customized devices, we verify that their drivers get seamlessly downloaded from Windows Update whenever possible (the device maker needs to cooperate to support this scenario). With USB 3.0 providing full backwards compatibility, older drivers will still work without any changes.

We also made a heavy investment in building a custom tool – the Microsoft USB Test Tool (MUTT) to simulate a full range of device behaviors that we’d observed over the years. We built the MUTTs from the ground up, in house. Our software test engineers laid out the circuit design with the help of fancy design tools (MS Paint … seriously). They then developed the firmware and generated new test content to run internally. The MUTT was born – think of it as 1,000 devices on a USB thumb drive. Over time, we shared the MUTT with our hardware partners and they’ve used it to find and correct problems in their devices before releasing.

Figure 4 - MUTT Designer David Hargrove, with MUTT device
MUTT Designer, David Hargrove, with MUTT device

Demonstration video

Perhaps the most important aspect of USB 3.0 is the expectation that customers have of USB: it’s just USB3 so it should just work, right? Each and every USB device, low, full, high, and SuperSpeed, has to work in Windows 8. That’s our focus while also delivering the most robust and reliable USB stack.

Let’s take a look at USB 3.0 in action as it takes on some pretty significant copy tasks and races against USB 2.0.


If you don’t see a video here or can’t play it, download it here: High quality MP4 | Low quality MP4

–Dennis

Comments (120)

  1. Vladan says:

    OMG, I always get excited about new posts here.

    Great!

  2. Danny says:

    I don't think it should be legal to be this excited about an OS!!

  3. Great. Go Windows 8! Go Microsoft!

  4. Andy says:

    This may not be the time or the place, but, before some fanboy comes along and asks the question – spouting about some support in other operating systems; is there also any play to support the likes of Lightpeak natively in Windows 8?

    Keep up the great blog postings though, it really is making things exciting and I for one can;t wait for BUILD to know more 🙂

  5. Brian L says:

    "If you're like me when looking at the video, you might think that those file copy progress indicators are looking a bit dated…stay tuned"

    I sure will =)…

  6. Bob E says:

    I am counting you guys, don't dissapoint !

  7. david says:

    a que tipo de dispositivo están copiando e USB 3.0

  8. Paul from Italy says:

    Suggestion following:

    Anyway it's worth nothing copying a file which is BLOCKED!

    Please add a native "force file unlocking" feature so I do not have to install third party software like http://lockhunter.com/ or http://www.emptyloop.com/unlocker

    This is one big annoying thing in Windows also if often isn't the OS fault..

  9. Stephen says:

    Fantastic article, but its a shame you show explorer, you note "If you're like me when looking at the video, you might think that those file copy progress indicators are looking a bit dated…stay tuned" which is great, but what sticks out to me more is the new explorer, it looks like you guys are going backwards here, the UI just looks really cluttered and busy.

  10. Not sure if it's just my computer, but whenever I initiate two moves/copies, i.e. move File 1 to the flash drive, then File 2 to the same flash drive, so there is concurrent file transfer, it takes MUCH longer to finish than if they are done separately.  I hope Windows 8 will have some management where it speeds them up, or lets the initial move finish before starting the next!  I don't like having to wait until one transfer is done before moving a file from another folder over later!

  11. Paul from Italy says:

    Totally offtopic but.. It would be great adding a multi-monitor support like Synergy (http://synergy-foss.org/) already does, letting two Windows copies communicating via keyboard/mouse should not be too difficult (touch isn't a problem I suppose)

  12. DevPlus says:

    What about Thunderbolt ?

  13. Henry says:

    But USB3 already works in Windows 7, what gives?

  14. Necroman says:

    Thunderwhat? That's dead interface already. Btw. USB 3.0 works great on my new laptop with Windows 7, can't wait for seamless driver-free support in Windows 8 🙂

  15. Danny says:

    I'd imagine that Windows 8 will instead use official drivers from Microsoft rather than having to install the USB drivers for each device you own.

  16. domenicoav says:

    Mamma miaaaaa !!!!! I want W8 today ^_~

  17. Ken Jackson says:

    "We designed three massive flow charts and a code generator to automatically convert a Visio diagram into software. Together with Microsoft Research, we refined a tool called Zing, which could validate every aspect of this software model."

    Can we get more information about this?  Sounds really interesting.

  18. James says:

    I wonder if we will ever drop this "removable device" thing.

    It would be cool to have that once a data transfer to a storage USB device is done, well it's done I can safelly pull it out, without any file magically gets corrupted, or have Windows tell me that the file is fully transfered and still see my USB key light flashing for several seconds after, like if the transfer is really not done.

  19. I'm going to have to agree with Paul from Italy. One of the biggest things that bugs me is when i can't delete a file because some obscure program is using it, or if I don't have permission to delete it even when I'm an admin. I run this computer and I will delete whatever i see fit thank you very much. Is their a rank that has more rights than admin or something?

    I understand that you wish to make windows dummy proof. But don't make people who know what their doing jump through many hoops just to perform a simple task. I don't like restarting windows to run in safe mode just to delete one troublesome file.

    Now for the positives! Grate work guys on the USB3 integration in windows. Can't wait for faster backups!

  20. Giovani Ceotto says:

    My new computer comes with 2 USB 3.0 ports, and I got tell you, it really is blazing fast, much faster than USB 2.0. To give you an example, on a 3.0 port I transferred a file that took under 1 minute while in USB 2.0 it took more than 8. Imagine when I get an OS that really supports it!

  21. I feel bad for not having USB3 ports on my rig :S

  22. Insightful post!

    Now, to address the symmetrical plug issue that has frustrated computer users since 1996.

    How difficult would it be to add to the spec that male plugs have one side painted white, and have the female receptacles have a thick white line on the matching side of the slot?

    Then you could easily line up the two and successfully insert the plug 100% of the time! (I seem to always insert it upside down at first.)

  23. Titan says:

    What is wrong with the copy progress indicator? I like it. Don't tell me the new version will be streamlined and take away all of the telemetry data.

  24. I found this article really interesting.

    USB 3.0 show some good potential. I reallly hope that this USB 3.0 specification, will traduce into new kind of input hardware.

    or maybe it could be interesting to use the USB 3.0 port to plug 1 Windows computer to another computer or a windows tablet.

  25. Ed says:

    The embedded video says "Video #2", where is #1 ? 🙂

  26. N. Sun says:

    Wow, this is great how you are active here.

  27. @ad-man-gamer and @paul-from-italy. There's definitely a challenge when copying locked files.  but if the application has a locked file (exclusive) then you probably wont have a good file copy when done.  there was a reason the app locked the file–forcing it closed might yield corrupt the data in the copy.  there are apps that choose the wrong semantics or are too aggressive, but copy doesn't know how to tell. So the best bet (really the only safe thing) is to close the app that has the file open.

    @Ed — the # video is http://www.microsoft.com/…/06-01corporatenews.aspx

  28. DevPlus says:

    @Necroman

    But Thunderbolt is faster than USB3

  29. Paul from Italy says:

    @Steven

    Thank you for taking interest in my comment, I understand the force-close approach may be dangerous in data terms.

    I've sent you some other ideas I'd like you to see with the email button. Thank you for what you're doing here

  30. Great Post says:

    Thanks for your great post on USB 3.0. I love hearing about the history and what the Windows team is putting into Windows 8 for USB support. Looking forward to more superspeed devices and controllers in the future!

  31. Great post Dennis… it's clear your hard work is going to pay off in the long run. Only problem is, what will movie producers do when they need to create tension during file/copy operations in their movies?? 😉

  32. ZipZapRap says:

    Interesting post – though I hope it doesn't mean you're forgetting Thunderbolt!

    That 1GB file transfer shown in the video was still too slow. I transferred some DVD Video_TS rips from an external HDD to my HTPC last night.. only a few movies in one go, which took 12 minutes over USB 2.0

    Thunderbolt would destroy that.

    USB 3.0 is nice, but let's be honest, it's nowhere near as fast as Thunderbolt, which is scaleable as well for when the cable stops being copper and starts being fibre optic.

  33. ZipZapRap says:

    I disagree – Thunderbolt wouldn't destroy that. It would definitely be noticeably faster, but not an order of magnitude so. USB3 is "fast enough" for DV, which is a significant use case. Waiting 10 minutes would frustrated me. Waiting 30 seconds would please me. Waiting 15 seconds would please me a little more, but only incrementally so.

  34. xpclient says:

    Wow generic support for USB 3.0 was a bit overdue (Intel wake up please and ship a USB 3.0 chipset). From the video, (whatever happened to video #1?) it appears that current performance with USB 3.0 is ~1.5 Gbps but nowhere close to the theoretical 4.8 Gbps. It's 10 times the average throughput we get in Windows with USB 2.0. Surely it will improve? That's what you mean by file copy indicators are dated?

    I hope to see USB 3.0 support in Microsoft's virtualization products too and I also expect Thunderbolt support. There really needs to an improvement (even a proprietary innovation) to enable users to identify the right side of USB plugs. It's very frustrating. Maybe MS can use their Logo program to have that requirement?

    Finally I would like to know what downlevel OSes will be getting USB 3.0 support.

  35. i hear a rumor that "Windows Media Center" and the Dvd maker too will be removed in Windows 8 is it true ?

    if it is true pls just don't remove Media center , and also i like the metro Ui or the new windows 8 start screen , but u must make 2 switchable start menu one is the regular one is the metro ui

    Pls reply Mr.Steven

  36. dudewitvista says:

    How much pc resources is windows 8 going to use compared to previous versions of windows. Will it have raw efficiency,, better than that of windows 7?

  37. Sam says:

    Microsoft I am impress by your openess..

  38. Emannxx says:

    I'm impressed. This is really, really good news 🙂

    I'm gonna buy a new PC next year, I'm expecting it to come with USB 3.0 so that my new Windows 8 will take full advantage of it.

    Any sneek peek about the release date of W8?

  39. RavG says:

    Someone just spit out the name of the best Windows 7 tablet worth buying right now. Don't want to beta test Windows 8 on a notebook/desktop.

  40. HandNF says:

    @Xpclient, my guess is that the 'outdated' file system refers to the new window shown when transferring files. In going with the metro style, it may be a small box in a corner of the screen.

  41. xpclient says:

    At the SuperSpeed USB conference in 2008 I remember MS announced Windows 7 will get USB 3.0 support in a service pack. I request MS to support Vista SP2 too (I know MS isn't going to be as generous for XP even if it's the most used OS in 2011). If you want to delight customers, support it for XP SP3/XP x64 SP2 and above.

  42. i hear a rumor that "Windows Media Center" and the Dvd maker too will be removed in Windows 8 is it true ?

    if it is true pls just don't remove Media center , and also i like the metro Ui or the new windows 8 start screen , but u must make 2 switchable start menu one is the regular one is the metro ui

    pls reply Mr.Steven

  43. Neodork says:

    @Chris 2321, yeah its true. the WMC and DVD maker have been removed. http://bit.ly/qJHaAv

  44. Johannes says:

    Maybe you could updated the blogpost with a link to the first video as well?

  45. Neticis says:

    Great news. Though I'd like to mention that Linux started supporting USB 3.0 in the September 2009 release of the 2.6.31 Linux kernel. If Microsoft would embrace Unix and GPL, it would be much easier for them to implement USB 3.0 support.

  46. Windows 8 Enthusiast says:

    @Steven    Get Bill Gates to demo Windows 8 in build. You need to give steve jobs good competition if you want people to get off dumb apple devices.Pls ask Bill to do it. Thanks

  47. The thing I really don't understand is, I work with USB 3.0 devices on my Windows Server 2008 R2 OS and it simply works. So what did you "invent"? Christian

  48. @Neodork , i already know it im just asking is it really true or a lie

                           maybe if it will be really remove i can copy  the media center in C:Windowsehome

                            and the dvd maker from C:Program FilesDVD Maker

                           in windows 7 , maybe it will work 😀

  49. @Neodork , i already know it im just asking is it really true or a lie

                           maybe if it will be really remove i can copy  the media center in C:Windowsehome

                            and the dvd maker from C:Program FilesDVD Maker

                           in windows 7 , maybe it will work 😀

  50. Neodork says:

    @Chris 2321, that would be cool! lol

  51. Rami Alam says:

    @RavG The best Windows Tablet on the market is the Asus Eee Slate EP121. I am currently using it to write this post!

  52. Good news, but you must improved the Copy screen of the Windows Explorer, because when you click on the Windows Explorer icon and select "Close all Windows" the copyprogress interrupts. I know we can see the progress of copying in the Taskbar, but should just be prevent behaviour or you make it possible to show all copy progress in one Window and not  2 or 3 when you are copying files from different locations of PC.

  53. Mike says:

    Could you open a Building Windows 8 section on Channel9 so that all videos can be found easily and HD would be great as well.

  54. Quppa says:

    It's interesting to see how UI conventions come and go. This video demonstrates centered title bar text (last seen in Windows 3.1, but present in Office 2007/2010 – your doing, Mr Sinofsky? :)), the 'Up' button and window icons in Windows Explorer (absent in Vista/7). Will you explain the reasoning behind bringing these things back? (Though if the Explorer ribbon eventuates I suppose today's video mightn't be indicative of what we'll see in Windows 8.)

  55. Billy says:

    OT: How can I watch the video in fullscreen mode?

  56. xpclient says:

    Btw the experience of HTML5 videos in IE9 is great!

  57. Arghya says:

    Wow, this is great…. can't wait for W8!!!! Go Microsoft

  58. @Bastian92 — Nice suggestion!

  59. @xpclient — welcome back (!) — keep in mind that the transfer speed is likely gated by the SSD and not the bus.  I think in these videos we are showing copies at 100's MB (uppercase B) per second which is the SSD connected to SATA transfer speed.  If you want to get greater than that you will need a RAID setup that would speed up writes I think.  

  60. Danny DeLoach says:

    As others have expressed here I, too, am grateful for Steven Sinofsky addressing comments related to locked files.  A common problem I have is that I can not "safely remove" a USB hard drive because a system process is accessing the $MFT (NTFS Master File Table) file on the drive.  I have not been able to find any way (either within Windows itself or using a third-party application) to safely remove the USB drive in this situation.  I end up either A) just unplugging the device and hoping my file system is not corrupted or B) completely shutting down windows in order to remove the device.  Either way it makes me feel that my laptop is imprisoned, because I can not find a way to consistently remove USB drives easily and safely.  The problem I've described here is different than the scenario previously addressed by Steven, because in this situation it is the Windows operating system (not an application) that is locking the file.  I really wish that Windows 8 would solve this problem.

  61. Steven… this is very encouraging… and I'll be very interested to see what speeds can be achieved in the real world if the target is a RAID setup. Now if you could incorporate the speed of USB 3 / Ethernet with a product like (and I apologise in advance for saying the name) Apple's Time Machine (continuous backup) that would be fantastic!

  62. Peter says:

    It would be really nice if Win8 would get USB support for the Windows installation too. The only usage of my DVD/Blueray device is the windows installation, I never used it later (And I not re-installed windows after the first installation). I would pay 20€ (or more) more for a read-only USB stick with a windows installition. This would be still much cheaper than my useless DVD device. All other software, like MS Office 2010, I can get via a download.

  63. @Peter — you don't need to buy a USB stick with Windows on it.  You can create one yourself from any machine that has a DVD drive (or an external DVD drive).  Here you go – technet.microsoft.com/…/dd535816.aspx

    @Danny DeLoach — this sounds more like a utility or third party software (like A/V) than how Windows behaves.  A SYSTEM process can be anything that starts before you log on or derived from something that starts before you log on.

  64. @Steven Sinofsky I understand that copying a file that is currently in use would prove difficult. But the one thing that gets to me is that sometimes there is not enough info on the application or process that is using the file. Perhaps if there could be a "close program" or a "go to service" / "go to process" (opens task manager) button that will allow you to quickly resolve the conflict.

  65. Сергей says:

    First of all, I'm waiting more about UI. USB 3.0 is interesting, 4 sure, but…

    Also, if here is video #2, where is video #1?

  66. Windows Server 8 says:

    Please do not name the next server version "Windows Server 8".  This will simply cause confusion between "Server 2008" and "Server 2008 R2" and "Server 8" and "Windows 8".

    Also, please stop doing "R2" releases entirely, that also causes confusion.

    Thanks

  67. I'm agree with all of you.

  68. Abdullah Saqib says:

    that's cool; USB 3.0 "Super Speed" Test 🙂

  69. xpclient says:

    @Steven, thanks for the reply. I understand the average speed in the video is 190 to 200 MBps=1.5 to 1.6 Gbps. This speed is not even half of the theoretical 4.8 Gbps (600 MBps). If it's limited by the SSD or SATA interface as you say in this case, then that's normal/okay but in the future as even faster SSDs and USB 3.0 drives become available, I hope this will scale nearer to 4.8 Gbps (600 MBps) with just a single drive setup. Or is the protocol overhead of USB so large that such speeds are unattainable with a single drive setup and the maximum that can be reached is only close to 200 MBps?

  70. Audiophile says:

    Any chance of native UAC2 support as rival OSs already have or will we MS be stuck in UAC1 forever?

    Cheers

  71. I'm curious, what does that blue arrow next to back/forward buttons is for? Maybe "Sync your files" …with cloud server? Simple upload on SkyDrive? Or just "Send to" icon?

    Also what  are these buttons in low right corner for? Something like switching thumbnail preview?

    And eh….where is ribbon? oO

  72. Media Servers? (in folder tree)  What's that?

    I like you retourned window icon. I feel retarded when i duble click on empty corner space to close window, or worst to pop-out drop down menu from nowhere.

    Also i like new minimized window "footer".  

  73. @Windows Server 8

    I think the won't be any confusion. It is just a codename! The final version would be like Windows Server 2012 or 2013, but this is only a speculation. I don't know then the next version come out. 😀

  74. Arnaud says:

    Great news !! Full native USB 3 support 🙂

    Good jobs guys !

    Can't wait for W8 !!

  75. Nicolas Pagès says:

    Hi Steven,

    About this locked file issue, I agree with Ad-Man-Gamer: it happens, sometimes, that a file is locked and one just doesn't know by which application. It would be really nice to know which app or process is currently using/locking the file, with a simple right click or so.

    Anyway, this blog is just great.

  76. domenicoav says:

    The ARM setup up of W8, is easy like X86 or is different ?

  77. Serge says:

    @Peter,

    You can use http://wudt.codeplex.com/ to create bootable installation USB drive from either physical DVD drive or downloaded ISO image.

    Worked perfectly for me to create bootable SD card to reinstall my Windows XP netbook.

  78. Serge says:

    @Paul from Italy et al

    You can find who has that file opened using Resource Monitor: Search Handles on the CPU tab – it's quite obscure, but it's there at least. Force closing someone else's handles is quite dangerous and in my opinion shouldn't be possible through standard OS UI (think about support costs – I'm pretty sure people will always "forget" to mention that they did that).

    @Audiophile

    What UAC2 do you mean? Rival OSes don't have anything like UAC at all. Sudo is totally different and is totally insecure: asking for password without SAS is generally bad idea, asking for password without SAS often (like for installing irregular updates) is insane. There are at least two different ways to sniff root password out of gksudo in Linux using only documented interfaces (no code bugs – only design ones). One is described here theinvisiblethings.blogspot.com/…/linux-security-circus-on-gui-isolation.html another one is implemented in 20 y.o. tool called xspy. I don't know for sure, but based on abysmal security track record of MacOSX I suppose it's not harder that in Linux.

  79. Johannes says:

    Steven, can you please keep updating this blog even after Windows 8 is out and released? In one form or another. You guys write it in such a way that pretty much anyone can follow it and understand most of it, even though it is kind of technical. Always great fun information about how you guys work and how you make your decisions. I missed the E7-blog a lot when Windows 7 was out the door.

  80. Mark says:

    Make the Checkboxes in Windows Explorer as default.

  81. Carlos says:

    Hello Microsoft Team. I live in Spain. I've been visiting this web page since it was opened but i've seen that you haven't translated anything into Spanish. Luckily I know a lot of English but most of the people where I live don't have my level of English. I'd like you to translate everything into Spanish because there're more people that talk Spanish than people that talk Portuguese or German (not for that less important). Thank you.

  82. mvadu says:

    For the lock file issue, Process Explorer from Microsoft (former sysinternals) show the process information that has lock on the file.

    Steven, any plans to make Process Explorer default task manager for Windows 8? It has so many new stuff, and people who know about task manager (and have knowledge of services, processes) any way are using it instead of basic task manager. Mark usually keeps it up to date as well. That way we need not to wait till next Windows version to get new Task manager.

  83. Jon Austenaa says:

    USB Polling rate.

    Do you have any comments about USB polling rate? It seems all usb mice updates at a 125Hz refresh rate. This low update rate is not very good for monitors that update at rates like 75hz or 85hz, and games that have a set max fps. For instance battlefield 2, maybe bf3 too, max fps of 100, and using a "3d ready" monitor at 100hz, only leaves the mouse out of sync. If I set the mouse update rate to 500hz too, things get buttfer smooth.

    But to get this I have to first set windows in test mode, and then use a usb rate overrider. Recent mices like logitech g500 support up 1000hz in their driver I think, but how about support and/or optimization in Windows? Mouse smoothing works, but it is better to have a higher update rate.

    http://www.ngohq.com/news/15043-how-to-increase-usb-sample-rate-in-windows-vista-7-a.html

  84. @ Jon

    For interrupt devices Windows' polling rate is dictated by the device.  Most mice indicate 8-10ms interval, which results in us polling it every 8 ms.  If we were to poll faster than a device indicates it could lead to compatibility problems with the device.  Also, polling faster results in more time on the bus, as well as higher power consumption.

  85. dudewithvista says:

    Do you foresee USB 3.0 replacing CD's? Is this factored into your market forecast?

  86. Anon says:

    Very good work! Please though make it not have to re-install the USB driver every time I plug the same device just into a different port. Also, make it not have to scan my removable hard disk drive every time the computer comes out of hypernation for it to show the Autoplay dialog. Autoplay should come up only if I disconnect the USB device and reconnect, not every time the computer is switched on and it wakes up from sleep, even though the USB hard disk has never been removed and reattached.

  87. xpclient says:

    @Anon, if your device has a unique serial number, Windows won't reinstall the USB driver every time you plug it in. See blogs.msdn.com/…/255047.aspx. Though +1 for the request to not show the AutoPlay dialog on certain events like coming out of hibernation/standby or when I simply change the drive letter in DiskMgmt.msc.

  88. Great work!! I have been following Windows Blogs anonymously.. but today joined the forum to ask one query: Can't this "Copy Job" facility became available for USB To PC Copy operations and vice versa. As i saw the current video attached with this blog, the different file copying operations are being performed in different windows, while in another post meant for Copy Jobs in Windows8, it is showing that it will be shown all copying jobs in one window. Is there any differences in copying from PC to PC and in USB to PC??

  89. Windows team should address "Safely remove hardware" issue in USB.

    The main problem really many users are having is that too often external storage devices cannot be safely removed due to being "in use" although in almost all such cases they are not. Will Windows 8 team address this big issue?

    Another, smaller problem, is that the USB hardware removal the tool in system tray is very slow — takes about a couple seconds to respond when user clicks on it and display plugged-in devices. I mean, Windows knows what devices it currently has plugged-in, so there would be no reason to delay. But, I assume, this might naturally change during general UI changes.

  90. @ShyamKD — the USB video was shot with the old user interface on purpose and the newer post on file copy http://win8.ms/fileops has the new (and only) interface.  Sorry if that was too subtle 🙂

  91. Scratt says:

    The MUTT is an excellent idea.  I bought a USB3.0 external drive for use with my Win 7 setup, but it always disconnects itself and reconnects after a few minutes, meaning it's unusable.  Obviously i have a drive that is not so reliable…. so now it's connected with a USB 2.0 cable.

  92. Thunderbolt says:

    Yea. I vote for those here, who also escalate the Thunderbolt existance. Windows needs it. New interface or not new, Microsoft needs to do something about it.

    Also, I liked the other comment, which speaks about the side of the cable of USB. I always get annoyed by that, I'm putting a cable always in a wrong side. Some clearer marking should be used. But I don't know how much a software company, like Microsoft can affect that.

  93. Andre Da Costa says:

    Unbelievable, I posted a lengthy post about USB compatibility with Windows 64 bit versions and the inconsistency with compatibility. The post either has not been approved or is trashed as spam. I share my experiences in confidence because I want to make this product better. I honestly don't see how censoring is gonna help that.

  94. Dale Stoner says:

    I'm readin gthis on a new Windows 7 computer with two USB 3.0 ports and a WD external drive connected to one of them. I solved the boot issues and instability myself. glad to hear you may finish the test in the next two years. I've always found that Microsoft testing is of markets and involves zero technical testing.

  95. @Thunderbolt

    Thunderbolt offers some attractive advantages such as speeds twice the theoretical max of USB3 and the ability to multiplex PCI-e with DisplayPort on a single connector.  However, these advantages require more complex and costly controller chips in the PC and and in the device, so most consumer devices will use USB3 instead.  Thunderbolt also consumes more steady-state power than USB3 ports when nothing is plugged in, so it's not the best choice for mobile devices/laptops.  Finally, Thunderbolt devices can directly access system memory through DMA without the knowledge of the operating system.  If every Windows machine automatically connects to any Thunderbolt device this constitutes a security exploit surface.  For these reasons we think Thunderbolt is likely to be confined to higher-end peripherals and it's better for people who know what they're doing to install custom software to enable their Thunderbolt devices.

    .

  96. @Dennis – Can't argue with that evaluation. Go USB 3.0!

  97. TheY says:

    While you're at it, how about disabling autorun on USB devices by default? It serves no purpose except as a malware delivery vector.

  98. wosully says:

    I appreciate the history lesson. Interesting reading, and thanks for the research.

  99. The Viking says:

    I remember that as a child I used to love Norton Commander. It was easy to manage files there. Once I moved on to Windows 95, it was a bit disappointing to have to open at least two explorers and perform a lot of operations. I never got along with Windows Commander but I would like to have an easier file sharing experience as the one I used to have with NC. I never understood why we had to go from good to worse on that really. I am already using USB 3.0 and it is awesome so if Windows 8 can make it even better then I am behind that all the way.

  100. Audiophile says:

    @ Serge

    I meant USB Audio Class 2. Currently W7 is only USB Audio Class 1 limiting driverless USB DACs to 24/96. There is a fast growing number of USB DACs that are UAC2 and need no drivers in rival OSs but for Windows a driver is needed for full performance.

  101. Serge says:

    @Audiophile

    Oh, sorry. I've *completely* misunderstood you. I agree with you on that drivers for standard USB classes should be shipped in-box.

  102. Musafir_86 says:

    Hello,

    -Any chance that this native USB 3.0 support is being backported to Windows 7, and… Vista? From my understanding, "Feature Request" and/or "Design Change" is one of feasible enquiries whenever Windows is still in "Mainstream Support" phase, and Vista's will only ends April 2012. I really hope you would.

    Thanks.

    P/S: I'm currently using Vista Business 64-bit, with all latest updates of course. 🙂

  103. @Musafir_86 — When we look at what to bring to older versions of WIndows we do look at the hardware landscape.  Practically speaking, the strong majority of hardware made for Windows 7 would not benefit from this work because that hardware is not upgradeable to USB 3 (laptops, all-in-ones, slim form factor desktops).  So even if this were available, the folks who would benefit would be a relatively small group who would also need to choose to purchase and install expansion boards if their PC was capable.  Because of that it is not likely we would bring this to Windows 7, where there are third party solutions that also afford many of these benefits as well for the add-in cards offered.

    -Steven

  104. Musafir_86 says:

    @Steven,

    -Thanks for the really quick reply. Okay, I understand your point.

    -BTW, will Windows 8 uses a generic driver for all USB 3.0 controllers like USB 2.0/1.1 in current Windows versions (i.e. usbehci.sys/usbohci.sys/etc. for all controllers – just the "string" value is changed according to its manufacturer)? Or will it be unique/dedicated drivers for each one, like IDE controllers (intelide.sys/viaide.sys/etc.) or like display adapters (which is manufacturer supplied – but without OpenGL ICD :P)? IMHO, dedicated drivers may yield better performance.

    -Also, if the controller manufacturer(s) decide to supply its own driver, will it be able to (or force to?) use Windows 8 USB 3.0 stack? I don't want something like different Bluetooth stacks mess to happen again… Or will they limited to "filter drivers" only?

    Regards,

    P/S: (Off-topic) I thought it's already nighttime there in your place? Overtime perhaps?

  105. Why so late? says:

    Linux supports USB 3.0 since September 2009 with the release of kernel 2.6.31.

  106. Shen says:

    Now it's time to wait for compatible device that support USB 3.0

    Always excited to see how the computer industry changes after couple of years.

  107. Luca says:

    Unbelievable! I've posted a comment on improving the USB 2.x stack, beside starting support USB 3.0 and it was not approved, but why? I'm sharing my experiences in confidence because I want to make this product better. I honestly don't see how censoring is gonna help that.

    As photographer I often card readers for ingesting my camera files, and most of the times the operation of unplugging the card is mistaken by Windows that unplug the whole card reader, and not just that memory card. This happens with my desktop, my laptop and with many different card readers so it's more likely to depend on Windows (Seven 64bit) and not on the hardware.

  108. @Musafir_86  … Thanks for the great comments!  Regarding your question, the built-in host controller drivers will be used for all USB host controllers including USB3, USB2 and USB1.1. The new Windows 8 xHCI driver will get loaded for all USB 3.0 controllers, and the older USB 2 stack will continue to be used for USB 2 and USB 1.1 controllers. Whenever a device is connected to USB 3.0 port (regardless if the device is full, high or superspeed) the inbox xHCI driver will be the one to interact with that device. Peripheral devices connected to USB may use one of our built-in class drivers such as the new UASP driver in Windows 8 for storage devices. Our telemetry data from Windows 7 shows that 93.3% of all USB devices use inbox Class Drivers.  The remaining ~6.7% of devices install their own peripheral drivers, but for the most part these drivers sit on top of the built-in host controller drivers.  To encourage compabitility, devices that get certified for Windows 8 must be tested with the inbox xHCI driver. We have been engaging closely with the USB 3.0 Controller partners to ensure our driver meets the needs of all hardware implementations.

  109. Thanks for including the video!

  110. xpclient says:

    @Steven, Microsoft has ALWAYS provided USB support to at least one downlevel OS. 🙂 USB 2.0 was introduced in XP SP1 but also included in Windows 2000 SP4. Similarly, Windows 98 was the OS with complete robust USB support but Win95 OSR2 as you said also got it. Please please consider adding USB 3.0 support to Windows 7 and Vista SP2 as they are still in mainstream support. Windows customers will greatly benefit from the increased speeds when they eventually get new USB 3.0 peripherals and motherboards. Please don't break the tradition of supporting older OSes.

  111. KWinUser says:

    Hey,

    I'm as fascinated by this post as I am dismayed at actual reliability of NTFS/other file systems on top of portable USB devices. When someone trips over a drive and the cable disconnects – Windows asks you to format the disk when reinserted. Can't they even fix this simple issue?

  112. @Dennis Flanagan

    Just one thought about Thunderbolt:

    Although I liked your comprehensible and well considered response to the question whether this new technology will be supported in Windows 8, I am not quite sure, if I agree with your point of fiew.

    Thunderbolt might still be at the very beginning of it's existance, therefore still needing some ironing out. But it is a technology with great potential. Not only does it feature impressive specs and advantages over USB and SATA. But it is also backed up by two major companies in the computer business (Apple and Intel).

    Therefore I think it is very likely that Thunderbolt will become a very iportant standart within the next years (well before Windows 9).

    So my question is: Why not start working on the implementation of this technology right now instead of trying to catch up later?

  113. Rajesh says:

    Getting BillG to demo Win 8 is a great idea…. and also good marketing campaign….

  114. Rajesh says:

    Getting BillG to demo Win 8 is a great idea…. and also good marketing campaign….

  115. Drewfus says:

    @xpclient: "Finally I would like to know what downlevel OSes will be getting USB 3.0 support."

    Arguably, hardware support should be consistent across OSes with the same major version number. Windows 6.x should support USB3.0, not just Win8. The same could be said about major software components – like Internet Explorer. IE10 should run on Vista with the platform update installed. Similarly, i hope Office 2012 does *not* run on XP.

    What prevents USB3.0 devices in Win8 from reaching their theoretical max xfer rate? Is it a shielding thing? Would expensive cables with braided shields make USB3.0 drives work faster?

  116. Geof says:

    Hi,

    I learned from the following link how to use USB 3 in C# by using libusb library.

    blog.csharplearners.com/…/usb-3-0-and-c

    Are there any other solutions for reading from or writing to USB 3?

    Thanks,

    Geof

  117. Colin Kee says:

    Hi folks, just to share that new industry development has allowed USB 3.0 to merge with eSATAp. The new port is blue in color with both SATA and USB 3.0 19 pin header.

    en.wikipedia.org/…/ESATAp

    cheers.

  118. Congratulations!

    USB 3.0 sounds impressive compared with the older standards.

    Actually having something I'd like you guys take a look at if it's possible on a workaround in sort of way.

    Apologize didn't mentioned it earlier but hope someone maybe will having a moment seeing it useful.

    It's regarding how we users connect to Internet more and more, and in speak of using devices like USB modem attached to our computers.

    I've noticed and many others with myself that some of us meeting difficulties in connect and run these modems after the computer starts up and has been re-booted.

    For easier understanding, am using following in helping me connect right now:

    http://www.option.com/…/icon505

    In most of the cases if take example from my own experiences it doesn't happens that frequently after an clean shut down. Let's say it works 99% of the times to connect from that stage in get access between Windows – Software – Computer hardware – and the 3G USB modem.  After Re-started the computer and make the same attempt in connect with Internet, it ends most of the times (75%) with non success.

    Like I see it, it doesn't looks like the hardware and the USB connectors are able to be released in the same way as it can after an completely clean shutdown process.

    What can be done on a longer term in make Re-booting working better in functionality in cooperate more with these new technologies?  Really wish we one day find an answer in help it up a bit as 4G grows stronger and become more popular around the world. In some sort of sense 4G has a really great value

    in bring all these other equipment's of mobile devices forward as well  like I see it.

    That together with 10 times faster USB speed when using it — Interesting future !

    Thanks for reading