
Microsoft built its own custom Linux kernel for its new IoT service - dbasedweeb
https://techcrunch.com/2018/04/16/microsoft-built-its-own-custom-linux-kernel-for-its-new-iot-service/
======
castle-bravo
Am I paraphrasing this correctly:

> Microsoft-branded ARM microcontrollers running an embedded linux
> distribution. Microsoft rolls out security updates over Azure to reduce the
> risk of the device becoming part of a botnet.

It sounds great.

~~~
tyingq
It does. But, it's also pretty surreal for those of us that worked through the
anti-linux Microsoft of the 90's. Windows subsystem for Linux, and initiatives
like this are a real confirmation that MS finally "gets it". Right tool for
the right job. Good for them.

It's also a big swing for me in that I trust MS more than Google now to do the
right thing. I'd have thought that impossible a couple of decades ago.

~~~
lsh
Have you actually used Windows 10?? The spotlight is squarely on Facebook and
it's privacy intrusions right now, but the data collection when you own the OS
must be several orders of magnitude larger.

Don't be so eager to forgive them. They're not hugging Linux right now because
they're a Good Company trying to Do No Evil.

~~~
derefr
Have _you_ used Windows 10 Server Core, or Windows 10 Enterprise LTSB? There's
no data collection in either of those, because they're for serious people.

The Home and Pro editions, meanwhile, are effectively "Xbox OS for PCs." They
turn your computer into an entertainment appliance run and maintained by
Microsoft itself. Of course they collect data, just like there are data-
collection agents on all the nodes of your average production system cluster.
When Microsoft is the sysadmin, Microsoft needs to collect ops data.

And, personally, I don't think that's a bad thing, per se. It's a choice you
make. You can take control of your PC while still running Windows, if you
like. (It's just a big hassle, because truly administering a modern Windows
system is a big hassle.)

~~~
greenhouse_gas
>Windows 10 Enterprise LTSB

So tell me, where can I buy that for my personal computer?

>because they're for serious people

No, because those who can get Windows 10 LTSB actually have the power to push
back. Imagine telling Dell or HP that everything they type may be sent to MS
at any time.

>You can still take control

So how can I permanently end _all_ telemetry, now and forever on my box. I'm
even willing to sign a letter that I won't hold them responsible for any
viruses that I get because I didn't update in time.

~~~
lbotos
I just built a gaming rig, and I tried really hard to get LTSB, because I
don't want to use this computer for anything beyond CS:GO. Was impossible.

~~~
ben-schaaf
Good news then, because CS:GO runs beautifully on linux and OSX (not that I'd
recommend the latter).

------
jesseryoung
Am I missing something here? The custom linux kernel part isn't interesting at
all - in fact, Microsoft has pretty much admitted they can't scale down
Windows.

What's interesting to me here is Microsoft is building an IoT solution that
allows manufacturers to delegate security to Microsoft instead of having to
roll their own.

~~~
komali2
"Don't roll your own security" has been the marching drum of an entire sector
of IoT companies working within the connectivity "slice of the pie."

The general mindset has been that iot has a couple slices: the "thing" (air
conditioner vibration sensor), how that thing is connected (Ethernet plugged
directly into a smart vibration sensor, or vibration sensor plugged into a
connected data-recording device), the transmission/storage of that data (cloud
solution? Servers on site? Internet y/n?), Analysis of that data (Microsoft
IoT platform? Rolled solution? Now defunct Autodesk iot platform?), and
finally the acting upon data collected (chief engineer scheduling
repairs/maintenance, project manager ordering new motors, whatever).

