எளிய தமிழில் IoT – 13. இயங்குதளங்கள் (Operating systems – OS)

IoT சாதனங்கள் வளங்கள் குறைந்த சாதனங்கள் (resource Constrained devices) என்று முன்னரே பார்த்தோம். நாம் கணினிகளில் பயன்படுத்தும் இயங்குதளங்கள் வளங்களை மிக தாராளமாகவே பயன்படுத்துபவை. கொஞ்சம் பழைய கணினிகளில் புது வெளியீடு இயங்குதளங்கள் திணறுவதை நாம் பார்க்கிறோம். கணிப்பியின் வேகம் மற்றும் நினைவகத்தின் அளவு அவற்றுக்குப் போதுமானதாக இருப்பதில்லை. ஆகவே IoT சாதனங்களில் இவற்றைப் பயன்படுத்த முடியாது. வேறு சிறிய, சிக்கனமான இயங்குதளங்கள் தேவை.

IoT நினைவகங்கள் மிகச்சிறியவை

IoT இயங்குதளங்களுக்கு முக்கிய அம்சங்கள் 

ஆகவே, IoT சாதனங்களில் ஓடக்கூடிய இயங்குதளங்களுக்கு கீழ்க்கண்ட அம்சங்கள் முக்கியமானவை:

  • சிறிய நினைவகத்துக்குள் அடங்க வேண்டும். 
  • மின்கலத்தின் சக்தியை சிக்கனமாகப் பயன்படுத்தவேண்டும். 
  • பலவிதமான வன்பொருட்களில் ஓடக்கூடியதாக இருக்கவேண்டும். 
  • பலவிதமான கம்பியில்லாத் தொடர்பு வரைமுறைகள்படி பிணையத்தில் தொடர்புகொள்ள முடியவேண்டும். 
  • அடிப்படையிலேயே பாதுகாப்பாக இருக்க வேண்டும். 
  • செயலிகளை உருவாக்க நல்ல கருவித் தொகுப்புகள் இருக்க வேண்டும். 
  • நாம் செய்யும் வேலையைப் பொருத்து நிகழ்நேரச் செயல்வல்லமை (Real-time capabilities) தேவைப்படலாம். இது நேரம் தவறாமல் செய்ய வேண்டிய சில நெருக்கடியான வேலைகளுக்கு மிகவும் அவசியம்.

தொலை சாதன மேலாண்மை (Remote device management)

தொழிற்சாலையில் பெரிய அளவில் IoT செயல்படுத்த தொலை சாதன மேலாண்மை மிகவும் அவசியம். தொழிற்சாலை தளத்தில் கைமுறையாக சாதனங்களை மேலாண்மை செய்ய முயற்சி செய்தால் தவறுகள் நடக்கக்கூடும், நேரம் எடுக்கும் மற்றும் செலவும் அதிகம். ஆகவே இயங்குதளங்களில் இதற்கு ஆதரவு இருக்க வேண்டும். கட்டுப்பாட்டகத்திலிருந்தோ (controller) அல்லது மானிப்பெட்டியிலிருந்தோ (dashboard)  நம் IoT அமைப்பிலிருக்கும் ஒவ்வொரு சாதனத்துக்கும் கீழ்க்கண்ட வேலைகளைச் செய்ய இயலவேண்டும்:

  1. தொடக்க அமைப்பு (initial setup and configuration) 
  2. சாதன நலச் சோதனை (health check of device) 
  3. மென்பொருள் புதுப்பித்தல் (software update) 
  4. இயக்க நீக்கம் (deactivation)

லினக்ஸ் அடிப்படையிலான IoT இயங்குதளங்கள்

லினக்ஸ் கருநிரலை (kernel) மட்டும் வைத்துக்கொண்டு IoT க்கு தேவையற்ற சேவைகளையும் கருவிகளையும் நீக்கி சுருக்கமாக ஆக்கலாம். இருப்பினும் இது 8 மற்றும் 16 இரும (8/16-bit) கணினிகளில் ஓடாது. 32 இரும (32-bit) கணினிகளிலேயே திணறும்.

ராஸ்பை (Raspberry Pi) கையடக்கக் கணினியில் ஓடும் ராஸ்பியன் (Raspbian) மற்றும் உபுண்டு கோர் (Ubuntu Core) இந்த வகையைச் சார்ந்தவை.

உட்பொதி அமைப்புகளுக்காகவே (embedded systems) உருவாக்கிய திறந்த மூல இயங்குதளங்கள்

பில்ட்ரூட் (Buildroot): இதில் துரிதமாகத் தொடங்கலாம், எளிதில் புரிந்துகொள்ளக் கூடியது மற்றும் பெரிய நிரலாளர்கள் சமூகம் உள்ளது.

ஓபன்-டபிள்யூஆர்டி (OpenWrt): பெரும்பாலான வணிக சாதனங்களில் வரும் தனியுரிம இயங்குதளங்களுக்கு மாற்றாக இதைப் பயன்படுத்தலாம்.

யோக்டோ லினக்ஸ் (Yocto Linux): இது லினக்ஸ் அறக்கட்டளை ஆதரவு பெற்ற திட்டம். சாதனங்களுக்குத் தக்கவாறு தனிப்பயனாக்க (customize) முடியும். ஆனால் மிகவும் மெனக்கெட வேண்டும். சாதனத் தயாரிப்பாளர்கள் இந்த முயற்சியைப் போட முடியும். ஆனால் பயனர்கள் செய்வது கடினம்.

நிகழ் நேர (Real-time) இயங்கு தளங்கள்

நாம் மேலே பார்த்ததுபோல நேரம் தவறாமல் செய்ய வேண்டிய சில நெருக்கடியான வேலைகளுக்கு நிகழ் நேர இயங்கு தளங்கள் மிகவும் அவசியம்.

அபாச்சி மைநியூட் (Apache Mynewt): அபாச்சி இணைய வழங்கி மற்றும் பல திறந்த மூல மென்பொருட்களை நல்ல தரத்தில் தயார் செய்து, மேம்படுத்தி, தொடர்ந்து பராமரித்து வரும் அபாச்சி அறக்கட்டளை இதை வெளியிடுகிறது.

எம்பெட் (mbed): நுண்செயலி தயாரிப்பு நிறுவனம் ஆர்ம் (Arm) ஆதரவில் இந்த திறந்த மூல இயங்கு தளம் வெளியிடப்படுகிறது.

நன்றி

  1. What are typical memory requirements for IoT OS?

இத்தொடரில் அடுத்த கட்டுரை: சோதனைகள் செய்யத் திறந்த வன்பொருட்கள்

அர்டுயினோ (Arduino) நுண்செயலி. கையடக்கக் கணினி ராஸ்பை (Raspberry Pi). கையடக்கக் கணினி பீகிள்போர்ட் (BeagleBoard). ஸ்பார்க்ஃபன் (SparkFun) மற்றும் ஏடாஃப்ரூட் (Adafruit).

ashokramach@gmail.com

%d bloggers like this: