Contiki: An operating system for the 'Internet of Things'
- 05 October, 2012 11:42
The 'Internet of Things' (IoT) is a phrase generally considered to have been coined by Kevin Ashton in 1999. Ashton, who is now general manager of Belkin, came up with the phrase while working at Proctor & Gamble. In his words it combined "the new idea of RFID in P&G's supply chain" with the "then-red-hot topic of the Internet".
The term refers to linking the Internet to physical objects: Equipping objects, such as household appliances, with networking capabilities, allowing mutual interaction between them and greater monitoring and control over them by end users.
How Haiku is building a better BeOS
What's your idea worth? Building a social knowledge market with Barter
AmigaOS 4 developer interview: Why it endures and what the future holds
Syllable OS: Creating a better desktop operating system
Open Source Spotlight - OpenStack: Building a more open Cloud
"Ultimately, the Internet of Things is about making the simple things in life a little simpler," Adam Dunkels says. Dunkels is the creator of Contiki: an open source operating system designed to be used for the Internet of Things.
"For example, when waking up a on a summer day, wouldn’t it be nice to have an app that tells you what beach is sunniest?" Dunkels says. "The Internet of Things allows us to build such apps: apps that make the real world a little more like the Internet.
"The Internet of Things builds on a range of technologies: Low-power radios, routing protocols, sleek software. One key enabler has been the standardisation the Internet Protocol to cover new low-power wireless devices.
"This allows items, environments, places, and devices to be directly connected to the Internet and exchange information. Both obtaining information from the Internet, for example to better control heating and lighting, and pushing information to the Internet; for example providing information of where people are moving around in a city."
Dunkels believes that making the Internet of Things a reality on a large scale requires making it easier to build Internet-connected embedded systems, which is where Coniki comes in. "Contiki has worked in this direction, but it hasn’t come far enough," he says
The operating system has been built to let battery-operated, low-power systems connect to the Internet. The project began in 2003 as an experiment by Dunkels, "connecting various interesting things to the Internet". Contiki built on the uIP project, which Dunkels says was the world's smallest IP stack at the time.
"In 2002, uIP had been used to Internet-connect the world’s first Lego brick and was also widely used in embedded systems," he says.
"Contiki added an operating system layer on top of uIP, which made it possible to connect multiple applications to the Internet simultaneously."
When the project started, it made headlines by enabling a range of underpowered, dated devices connect to the Internet. The examples cited by Dunkels include the Apple II (released in 1977), the Commodore 64, and even Nintendo's handheld Gameboy console.
In 2008, networking vendor Cisco contributed code to add IPv6 support to the OS, making it the first IPv6 certified system for the Internet of Things. Other hardware vendors have also contributed to the system, helping make sure their devices can work with Contiki.
Despite its emphasis on being a super-lightweight embedded operating system, Dunkels is a "firm proponent" of not optimising code to the nth degree. "The fact that we do not need to optimise code these days makes us so much more productive than we used to be," he says.
"Sure, there is a bit of a lost art in that we don’t need to bleed every last bit out of every data structure and every last cycle out of every algorithm any more. But much of this art wasn’t that useful anyway.
"One of the biggest challenges in developing Contiki is finding the right balance between optimisation, simplicity, and resource-efficiency. It is all too easy to fall into the traps of premature optimisation and sub-optimisation."
Under the hood, however, Contiki still has some innovative features to help maintain its low overhead. For example, the system uses "protothreads"; a concept developed by Dunkels with the aid of Oliver Schmidt.
Join the Computerworld Australia group on Linkedin. The group is open to IT Directors, IT Managers, Infrastructure Managers, Network Managers, Security Managers, Communications Managers.
- How the Internet of Things could change Australian homes and businesses
- "the new idea of RFID in P&G's supply chain"
- Developer interview: How Haiku is building a better BeOS
- What's your idea worth? Building a social knowledge market with Barter
- AmigaOS 4 developer interview: Why it endures and what the future holds
- Syllable OS developer interview: Building a better operating system
- Open Source Spotlight - OpenStack: Building a more open Cloud
- Oxford University badger tracking system
- Techworld Australia
- Computerworld Australia
- Governance For All - Empowering IT and Business Content Owners
- Top 10 Mistakes in Data Centre Operations: Operating Efficient and Effective Data Centres
- World Quality Report - The State of Quality 2012
- 2013 Global Information Security Survey: Initial findings
- Power of Three: Building Mobile Initiatives Guided by Business Goals, Technology and Governance
- HTC unveils new Butterfly s phone that packs more battery life
- 3D printer creates lithium-ion batteries the size of a grain of sand
- Google Glass apps for enterprises coming by early 2014
- iPad 5 rumour rollup for the week ending June 18
- Say 'cheese', Earthlings! Spacecraft to snap home planet pic from deep space
Transfield wins $366m in new NBN work
Good riddance Google Reader: Feedly throws switch on alternate RSS service
Mobile app data protection not our responsibility, say Australians
"You may wish updated connection figures http://www.coffscoastadvocate.com.au/news/take-up-rate-of-nbn-in-coffs-harbour-takes-a-hike/1894499/ It is the acceleration of ..."NBN Co should prepare for Coalition government: NBN committee
Google adds more retailers for Chromebook