So many companies have tried "rolling their own" because they got it working
on a raspberry pi or Arduino in a week, then find out their connectivity is
not secure at scale (let alone that the solution can't scale at all).

Let specialists specialize. No reason not to let big daddy Microsoft handle
the messy bits.

Disclosure, I work at electric imp, thus considering myself firmly in the
"secure connection and transmission" slice of the pie.

Disclosure 2, we're partnered with Microsoft for their new IoT push, lol.

~~~
michaelt

      Let specialists specialize. No reason not to let
      big daddy Microsoft handle the messy bits.
    

If you're planning to make a product that will last 20 years - a residential
thermostat, for example - using a third-party service as the foundation of
your product seems naïve to me.

I mean, Microsoft or AWS is at least better than a startup, in that they're
less likely to go bankrupt - but even Windows XP, one of most long-lived
products out there, was only supported for 12 years even with 'extended
support'.

Not to mention the fact whoever provides the cloud services will likely be
looking to make recurring revenue over those 20 years.

~~~
komali2
If you go with partners, though, swapping them out may not be too painful. I
mean, working on twenty year old cold is always painful, but at least for some
of my demo devices, when Autodesk's iot platform was retired, I swapped it to
Microsoft's pretty easily. It's just data.

------
lobster_johnson
The article pretends to answer why they're using Linux instead of the NT
kernel, but the answer is either incomplete or a non sequitur; it seems to
imply that since the devices has very little power, their kernel isn't a good
fit. I thought the NT kernel was pretty good at low power, and also has a
highly respected internal design?

~~~
gmueckl
Low power is relative: NT is good at saving battery on laptops, but these are
supercomputers compared to IoT hardware. The most minimal NT system that I
have seen so far was still 50MB. Not sure if MS was able to shrink that
further. But in a world where every byte of flash or RAm saved can lead to
essential power savings, this is far too big. With a custom linux kernel with
no extra drivers and modules and busybox in userspace, you can get much
smaller than 50MB.

~~~
jaclaz
>The most minimal NT system that I have seen so far was still 50MB.

Well, it depends on what you want to do.

A really minimal XP with minlogon is around 10 Mb (actually around 20 MB that
on NTFS compressed volumes are around 10), of which quite a bit is things that
could be removed or greatly reduced in size recompiling the programs/dll's if
the source was available, that won't do much, while with a decent amount of
base tools it comes out at 30-40 MB or so.

Some references to a dedicated project:

[0]
[http://mistyprojects.co.uk/minixp/docs/files/index.html](http://mistyprojects.co.uk/minixp/docs/files/index.html)

[1]
[http://mistyprojects.co.uk/minixp/docs/files/intro.htm](http://mistyprojects.co.uk/minixp/docs/files/intro.htm)

[2]
[http://mistyprojects.co.uk/minixp/docs/files/about.htm](http://mistyprojects.co.uk/minixp/docs/files/about.htm)

------
bpye
The videos seem to show an MT3620 device, seems to be made by MediaTek [1].
Looks like they are targeting a Cortex-A7 + Cortex-M4 chip. First time I've
seen an A series core in this type of chip.

It looks like a developer gets to program the A7 and 2xM4F cores whilst the
WiFi radio and Microsoft's "secure" Pluton thing run on a Andes N9 and Cortex
M4 core respectively. I assume it is those cores which will be auto-updated in
an attempt to defend against attack.

[1]
[https://www.mediatek.com/products/azureSphere/mt3620](https://www.mediatek.com/products/azureSphere/mt3620)

~~~
jlgaddis
> _The videos seem to show an MT3620 device, seems to be made by MediaTek
> [1]._

Indeed. The article agrees with you and even goes as far as linking to the
same URL that you did. :-)

~~~
bpye
My bad, didn't see the link in the article.

------
yndoendo
Still cannot understand the IoT mentality. It is actually the CoT
Communication of Things. Internet shouldn't be required to turn your lights on
or off nor be the device communication backbone in an industrial enviornment.
Internet should always be the last resort for communicating because of the
distance.

~~~
russellbeattie
Totally with you. Maybe I'm a pessimist or a luddite or something, but I
_really_ don't think IoT devices should be connected directly to the Internet.
Most are just too simple, underpowered or cheaply made to adequately defend
themselves from attacks. IoT gadgets should always talk to a more
powerful/secure hub of some sort, which then is exposed to the Internet.
Seriously, my WiFi lightbulb switch just has no business doing anything
outside my internal network...

And god help us when all these IoT devices start talking IPv6... With no NAT
and anemic firewalls on most routers? Oof.

~~~
dingaling
Just because a device supports IPv6 doesn't mean you have to route that prefix
to the Internet.

Assign Unique Locals ( ULA ) to untrusted LAN devices and no Internet router
will carry them.

Then your laptop or phone can additionally receive a routed prefix. Remember
with IPv6 you can assign an arbitrary number of prefixes and addresses to each
interface, or just one. It makes for very flexible routing.

------
kelnos
I'm confused: they're saying the devices have an ARM A7 chip (presumably they
mean Cortex-A7) in them, which is a full 32-bit microprocessor, but they're
calling them "microcontrollers"?

I would think Windows could run on a Cortex-A7, no? Perhaps the specific parts
they're using have a ridiculously-low clock rate or other painful limitations?

~~~
_sh
You're right, but there is a lot of misunderstanding around this end of the
market, mainly because advances have blurred the traditional segmentation.
When talking about ARM, the 'M' in Cortex-M means 'microcontroller' whereas
the 'A' in Cortex-A means 'application'. Cortex-A systems are often at the
centre of 'System-on-Chips' and will run linux, and indeed the NT kernel as
well, as they are bundled with enough RAM and fairly modern peripheral
interfaces such as HDMI.

Cortex-Ms typically can't run linux (excepting uClinux) as they don't have the
RAM and typically don't need to as they address a different need (dedicated
function instead of general-purpose compute), and have far fewer peripheral
interfaces. It used to be all about power profile, but the recent SoCs are
getting pretty competitive there as well.

But as I said the traditional segmentation at this end of the spectrum is
being re-cast seemingly every second week, and so terms such as
'microcontroller' are becoming less meaningful all the time. And who the hell
can agree on just what 'embedded' means these days?

~~~
rkangel
> And who the hell can agree on just what 'embedded' means these days?

FWIW, my personal definition is "doesn't have an MMU"

~~~
WorldMaker
Interesting definition choice, as what constitutes an MMU has also fuzzily
shifted over the years. From what I've seen, most of the SoC designs contain
what in the microcontroller world of the 90s would be considered more than a
minimal MMU, take for instance the classic M68451 [1], and the multi-stage bus
pipelines and super-wide buses of these 'embedded' designs easily surpass such
early MMUs.

[1]
[https://en.wikipedia.org/wiki/Motorola_68451](https://en.wikipedia.org/wiki/Motorola_68451)

------
ifdefdebug
Always nice to remember: "If Microsoft ever does applications for Linux it
means I've won." [1]

[1]
[http://edition.cnn.com/TECH/computing/9810/01/whylinux.idg/](http://edition.cnn.com/TECH/computing/9810/01/whylinux.idg/)

~~~
johnhenry
So, I guess Linus super-wins?

~~~
ccozan
There is an 80% chance that you are carrying a Linux kernel powered device in
your pocket right now.

I think is a undisputed win.

~~~
romanovcode
Not for so long tho. Fuchsia is not linux.

~~~
afroboy
And how many did Google abandon it's hyped projects?

~~~
romanovcode
Very doubtful they will abandon this project. This way they have full control
over everything googleOS so they can spy more on what you do which is their
endgame goal.

~~~
ccozan
This is very thin ice. The kernel is far from "spying" a user, unless Google
wants to track my syscalls.

------
joezydeco
After seeing this I think the Amazon AWS/FreeRTOS combo is looking like the
better architecture for a node solution. FreeRTOS can run on lowly M3s at
120Mhz, like the LPC2478.

A 500MHz A7 part is way too much silicon for an IoT node. How much external
SDRAM and Flash are connected to that MediaTek core?

~~~
kbenson
> After seeing this I think the Amazon AWS/FreeRTOS combo is looking like the
> better architecture for a node solution. FreeRTOS can run on lowly M3s at
> 120Mhz, like the LPC2478

Is that supposed to imply linux can't? Or that linux plus a GNU subsystem
can't? I've personally run it on a lot lower end hardware than that seems to
be.

~~~
joezydeco
Oh, it can. I've run ucLinux (MMU-less Linux) on an LPC1788 (Cortex-M3) and it
works...okay. Making dynamic libraries work correctly on it is a pain in the
ass. It just wasn't worth it at the end and the O/S hogged up most of the
processor, RAM, and Flash.

~~~
anujdeshpande
Exactly. I think these end up as good PoCs - and it would be amazing to think
of a future where we can run one of the Linux derivatives on a something that
was designed with FreeRTOS or equivalent in mind - but it's just not going to
happen on a commercial scale in my opinion.

~~~
joezydeco
ARM Linux isn't really slimming down, so the chips need to grow to catch up.

You're starting to see devices like the Renesas RZ/A1H that has 10MiB of SDRAM
on the die and can boot Linux out of a single cheap QSPI memory part.

------
JudasGoat
Someone has been predicting that Microsoft would in the future produce their
own Linux Distro on Slashdot for the last 5 years. I remember thinking it
sounded impossible for for the first few years. Seems prophetic now.

~~~
Operyl
If you say the same thing long enough one day it’ll be true in some way
(little or big).

~~~
quickthrower2
Linus is going to write his own Windows distribution

~~~
shermanyo
close enough? :P

[https://www.winehq.org/](https://www.winehq.org/)

------
pfarnsworth
Microsoft has a lot of great engineers that have no religious bias against
Linux. This was strictly a Bill Gates/Steve Ballmer thing. The smartest thing
Nadella did was get rid of the Windows religion aspect to their work and let
their engineers do the best thing, and not be afraid of Linux.

~~~
ekianjo
where is the office suite for Linux then?

~~~
kelnos
I doubt that has much to do with "religion"; they simply don't think a Linux
version of Office will bring in enough revenue to be worth the development and
support costs... and I probably wouldn't disagree with that assessment.

Linux has large (majority?) market share in the server and IoT markets, but a
very tiny market share when it comes to desktop.

~~~
ekianjo
Yes, but such applications like Office would make it a lot easier for more
people to consider Linux as a viable alternative OS.

------
wicket
Meanwhile, The Linux Foundation decided that Linux isn't suitable and
developed Zephyr [1] instead for IoT.

[1] [https://www.zephyrproject.org/](https://www.zephyrproject.org/)

~~~
choudanu4
But I was under the impression that Linux isn't suitable as a real-time
operating system (RTOS)[1] (which Microsoft may very well not require for
their IoT systems). So the Linux Foundation providing an alternative free
kernel meeting RTOS requirements makes perfect sense.

I'm not as clear on the history, but was Linux _ever_ pitched as capable of
being real-time OS? I don't think so. The hard requirements for real-time
generally lead to very different systems than general-purpose operating
systems.

[1] [https://en.wikipedia.org/wiki/Real-
time_operating_system](https://en.wikipedia.org/wiki/Real-
time_operating_system)

------
progval
> Windows IoT runs on microprocessor units (MPUs) which have at least 100x the
> power of the MCU.

> MediaTek is producing the first set of these new MCUs. These are low-
> powered, single-core ARM-A7 systems that run at 500MHz

Er... what kind of hardware is Windows IoT supposed to run on?

~~~
arnarbi
They seem either confused about what "MCU" means, or intent on changing the
commonly accepted meaning.

~~~
anujdeshpande
I think its a marketing thing. Engineers wouldn't have let this one slide.

My professors at college taught a simple rule of thumb - if it can't run
regular Linux it's probably a MCU. Finer print talked about the presence of a
MMU being the key differentiator.

I've stuck to that definition so far. Might have to rewire if this gimmick
catches on

------
cutler
Just curious, how's Microsoft's bogus Linux patents racket doing these days?

~~~
bitmapbrother
I think they've moved on from shaking down companies and customers that use
Linux to shaking down companies that use Android.

 _SEP 20, 2011 Casio agrees to pay Microsoft an undisclosed sum for a deal
that includes Microsoft 's vow not to sue Casio's customers for using its
Linux devices_

 _Microsoft General Counsel Brad Smith and licensing chief Horacio Gutierrez
sat down with Fortune recently to map out their strategy for getting FOSS
users to pay royalties. Revealing the precise figure for the first time, they
state that FOSS infringes on no fewer than 235 Microsoft patents._

 _It 's a breathtaking number. (By comparison, for instance, Verizon's
(Charts, Fortune 500) patent suit against Vonage (Charts), which now threatens
to bankrupt the latter, was based on just seven patents, of which only three
were found to be infringing.) "This is not a case of some accidental,
unknowing infringement," Gutierrez asserts. "There is an overwhelming number
of patents being infringed."_

~~~
cutler
I vaguely recall Google making noises about taking-on Microsoft's over their
patent mafia tactics but it seem nothing came of it.

------
rusabd
If you didn't know Microsoft used to have its own version of Unix a long time
ago: Xenix. Never seen it personally though, my first experience with PC was
MSDOS.

[https://en.wikipedia.org/wiki/Xenix](https://en.wikipedia.org/wiki/Xenix)

~~~
pjmlp
It was kind of ok.

That is how I learned UNIX back in the day.

As anecdote, given the UNIX prices even for PCs, the teacher would carry a PC
with Xenix into our lab and then each group would have about 20 minute turns
to test what was already prepared typing on MS-DOS.

This is why getting a C compiler for MS-DOS mattered to many of us, we wanted
to maximize our slot as much as possible, it wasn't about its qualities.

------
jacksmith21006
Maybe driven by

[http://blog.zorinaq.com/i-contribute-to-the-windows-
kernel-w...](http://blog.zorinaq.com/i-contribute-to-the-windows-kernel-we-
are-slower-than-other-oper/) "I Contribute to the Windows Kernel. We Are
Slower Than Other ...

------
amq
In my understanding, MCUs are more like ARM M, with 40MHz and 128KB RAM. But
this thing is closer to rpi, with 500MHz, so I wonder what is the power
consumption.

------
sandGorgon
It would have been much better if they had thrown their weight behind Android
Things (
[https://developer.android.com/things/index.html](https://developer.android.com/things/index.html))
Maybe build an open foundation around it like Kubernetes CNCF.

Google is surprisingly open to build democratic orgs around its tech.

~~~
amiraliakbari
As long as Google is controlling AOSP by all means to lock users in Google
services, it can't be trusted to control another fundamental platform.

------
mattkevan
Embrace, extend.. and extinguish!

~~~
iceman2654
This was my first thought based on the history and culture of the company.
I'll be watching this development closely. The optimistic side of me hopes
embracing Linux marks a real change in Microsoft, but we'll have to wait and
see.

------
nkkollaw
I would switch to Windows in a heartbeat if they dropped NT and switched to
becoming a Linux distro with a Windows emululator for legacy apps.

~~~
NiveaGeForce
That would be a downgrade.

~~~
nkkollaw
Really?

Even just the file locking would make it an upgrade, since it would allow you
to avoid restaring your PC after upgrades like 30 years ago.

What makes Windows internals superior to Unix-based systems?

~~~
NiveaGeForce
See
[http://itvision.altervista.org/why.linux.is.not.ready.for.th...](http://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html)

------
antoniuschan99
Is this a 'fork' of an ARM/MediaTek chip?

I'm currently on the Espressif platform for our stack.

How does it compare overall and in terms of security?

~~~
anujdeshpande
How are you finding the Espressif stack?

~~~
antoniuschan99
It's not bad. Pretty stable. It still feels very much for the hobbyist though.

------
jwildeboer
Maybe I'm just unable to look at the right places, but where is the source
code repository?

------
mangecoeur
Current weather in hell: chilly ;)

------
nunez
Good choice. Windows is too fat for IoT as is.

~~~
NiveaGeForce
It's not.

~~~
nunez
Elaborate?

------
raimue
[deleted]

~~~
hoschicz
Those were made by Intel.

~~~
raimue
Absolute brainfart by me. Need more coffee.

------
muyuu
Isn't OSS grand?

------
u04f061
Microsoft is becoming the cool company once again by embracing open-source
technologies and contributing to various other OS projects. They are
refocusing their business all around Azure subscriptions.

