Академический Документы
Профессиональный Документы
Культура Документы
Salahuddin M. ElKazak
Cairo University, Masters in Computer Engineering
Abstract
With the recent extraordinary scientific discoveries and technological advances computers have
become ubiquitous and the vision of Internet of Things (IoT) is coming to reality; while Operating
Systems (OS's) may be considered a relatively old field of research, its unique role in the IoT and
the crucial reliance on it being critically efficient in various ways for various types of Things reignites its field of research once more. This report first introduces the two terminologies IoT and OS
explaining what they are and defining their relationship to one another. Then, the report continues to
explore the field of IoT OS's and current research as a form of survey report. Finally, the report
proves that the field of IoT has reignited the field of OS research and that current IoT OS's are still
in need of valuable research to enforce the field of IoT and let it thrive into fruition.
Keywords: IoT, Internet of Things, OS, Operating Systems, Field of Research, Survey on
IoT OS
Table of Contents
1.Introduction.......................................................................................................................................5
2.Objectives..........................................................................................................................................6
3.What is IoT........................................................................................................................................7
3.1.IoT as a new area of research.....................................................................................................8
3.2.IoT's importance in the future....................................................................................................8
4.What are Operating Systems...........................................................................................................10
4.1.OS's as an old ongoing technology..........................................................................................11
4.2.OS's impact due to IoT............................................................................................................12
4.3.Comparison between IoT OS's and nonIoT OS's.....................................................................13
4.4.Differing Concepts...................................................................................................................14
4.5.Need for a special OS..............................................................................................................15
5.Survey on IoT OS's..........................................................................................................................16
5.1.Comparison of IoT OS's..........................................................................................................18
5.2.Most used IoT OS's..................................................................................................................19
5.3.Specialized usage of IoT OS's.................................................................................................20
6.IoT OS as an area of research..........................................................................................................21
7.Conclusion.......................................................................................................................................22
8.Future Work.....................................................................................................................................23
List of Tables
Table 5.1: IoT OS Comparisons (Several Cited Resources)...............................................................18
List of Figures
Figure 3.1: MCU Billion Dollar Sales (Micrium, 2015)......................................................................9
Figure 3.2: Billion MCU Unit Shipments (Micrium, 2015).................................................................9
Figure 4.3: Impact of application and hardware trends on OSs, whats broken in current OS design,
and the OS outlook. (Milojii, D., Timothy, R., 2016).....................................................................12
Figure 4.4: Typical components of an OS for low-end IoT devices,including a common low-power
IPv6 protocol stack.............................................................................................................................13
List of Abbreviations
Acronym
Expanded Form
Acronym
Expanded Form
DMA
NVRAM
Non-Volatile RAM
IoT
Internet of Things
OS
Operating System
MMUs
OS's
Operating Systems
NUMA
SoCs
Systems on Chips
NVM
Non-Volatile Memory
WSN
1. Introduction
With the recent extraordinary scientific discoveries and technological advances computers have
become ubiquitous and the vision of Internet of Things (IoT) is coming to reality; while Operating
Systems (OS's) may be considered a relatively old field of research, its unique role in the IoT and
the crucial reliance on it being critically efficient in various ways for various types of Things reignites its field of research once more.
The applications and usage of IoT and the need for its specialized OS's along with the slow reaction
of researchers is an alarm for the urgency of more research in this area. IoT developers/researchers
are still rare, many cannot even define the word correctly. OS developers/researchers are also rare
and that is due to the fact that it is a highly specialized field with a very slow curve and tolerance
for change.
This report first introduces the two terminologies IoT and OS, in the first and second sections,
explaining what they are and defining their relationship to one another. Then in the third section, the
report continues to explore the field of IoT OS's and current research as a form of survey report.
Finally in the last sections, the report proves that the field of IoT has reignited the field of OS
research and that current IoT OS's are still in need of valuable research to enforce the field of IoT
and let it thrive into fruition.
2. Objectives
The main importance of this report lies in the need to grasp IoT researchers' attentions and lead
them to realize the importance of
1. using OS's for IoT devices
2. researching IoT-specific OS's
3. developing IoT-specific OS's
4. contributing to IoT applications through specialized OS's
The report should:
1. define clearly the terms mentioned above
2. use statistics for the indicators of IoT OS's importance specifically
3. use statistics for the indicators of IoT's importance generally
4. define the need for OS's in the field of IoT
5. exemplify important IoT markets
6. exemplify important IoT application-specific needs/usages
3. What is IoT
The Internet of Things (IoT) is the vision of interconnecting objects, users and entities or things.
While humans can communicate with others via various applications and websites, the vision is to
enable human to object communication, object to object communication and various variations
(ITU-T, 2012).
The Internet is no longer limited to human communication, for example one may communicate with
their own air conditioner and instruct it to start working before arriving home. Even more so, let the
car deliver that instruction automatically, it can use the Internet to predict traffic, tell the air
conditioner that you are heading home and the expected arrival time depending on which the air
conditioner can decide to work on a particular degree!
While this may seem of science-fiction or at least extremely luxurious for homes, it is the natural
evolution of the Internet. More and more devices are becoming connected in the industry either to
be controlled, used for sensing or be simply accounted for. Smart grids are demanding an IoT
structure to rationalize nation-wide energy consumption. Wireless Sensor Networks are turning into
an IoT structure.
10
11
12
13
Furthermore, (Milojii, D., Timothy, R., 2016) believes that current OS's cannot change enough to
suit future changes in both directions (high-end and low-end devices). Our concern is low-end IoT
devices and Figure 4.3 shows impact on OS design in general including IoT OS's.
14
15
Two critical stacks of the OS should also be changed, the network and data storage/filesystem
stacks. These are affected by Direct Memory Access (DMA) due to their demanding bandwidth of
large data streams. This causes a demand of computer structural change like using the network
interface card as a simple switch or using solid-state drives as a storage underlying technology.
These changes would have to be adapted for large-scale parallelized and distributed systems with
multi-core integration. Their basic data structures and governing protocols would have to be suited
for their needs.
IoT devices are usually simple in nature and exist mainly for a few purposes like smoke sensors or
a.c. controllers or TV's etc. However, ignoring the uses of OS's in appropriately managing resources
especially now that there is an extra network stack added to each and every IoT device would be
counter-productive.
Finally, the supporting and suggested structural changes discussed previously can only indicate and
prove one thing, that current general-purpose OS's are no longer general-purpose and that specificpurpose OS's are required for IoT low-power devices.
16
17
microcontrollers by removing common objections to using free software, and in so doing, providing
a truly compelling free software model. (FreeRTOS, 2015)
ARM mbed OS is an open source embedded operating system designed specifically for the
"things" in the Internet of Things (IoT). It includes all the features you need to develop a connected
product based on an ARM Cortex-M microcontroller, and is perfect for applications including smart
cities, smart homes and wearables. (mbed, 2015)
RIOT is an operating system designed for the particular requirements of Internet of Things (IoT)
scenarios. These requirements comprise a low memory footprint, high energy efficiency, real-time
capabilities, a modular and configurable communication stack, and support for a wide range of lowpower devices. RIOT provides a microkernel, utilities like cryptographic libraries, data structures
(bloom filters, hash tables, priority queues), or a shell, different network stacks, and support for
various microcontrollers, radio drivers, sensors, and configurations for entire platforms, e.g. TelosB
or STM32 Discovery Boards. (RIOT, 2015)
Brillo brings the simplicity and speed of software development to hardware for IoT with an
embedded OS, core services, developer kit, and developer console. (Brillo, 2015)
18
License
Architectures Supported
Open Source
BSD
Contiki
Open Source
BSD
Mantis
Open Source
Nano-RK
Open Source
Dual License
GPL and
Commercial
LiteOS
Open Source
GPLv3
JTAG
FreeRTOS
Open Source
Modified
GPL
mbed OS
Open Source
Apache v2.0
ARM Cortex-M
RIOT
Open Source
LGPL v2.1
TinyOS
Technologies Supported
Typical
Programming
Configuratio
Model
n Size
Language,
IDE,
Simulator
few kB RAM
10s kB ROM
Event Driven,
support for
TOS threads
NesC / Any,
TinyDT,
Eclipse /
TOSSIM
2KB RAM
40KB ROM
Protothreads
and events
C / Any /
COOJA
0.5KB RAM
14KB ROM
Threads
2KB RAM
18KB ROM
Threads
C / Any,
Eclipse /
Threads and
Events
LiteC++
4KB RAM
9KB ROM
C,C++ / mbed
online IDE /
1.5KB RAM
5KB ROM
Threads
C,C++ / Any /
As shown in Table 5.1, typical configuration sizes are in a few kilobytes of RAM and ROM built
for embedded architectures and platforms. Most OS's are working on supporting various low-power
communication technologies which is a recognized area of research. The competition also exists in
19
supporting the huge variety of embedded system architectures available while some are dedicated to
particular architectures. While the licenses displayed above are exclusively Open Source variants,
there are proprietary OS's for mobile and other embedded platforms. OS challenges like multithreading and event handling can be viewed as an important issue displayed on their respective
websites.
20
Minimalistic OS's as shown in Table 5.1 will dominate the embedded world of the Internet of
Things; that is not only my opinion but of other researchers too such as (Milojii, D., Timothy, R.,
2016) for many reasons as follows.
21
22
7. Conclusion
The report has shown that the IoT market is rapidly expanding, the current demand for IoT and the
future will contain IoT devices.
The report displayed various statistics and surveys concerning the demand for different OS's and
various conferences/journals/industries and working on new IoT OS's.
The report also compared current IoT OS's with one another to view their differences and their
goals most of which are for constrained devices.
The report further analyzed these comparisons into a single conclusion, IoT OS research is a new
and active point of research.
23
8. Future Work
This report argued for the sake of IoT OS research and a detailed analysis of a number of surveys
has been covered to enforce the argument; this has lead to the conclusion that this type of research
is worthy of contributing to and should be joined as early as possible for greater impact on its
future.
Another issue that has been recognized in the referenced documents is IoT OS's security measures
and their urgent need for standardization. A few ideas regarding various encryption schemes and
security protocols have been discussed privately and should be implemented as part of a few
notable IoT OS's.
Further work with more specialized areas of research such as IoT applications in country-wide
traffic, smart grids and large world-wide projects concerning the hubble telescope and hackerspace
grids have inspired the author with important improvements to IoT OS's.
24
References
[Ashton, 2009] Ashton, K. (2009). That 'Internet of Things' Thing. RFID Journal LLC. Retrieved
from http://www.rfidjournal.com/articles/view?4986 on 2016, Jan.
[Brillo, 2015] Google Developers (2015). Brillo. developers.google.com. Retrieved from
https://developers.google.com/brillo/?hl=en on 2016, Jan.
[Contiki, 2015] Contiki (2015). Contiki: The Open Source OS for the Internet of Things. Contikios.org. Retrieved from http://www.contiki-os.org/index.html on 2016, Jan.
[FreeRTOS, 2015] FreeRTOS (2015). FreeRTOS: Quality RTOS & Embedded Software.
FreeRTOS.org. Retrieved from http://www.freertos.org/ on 2016, Jan.
[Hahm et al, 2015] Hahm, O., Baccelli, E., Petersen, H., Tsiftes, N. (2015). Operating Systems
forLow-End Devices in the Internet of Things: a Survey. IEEE. Retrieved from on .
[ITU-T, 2012] ITU-T (2012). Overview of the Internet of things. ITU-T. Retrieved from
http://www.itu.int/rec/T-REC-Y.2060-201206-I on 2016, Jan.
[Lavington, 1998] Lavington, S. (1998). A History of Manchester Computers. 2nd ed. Swindon:
The British Computer Society. pp 50-52.
[Liteos, 2015] Huawei (2015). Huaweis Agile Network 3.0 Architecture Launched at Huawei
Network Congress 2015. Huawei.com. Retrieved from http://pr.huawei.com/en/news/hw-432402agilenetwork3.0.htm on 2016, Jan.
[mbed, 2015] mbed (2015). mbed OS. ARM mbed.com. Retrieved from
GEN600: Final Technical Report
25