back to article Huawei announces tiny 10 KB IoT kernel

Huawei has offered up a good look at its Internet of Things strategy, using its Network Congress 2015 to show off a microkernel that will be the bedrock of its future efforts in the field. LiteOS certainly is “micro”: the kernel is 10 kilobytes but nonetheless able to support “zero configuration, auto-discovery, and auto- …

  1. Mikel

    10KB for the OS?

    Finally we are getting somewhere.

    1. Christian Berger

      Re: 10KB for the OS?

      Actually in the embedded world that's already rather large. The more interesting questions are how much RAM it needs under certain conditions, for example with one TLS connection open.

      Flash is cheap in embedded devices, RAM is the expensive thing. Your microcontroller may have anything from 256 bytes to 256 kilobytes and anything beyond will need external RAM which makes is so expensive you can just as well add 16 Megabytes with no additional cost and run Linux.

      Anyhow in that order of magnitude you can also get an FreeRTOS/OpenRTOS which gives you the advantage of being well designed and documented, plus even the free support via Webforum is _way_ better than anything you can pay for with companies like Mentor Graphics.

      1. Anonymous Coward
        Joke

        Re: 10KB for the OS?

        TLS? This is the the internet of things, you can take your stinking security and shove it. Open Source and Open Access, that's the way to go.

        Love Timmy, aged 21 & 3/4, fresh from Uni.

      2. Robert Helpmann??
        Childcatcher

        Re: 10KB for the OS?

        Flash is cheap in embedded devices, RAM is the expensive thing. Your microcontroller may have anything from 256 bytes to 256 kilobytes and anything beyond will need external RAM which makes is so expensive you can just as well add 16 Megabytes with no additional cost and run Linux

        As far as I can tell, this page gives memory requirements for LiteOS

        http://wiki.oiotc.cc/index.php?title=Os%E5%86%85%E5%AD%98%E5%8D%A0%E7%94%A8%E6%83%85%E5%86%B5

        Google Translate does not seem to be up to the task of rendering the appropriate table into a reasonable English format, or French for that matter. Would someone who can read Chinese care to take a stab at this? I am also not sure from looking through the Googlized web page whether the network stack is part of the kernel. I hope not as something like that could bring us the IoT PoD (though that does have a nice ring to it).

        1. Anonymous Coward
          Anonymous Coward

          Re: 10KB for the OS?

          As far as I can tell, this page gives memory requirements for LiteOS

          http://wiki.oiotc.cc/index.php?title=Os%E5%86%85%E5%AD%98%E5%8D%A0%E7%94%A8%E6%83%85%E5%86%B5

          I can't read Chinese but that table gives the three different segments: .text, .data and .bss. .data and .bss exist in RAM, .text exists in flash.

          The rows from what I can tell give the usage for (in this order):

          - The kernel itself

          - Mutex objects

          - Semaphore objects

          - "Swtmr" objects (whatever they are)

          - Queue objects

          - Task objects.

          Presumably for the Queue objects that's the overhead, and queue data will be extra on top of that. There'd be one copy of the .text for each of those included (so if you have two Queues, you'd only include one copy of the .text implementing a Queue), but there'd be a block of memory (360 bytes by the looks of things) per queue used in RAM.

          1. Andrew Hodgkinson

            Re: 10KB for the OS?

            - "Swtmr" objects (whatever they are)

            Software Timer, surely.

      3. Anonymous Coward
        Anonymous Coward

        Re: 10KB for the OS?

        Indeed, RAM usage is a more useful metric… coding for tight flash isn't too bad, but coding for tight RAM is.

        I once had to code for a TI MSP430F135 which is a 16-bit proprietary microcontroller with 16kB flash and 512 bytes of RAM. That was tough!

        We found we were able to de-solder the original MCU and drop a MSP430F149 in its place, which gave me some much needed breathing room: 2kB RAM and 60kB flash. Not all designs permit this though, and most microcontrollers available to hobbyists are skint in the RAM department.

    2. Hans 1

      Re: 10KB for the OS?

      kernel != OS

      Besides, with flash prices being what they are, you can pretty cheaply get 1Gb flash these days, ram is more expensive, but even then, 8 or 16Mb would be more than enough for IoT, and that comes quite cheap.

      A tailored Linux kernel would be much better, has much better support, been developed and gone through testing for 20+ years, and, best of all, drivers for chipsets are readily available. Not sure what the RAM requirements for systemd are, <joke>I guess at the least 2Gb</joke> ... but then again, who needs systemd when you do not need gnome.

      1. Dave 126 Silver badge

        Re: 10KB for the OS?

        >"A tailored Linux kernel would be much better"

        How so? And how are the Real Time variants of Linux doing these days?

        >"has much better support, been developed and gone through testing for 20+ years," applies to some RTOSs more than it does to Linux. For IoT applications, the tried and tested OSs from the fields of Industrial Control and Avionics are a better place to look.

        1. Anonymous Coward
          Anonymous Coward

          Re: 10KB for the OS?

          I know GTECH still uses MontaVista Linux for its terminals. Last I checked, they're still active.

          1. teknopaul

            Re: 10KB for the OS?

            With 500mb of ram

      2. Bob H

        Re: 10KB for the OS?

        Linux might be viable when you can get 800DMIPS of CPU and 64MB of RAM for <$4, but I'll stick with micro-controllers and an RTOS for tiny, low cost, embedded designs for a while yet.

  2. James Cane

    It's not about the technology

    The most interesting thing about this is that it's a Chinese company competing at the R&D and not even bothering to release a website or details in English.

    Welcome to the future.

    1. Christian Berger

      Re: It's not about the technology

      Well to be honest, that's probably a tiny project, perhaps one or two people. Such things have been done by hobbyists before. It wouldn't be surprised if translating the website would cost more than the rest of the project.

  3. JP19

    " it reckons there'll be 100 billion devices in 2025"

    So that is about 14 for every soul currently on the planet and still I can't think of one thing I want connected to the internet that isn't already.

    1. Anonymous Coward
      Anonymous Coward

      Re: " it reckons there'll be 100 billion devices in 2025"

      Yes, you're under thinking the number of things. Think your boiler, each of your radiators. Thermostat for each room in your home. Outside temperature. Washing machine. Front/back/garage doors. The list is pretty big...

  4. Bucky 2
    Trollface

    "Network Congress"?

    I'm familiar with the Congress Of The Cow, and the Congress Of The Tiger, but Network Congress? I'm having trouble picturing that one.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like