What benefits to using Win10 IoT vs Win10 Pro?

Options
Andy Nicholson
Andy Nicholson New Member Posts: 60
I've seen in the forum a lot of talk of Windows 10 IoT on the Up. What benefits / drawbacks / differences would there be from running a customised Win10Pro image with all the redundant services and processes taken out, compared to running the IoT version?

I've seen arguments for IoT use cases that Win10 IoT has networking and enterprise infrastructure benefits over Linuix / Android, but on this platform it's my opinion that you'd be crazy not to use a more complete OS that can run anything you want and customize it to your use, unless I'm missing something - does IoT use less power for example (with equivalent base OS), is there better hardware support in IoT? Am I missing something?

Comments

  • Eric
    Eric New Member Posts: 29
    Options
    It is completely dependent on what your UP board is doing. If you use it as a PC replacement, then you're quite right. UP is not cheap though - and very limited in connectivity options compared to an equally priced ITX board with DC power jack. Well yes the case is only $12 instead of starting at $50 for mITX, but a J3160 board is actually cheaper than up even with twice or four times the memory. Especially likely if it is to ship to Verweggistan...

    That said just consider the advantage of having a Windows that is ~1GB instead of ~12GB - what it does to installation and up time, patching and wear and tear.

    A cold booted IoT core will use a few hundred (like, I've seen it use <50) megabytes of RAM and Windows Home/Pro x64 will happily go to 1.8 GB after signing in.

    Windows IoT is pretty complete in terms of Win32 API is my impression, although there will be gaps and it is not meant to be a 'server' of sorts. Basically Microsoft made it to run Universal Windows apps, either with a UI or without (akin to a Windows Service, but with a slightly different app model). But you can run a normal Windows Service and it has network shares (at least for Admin accounts) and it'll probably run .NET Core / ASP.NET in the future.

    You can actually translate that to the Linux situation. Why would you install Ubuntu desktop on UP if it is meant to be hanged next to the broadband entry point in the house and control all the lights and door locks and camera's in the house through an app that the home owner is actually using from a smartphone? That'll give you about the same headaches Windows Home/Pro will give you in that same situation...you could run a much slimmer OS if either you have no UI or just one or a handful of apps that you control to show the user ever...if you decide to (allow to) connect a display at all.
  • Andy Nicholson
    Andy Nicholson New Member Posts: 60
    edited July 2016
    Options
    Hi Eric, firstly please don't confuse my tone or question as dismissive of IoT Core (or anything else), I genuinely am interested to know what others think.

    I believe the hardware on the Up has placed it in a unique position within the market. Sure, you could use it as a full desktop, but I don't see many people championing that as it's main use. It's hardware just wouldn't cut it for many (but not all!). But the Atom chip does seem to put it a cut above the rest, and I see lots of enthusiasm (especially from the Up team themselves) around things like robots, micro-servers, routers, IoT base units, remote desktop thin client etc.

    So considering this, and that I am not advocating using a full image on it anyway (I'm thinking of writing some guides on this subject) I don't see the many uses for IoT, For example, I currently run hardware with an ultra slim install of Win 10 Enterprise that takes 4GB of disk space and ~400Mb RAM with custom software running, It has all the perks of Windows, but would run fine on the 1GB variant Up.

    The BIG point for me being true multi-threaded, multi-process applications running side by side, something the IoT version handles badly, if at all? This opens the door to hundreds more possibilities. For example discreet remote management or using third party tools such as VNC or Teamviewer, full multi-windowed GUIs, greatly improved asynchronous IO, on-board process management and debugging during development. Along with all the software goodies that the full OS provide, you could strip everything away and keep IIS, or Edge, or Office or any other package that you can think of in embedded shell mode. Yes it would take a little time and effort to get that far for some, but the benefits of performance and flexibility seem to far outweigh the benefits of IoT.

    I agree that IoT is "pretty complete", but why restrict yourself to that when you can have fully complete .NET, C#, Python, R, Java etc?

    I'd love to hear what everyone has to say, is it that people are taking the IoT approach because of cost, or that it's already a viable option for other similar form factor devices so they automatically think of of IoT first? Does the hardware on this SBC make a full OS any more compelling to you?
  • Eric
    Eric New Member Posts: 29
    edited July 2016
    Options
    I think it is a matter of perspective really. Or perspective combined with objective - what do you want to do?

    There are no differences in either multi-threading or 'greatly improved asynchronous I/O' ... unless you're talking about windows apps with a UI running side by side (side-by-side windowing). No, IoT can't do that, because it isn't meant to.

    There is only one Windows, albeit it goes by different names and each specific SKU has it's unique features that others lack. IoT Core is 'just' a OneCore SKU under the hood. Hence at the technical level there aren't differences. Only at the level of which components, optional features and drivers it has cq can have. I'm guessing we can have this same discussion about Windows Server with Desktop, Windows Server Core and NanoServer. The advantage for most people is actually that IoT is free and Windows Enterprise is very, very hard to get unless you have MSEA or similar...and Windows 10 Home/Pro, well, that indeed has a minimum requirement of 2GB and that will not suffice for anything but to boot and sit and swirl your thumbs yawning and looking at an empty desktop...

    For comparison, running Windows Home on UP, Windows is about 50% of the price. That's too much imho. If you want Remote Desktop, well then you need Windows Pro and Windows is about 67% of the price of the system. That's crazy. And if you want DNS, DHCP and containers running cloud apps, you need Windows Server (starting I believe) at about twice the price of Windows Pro, so now Windows is a whopping 80% of the price....

    I think Microsoft needs to rethink their lineup and stop trying to put smart people in a Universal Windows corset, then add a Windows SKU that costs say 25% of whatever hardware it is meant to be running on and allow it to run a set of features that makes sense for appliances (not failover clustering or hyper-v, but yes DNS, DHCP and containers, to give an example) and really open up Windows as an OS for any device that people can think up. And allow anyone to customize the image, equally OK if only after getting devices that it'll be able to run on enrolled with a valid license.
  • Eric
    Eric New Member Posts: 29
    Options
    Just to respond to your which to debug, IoT Core has the remote debugger.

    I'm hard pressed to imagine anyone would want to run Visual Studio directly on the UP... it's a silly idea imho.

    And completely untractable if any kind of 'Out of Box Experience' is one part of what you want to debug...
  • Andy Nicholson
    Andy Nicholson New Member Posts: 60
    Options
    I suppose my view has been slightly warped - my employers have a high volume site license that I've become used to just copying and pasting a license key into whatever job I'm doing. But I'd be interested to know if the UP team looked into using the Windows 8.1 / 10 with Bing program? Would this device qualify without a screen? If so then they could distribute a full 32 bit of Windows 10 for free.

    I've seen a few Chinese companies taking this approach for media sticks and NUC type devices so I don't think it would be a problem. As far as I'm aware the distributors of the hardware would still be allowed to alter the final OS as long as the the Bing shortcuts are intact, but I'm not sure how far they would you go, maybe they wouldn't like you removing some things. A quick registry edit later and you can enable your program to run as the shell at boot eliminating boot times, shrinking the used memory etc.

    I can understand if UP didn't want to "cloud" devices with bad experiences, but I wonder if there would be a way that they could join the "with Bing" program, and supply us with a valid license, but leave it up to us to install it? Even if they couldn't bundle it in, if you do a bit of Googling, you can find various sites offering the OEM licensed version for around £15, but not sure on the legality of this?

    I sure am looking forward to getting my board now :)