கருவிகள்:
கந்தசாமி; ஒவ்வொரு தொழிலிலேயும். இடம், சேவை தருவோ, சேவை பெறுவோர், சேமிப்பு என்று இருப்பது போல, துறைகளைப் பொருத்து, பல கருவிகள் பயன்படுத்தப் படுகின்றது இல்லையா? யுனிக்ஸிலே அப்படிப்பட்ட துறை சார்ந்த கருவி, வேறு எதிலும் பயன் படுத்தப் படாதது, யுனிக்ஸில் இருக்கிறதா?
நடராஜன்; யுனிக்ஸ் ஓடும் கம்ப்யூட்டரிலே, ஒரு தவறில்லாமல், பல சுற்றுக்களில், சிறு சிறு துளி நேரங்களைமட்டுமே ஒவ்வொரு பயனாளிகளின் புரோகிராம்களுக்கும் அளித்து, அனைத்து புரோகிராம்களையும் பிராசஸ் செய்கிறது.
இந்த வகை செயல்பாடு, சூடோ கான்கரண்ட் பிராசசிங் (pseudo concurrent processing) என்று அறியப்படுகிறது.
இந்த முறையில் ¢ சிறிதளவு தாமதம் அனைத்து புரோகிராம்களும் அடைந்தாலும், அனைவரும் பயன் அடையும் விதமாக அமைந்திருப்பது யுனிக்ஸ் ஆப்பரேடிங் சிஸ்டத்தின் சிறப்பு. இவற்றை செயல்படுத்த சில கருவிகள் அவசியம். அவற்றை விவரமாகப் பார்க்கலாம்.
இந்தக் கருவிகள் நான்கு வகைப்படும்;
(1) கெர்னல் டேட்டா ஸ்டரட்சர், (2) சிஸ்டம் கால்கள், (3) சிக்னல் மற்றும் (4) இண்டெர்-பிராசஸ் கம்யூனிகேஷன் ஆகியவை.
கருவி 01: கெர்னல் டேட்டா ஸ்டரட்சர் (kerneldata structure).
இது ஒரு அருமையான கருவி. இதன் சிறப்பு, இதன் எளிமையிலே உள்ளது. கெர்னல் டேட்டா ஸ்டரட்சர் ஒரு டெக்ஸ்ட் பைல்.
யுனிக்ஸில் உள்ள ஒவ்வொரு டிபார்ட்மெண்டிலும் ஒன்றும் அதற்கு அதிகமான டேட்டா ஸ்டட்சரள் உண்டு.
(அதுவும் ஒரு பைல் தான்). எல்லா மாடூல்களிலும் ஒன்று அல்லது அதற்கும் அதிகமான டேட்டா ஸ்டட்சர்கள் ,உள்ளன. அவற்றில், அந்தந்த மாடூல்களில், பிராசஸ் குறித்து, அவ்வப்போது நிகழும் மாற்றங்களும், முன்னேற்றங்களும் முறையாகப் பதிவு செய்யப்படும். கணக்குப் பிள்ளை வரவு செலவுகளை அவ்வப்போது ஒரு புத்தகத்தில் குறிப்பதில்லையா?
இந்த ஒரு கருவி பிராசஸிங் செய்யும் போது தவறுகள் நிகழாவண்ணம் தடுப்பதில் பெரும்பங்கு வகிக்கிறது. ஒவ்வொரு மாடூல்களிலும் உள்ள டேட்டா ஸ்டட்சர்களை, அடுத்து வரும் பக்கங்களில் ஒரு அத்தியாயத்தில் விவரமாகக் காண்போம்.
கருவிகள்
1 . கெர்னல் டேட்டா-ஸ்டட்சர். (kernal data structure)
இந்தக் கருவி மென்-பொருள் அல்லது software என்னும் வகையைச் சேர்ந்து. இதன் உண்மை உருவம் ஒரு எளிய, இயக்க சுலபமான ஒரு டெக்ஸ்ட் பைல்.
பைல்-சிஸ்ட்ம், மெமொரி மானேஜ்மெண்ட், பிராசஸ் மானேஜ்மெண்ட், ஐ.ஓ மானேஜ்மெண்ட் என்று மாடூல் ஓவ்வொன்றிலும், கெர்னல் டேட்டா-ஸ்டட்சர் என்ற ஒரு ஏற்பாடு செய்யப் பட்டுள்ளது. உண்மை வாழ்க்கையிலிருந்து சில உதாரணங்கள்.
இதன் பயன்பாட்டை, ஒரு மருத்துவர் தன்னுடன் கொண்டு செல்லும் பையுடன் ஒப்பிடலாம், ஒரு நோயாளிக்கு முதல் உதவிச் சிகிச்சை அளிக்க மிகவும் அவசியமான கருவிகள், சில மருந்து
இது போன்ற பயன்பாடு, எல்லாத் துறைகளிலும் காணும் தொழில் நிபுணர்களும் ஒரு கருவியோ அல்லது சில அவசிய கருவிகள் அடங்கிய ஒரு “ டூல் கிட்” வைத்திருப்பது நாம் அறிந்தது..
கெர்னல் டேட்டா ஸ்டட்ற்சரின் பயன்பாட்டின் சிறப்பு;
கெர்னல் என்னும் குவியலில் உள்ள சில புரோகிராம்கள் ஓட்டப்பட வேண்டிய பிராசஸ்களைப் பற்றிய விவரங்களையும், மெமொரியில் பிராசஸ்கள் (அவ்வப்போது மாறுவதும், அவை தற்போது மெமொரியில் உள்ள விலாசங்கள், பிராசஸரில் நிலை, போன்ற பலவித தகவல்களைச் சேமித்தும் கண்காணித்தும் வருகிறது.
இவைகள் ஆப்பரேடிங் சிஸ்டத்தின் பாகமாக இருந்தும் – இவற்றை கெர்னலின் பாகமாகவோ அல்லது, யூசர் புரோகிராம்களின் பாகமாகவோ இல்லை என்பது குறிப்பிடத்தகுந்தது.
யூசர் புரோகிராம்களை தவறில்லாமல் ஓட்ட இந்த கண்காணிப்பு பயனாகிறது. இந்த செய்திகள் எங்கே வைக்கப்பட்டுள்ளன?
கெர்னல் டேட்டா ஸ்டட்ஸச்சர்கள் என்று ஒரு கருவி ஓவ்வொரு மாடூலிலும் ஒன்று அதற்கு மேலும் இருப்பதைக் குறிப்பிட்டோம்.
கெர்னல் டேட்டா ஸ்டட்றச்சர்களில் வைக்கப்பட்டு, செய்திகள், காட்சிகள் மாறும்போதெல்லாம், அவ்வப்போது அந்தச் சேமிப்பில் மாற்றங்கள் செய்து வருகிறது.
இதில் சேமித்த தகவல்கள் பல துளிகளாய் இயக்கப்படும் பிராசஸ்கள் சிறிதும் தவறில்லாமல் இயக்க, உதவுகிறது.
பிராசஸ்கள் மெமொரியிலும், டிஸ்க்கிலும் தங்குமிடம் மாறி வருகிறது. அவற்றை விரைவாக கண்டு அறிந்து, அதன் முறை வரும்போது, இயக்கவும் டேட்டா ஸ்டட்சர்கள் அவசியம். அவற்றின் செயல்பாட்டைக் கண்டறிவது மாணவர்களுக்கான பயிற்சி.
- பிராசஸ்களினிடையே உறவுகள் – சொந்தங்கள்.
இண்டெர் பிராசஸ் கம்யூனிகேஷன் & சிங்க்ரொனைசேஷன் – தேவைகள். (interprocess communication & Sychronisation).
யாதும் ஊரே யாவரும் கேளிர்!
மனித குலம் உலகின் எந்த இடத்தில் வசித்தாலும் எல்லாருமே, ஒருவிதத்தில் ஒருவருக்கு ஒருவர் சொந்தம்தான். இந்த அருமையான கருத்தை யுனிக்ஸ் மூலம் பேராசிரியர்கள் உணர்த்தியிருக்கிரார்கள்.
யாதும் ஊரே யாவரும் கேளிர் என்னும் தத்துவத்தை யுனிக்ஸ் நமக்கு எப்படி உணர்த்திருக்கிறது என்று பார்க்கலாமா?
சொந்த-பந்தங்கள் என்று வரும்போது பிரச்சனைகளும் பின்தொடரும். எல்லா பிரச்சனைகளுக்கும் ஒரே வித தீர்வுகள் இல்லை என்பதை நான் நன்றாகவே அறிவோம்.
இப்போ ராமசாசாமிசார் அமெரிக்காவிலே சந்தித்த பிரச்சனைகளையும் அதன் தீர்வுகளை வைத்து அவர் யுனிக்ஸிலே புரிந்த சாதனையைப் பார்க்கலாம்.
ராமசாமி சாரோட பிரச்சனைகள்;
ராமசாமிசார் குடியிருந்த அபார்ட்மெண்டுலே, பெர்கலியிலேயே வேலை செய்யுர உதவிப் பேராசிரியர் லூ, அவரத்தவிர பாக்கிஸ்தான் தூதரகத்திலே ஒரு உயர் அதிகாரி என்று மூன்று பேரும் குடும்பங்களும் அருகருகே வசித்தன.
இவர்கள் குழந்தைகள் சேர்ந்து விளையாடுவதும், அவர்களுள் சண்டை போட்டுக் கொள்வதும் இயல்பே.
இந்தக் குழந்தைகளில் மிகவும் சிறிய வயதினர் ராமசாமி சாரோட ஒரு மகனும், ஒரு மகளும்தான். மற்றவர்கள் ஏதானும் ஒருவிதத்தில் இவருடைய குழந்தைகளை காயப்படுத்துவதோ அல்லது அழவிடுவதும் வழக்கமாகி விட்டது.
இது போதாதென்று ராமசாமி சாரோட மகனும்-மகளும் சண்டையிட்டுக்கொண்டு அழுகையுடன் வீடு திரும்புவாவார்கள். ராமசாமி சார் என்ன செய்யலாம்?
(1) தன் குழந்தைகள் சண்டையிட்டுக் கொள்ளும்போது, அவர்களை நேரடியாகக் கண்டிக்கலாம். ஒரு சிறிய தண்டனை தரலாம்.
இந்த குழந்தகளிடையே உள்ள உறவு – யுனிக்ஸிலே ரிலேடட் பிராசஸ்கள் – என்பதற்கு சிறந்த உதாரணம்.
(2) அடுத்த வீட்டுக் குழந்தைகள் தவறு செய்திருந்தால், அவர்களை நேரில் கண்டிப்பதும், தண்டனை தருவதும், பெரியவர்களின் நட்பை பாதிக்கும். அவர்களை சரி செய்ய யுக்தி வேறுதான். அவர்களின் பெற்றோரை அணுகி, அவர்களின் குழந்தைகளை கண்டித்து வைக்குமாறு கேட்டுக்கொள்ளலாம். (இந்தக் குழந்தைகளுக்கும் ராமசாமிசார் குழந்தைகளுக்கும் உள்ள உறவை – அன்-ரிலேடட் என்று நாம் ஒப்புக்கொள்வோம்.
(3) பாக்கிஸ்தான் அதிகாரியின் குழந்தைகளை நான் நேரடியக தண்டித்துவிட்டால், இந்தியா-பாக்கிஸ்தான் இடையே போர் அபாயம் உண்டு. (இந்தக் குழந்தைகளை – டிஸ்ட்றிபியூடட் பிராசஸ்களாக நினைத்துப் பார்க்கலாம்).
ஒரே கம்ப்யூட்டரில் ஓடாத (பரந்து விரிந்த உலகின் ஒரு எதோ ஒரு இடத்தில் கம்ப்யூட்டரில் உள்ள ஒரு பிராசஸும், (இண்டென்னெட் வழியாக) சொந்தமாகின்றன்.
யுனிக்ஸ் கம்ப்யூட்டருக்குள்ளே ஓடும் பிராசஸ்கள் எல்லாமே ரிலேடட் அல்லது அன்ரிலேடட் என்ற முறையில் ஒன்றுக்கொன்று சொந்தங்களே.. உறவு முறையில் உள்ள வேறுபாடு – செயல் முறைகளில் மாற்றம் அவசியப்படுகிறது.
ஆனால் இவைகளிடையே செய்திகள் சொல்ல ஒரே முறையைப் பயன்படுத்த இயலாது என்ற உண்மைய ராமசாமி சாரோட குழந்தைகள் சண்டையில் காணலாம்.
ஒவ்வொரு உறவிற்கும் ஒவ்வொரு செயல் முறை உண்டு. அது மட்டுமில்லை, ஆப்ரேடிங் சிஸ்டங்களில் பிராசஸ்களிடையே செய்திகளையும் பைல்களையும் கொண்டு செல்ல பலவித ஏற்பாடுகள் உள்ளன. பிராசஸ்களை மூன்று விதமாகப் பிரிக்கலாம். இவை;
- ரிலேடட் பிராசஸ்கள்; 2. அன்ரிலேடட் பிராசஸ்கள், 3.டிஸ்ட்ரிபுட்டட் பிராசஸ்கள் ஒவ்வொரு பிரிவிற்கும் தனித்தனி வசதிகள் உண்டு.
முதல் பிரிவிற்கான கருவி இரண்டாவது மற்றும் மூன்றாவதற்கும்¢ பயந்தராது. அதே போல இரண்டாவதற்கான கருவி மூன்றாவதற்குப் பயன் தராது.
மாறாக; மூன்றாவது பிரிவிற்கான ஐ-பி-சி கருவி முதல் இரண்டிற்கும். இரண்டாவது பிரிவிற்கான ஐ-பி-சி கருவி முதல் பிரிவிற்கும் பயன் தரும்.
1. ரிலேடட் பிராசஸ்கள் (Related processes¢):
யுனிக்ஸ் ஓடும் கம்ப்யூட்டரில், ஒரு பெரிய பிராசஸை வேகமாக ஓட்ட பேரலல் பிராசஸிங் என்னும் ஒரு வித்தியாசமான பயன்பாட்டைப் பார்த்தோம்.
அந்த ஏற்பாட்டின்படி, ஒரு பெரிய பிராசஸ், பேரண்ட் (Parent Process) மற்றும் சைல்ட் பிரராசஸ் (Child PRocess¢) என்று இரண்டு அல்லது அதற்கும் அதிகமாகப் பிரித்து ஓட்டப்படுகிறது.. இங்கே, பேரண்ட்-சைல்ட் பிராசஸ்கள் இடையே செய்திகள்
.செல்லவேண்டும். ஆனால் ஒரு சிக்கல். பேரண்ட் உயிர் பெற்று இயங்கும்போது சைல்டும், அதே சைல்டு ஓடும்போது அதன்
பேரண்ட் உயிரற்று, மெமொரியில் கிடப்பதும் இயற்கையே. இதை “கல்லைக் கண்டால் நாயைக் காணோம், நாயைக் கண்டால் கல்லைக் காணோம்” என்னும் ஒரு நிலமை.
பிராசஸ்களின் இடையே செய்திப் பரிமாற்றம் நிகழ வேண்டும் ஆனால், இயலாது. எனவே இந்த நிலமையை மாற்ற ஒரு சிறப்பான ஏற்பாடு தேவை.. இந்த சிறப்பான ஏற்பாடு இண்டெர் பிராசஸ் கம்யூனிகேஷன் என்று அழைக்கப்படுகிறது?
இந்த பிராசஸ்கள் இடையே பெற்றோர்-குழந்தைகள் உறவு இருப்பதால், இவற்றை ரிலேடட் பிராசஸ் என்கின்றோம்..
ஐ-பி-சி கருவி: பைப்ஸ் (Pipes). இது ஒரு, ஒருவழிப்பாதை..
ஒரே சமையத்தில் இரண்டு பைப்களை உருவாக்கி, அதை இருவழிப் பாதையாக உருவாக்கலாம்
முதன் முதலில், பெரிகலியில் உருவாக்கிய யுனிக்ஸிலே .பைப்ஸ் மட்டுமே இருந்தது என்றும், மற்றவை எல்லாம், பிற்காலத்த்தில் உருவானவை என்று படித்திருக்கிறோம்.
இந்த கருவி, ரிலேடட் பிராசஸ்களிடையே, (பைல்களை) டேட்டா அனுப்ப பயன் தரும். பேரண்ட்-சைல்டு பிராசஸ்களுக்கு ஒரு பாதையாக அமையும். இதை உருவாக்கியவுடன், இதன் பயன்பாடு ஒரு பைலில் எழுதுவது போல எளிதானது. வேறு இரண்டுவகைத் தேவைகளுக்கும் பயன் தராது.
.2. அன்ரிலேடட் பிராசஸ்கள் (Un-related Processes)
இரு பயனாளிகளின் பிராசஸ்களும் (ஒன்றுக்கொன்று) சொந்தமில்லாத (Unrelated) அன்-ரிலேடட் பிராசஸ்கள் என்று அறியப்படும்.
அதே போல ஒரே பயனாளிகளின் இரு பிராசஸ்களும் அன்ரிலேடட் தான்.
கல்லு-நாய் பிரச்சனை இங்கேயும் உண்டு.-. இந்த சொந்தமில்லா பிராசஸ்களுக்குள் நடந்தேரவேண்டிய பரிமாற்றம், நிகழ ஒரு சில ஏற்பாடுகள் உண்டு. அதைப் பிறகு காண்போம்.
ஐ-பி-சி கருவிகள்;
Message Queues : FIFO, Shared Memory. முன்பே விளக்கியது போல இவற்றின் பயன் ரிலேடட் மற்றும் அன்ரிலேடட் பிராசஸ் இரண்டிற்கும் பயன்படும்.
- டிஸ்ட்ரிபூடட் பிராசஸ். (Distributed Process)
நம்ம ஊருலே ஒரு பழ்மொழி சொல்லுவாங்க. தென்னை மரத்திலே தேள் கொட்டினா பனை மரத்துலே நெறி கட்டிக்கும் (வலிக்கும் என்று நினைத்துக் கொள்ளுங்கள்)
இந்த ஐடியாவை முன் வைத்து, இன்று இண்டர்னெட் வேலை செய்யுது.
ஒரு கம்ப்யூட்டரிலே ஓடும் பிராசஸிலுருந்து செய்திகள், வேறு ஏதோ ஒரு நாட்டில் உள்ள ஒரு கம்ப்யூட்டரில் ஓடடும் பிராசஸுக்கு செய்தியை அனுப்புவது சாத்தியம் ஆகிரது.
ஐ-பி-சி கருவிகள்; (1) சாக்கெட் ;
சாக்கெட் என்னும் ஒரு ஐ-பி-சி, மூன்று வகை பிராசஸ்களுக்கும் (ரிலேடட், அன்ரிலேடட் மற்றும் டிஸ்ட்றிபூடட் பிராசஸ்களிடையே செய்தி (டேட்டா) பரிமாற்றங்களுக்கு பயனாகிறது).
சிஸ்டம் கால்
(System calls)
சிஸ்டம்கால் என்னும் ஒரு யுனிக்ஸ் ஏற்பாட்டின் சாயல்களை, வாழ்க்கையின். பல நிகழ்வுகளின் காணலாம்.
(1) புரோக்கர்; ஒரு அரசு அலுவலகத்தின் சுற்றுப்புரத்தில் சுற்றித்திருந்து மக்களுக்கும்- அரசு அலுவலர்களுக்கும் ஒரு பாலமாக, லஞ்சம் கைமாற ஒரு வசதியாக வழிவகுக்கும் புரோக்கர்களுக்கு ஒப்பிடலாம். அலுவலர், அதிகாரி என்று என்று யாரையும் பார்க்காமலேயே சில காந்தி படங்கள் கை மாறியவுடன் காரியம் முடிந்துவிடும்.
- ஓரு ஓட்டலில் சர்வர் சமையல் அறைக்கும் பயனாளிகளை இணைக்கும் ஒரு கருவியாக செயல்படுவதின் சாயல் சிஸ்டம் கால்களில் காணலாம்.
இப்படிப்பட்ட ஒரு ஏற்பாடு யுனிக்ஸில் ஏன் தேவைப்படுகிறது என்று பார்க்கலாம்.
மென் பொருளாலான இந்தக் கருவிகளும் அதன் பயன் படுத்தும் விதமும் சிஸ்டம் சாப்ட்வேர் இஞ்சினியர் அறிந்திருப்பது அவசியம்.
சிஸ்டம் கால்கள் உருவானதின் காரணம் என்ன?
பிராசஸர் உள்ளிட்ட கம்ப்யூட்டரின் மின்கருவிகள் எல்லாமே எல்லா பயனாளிகளுக்கும் பொதுவானது. இதில் எந்தவித சந்தேகமும் இல்லை. எனவே அவற்றை எல்லாப் பயனாளிகளும் பயன்படுத்தலாம்.
பொதுவான கருவிகள் என்பதை கெர்னலுக்குச் சொந்தம். என்றும் குறிப்பிடுவார்கள்:. இப்பொழுது எழும்ம் சிக்கல்களை ஆராயலாம்.
- எல்லா பயனாளிகளின் பிராசஸ்களுக்கும் பொதுவான (கெர்னலுக்குச் சொந்தமான) இந்தக் கருவிகளிலிருந்து செய்திகளைப் பெறவோ, அவற்றுக்கு அனுப்பவோ பல பிராசஸ்களுக்கும் இடைவிடாது, தேவைகள் எழும்.,
- சி.பி.யு வின் செயல்பாடு, அதனுடன் இணைத்துள்ள மின்- இயந்திரங்களும் (ஹார்ட் டிஸ்க், சி.டி ரோம், பிரிண்டர் போன்ற எல்லாவற்றையும் விட) அதிவேகமானவை.
ஆனால் எல்லா மின் இயந்திரங்களும் குறைந்த வேகமுள்ளவை. இந்த வேறுபாடு, அதனால் நிகழும் ஒரு சிக்கலையும் சமாளிக்க வேணும்.
ஒவ்வொரு சுற்றிலும் ஒவ்வொரு பிராசஸுக்கும் கிடைக்கும் அந்தக் குறைன்த நேரத்தில் எந்த ஒரு (டிஸ்க், சி.டி டிரைவ் போன்ற கருவிகளிருன்து ஒரு பைலை முழுவதாகப் பெறவோ, பிரிண்டர்போன்ற கருவிக்கு அனுப்பி முடிவதோ சாத்தியம் இல்லை.
ஒரு கருவியை ஒரு பிரசஸ் தன் தேவைக்காக தொடர்பு கொள்கிறது. அதே சமயம், அந்தப் பிராசஸின் தேவை (சேவை) பூர்த்தியாகும்
முன்னால் வேறு பல பிராசஸ்கள் அதன்தன் தேவைக்காக , அதே கருவியுடன் தொடர்பு கொள்ளலாம். இதனால் உண்டாக்கும் குழப்பம் மனகண்ணினால் கண்டு உணர முடியும்.
மேலே குறிப்பிட்ட காரணங்களுக்காக,. பயனாளிகளின் பிராசஸ்கள், நேரடியாகவோ, தன்னிச்சையாக மின் கருவிகளின் சேவையைப் பெறமுடியாதவாறு வடிவமைக்கப்பட்டுள்ளது..
ஒரு ஓட்டலில் சர்வர்கள் என்று சிலர் ஏன் நியமிக்கப்பட்டிருக்கிறார்கள்?
அங்கே பல பயனாளிகள் சமயல் அறைக்குள் நுழைந்து அங்குள்ள சில சமையல்காரர்களுடன் தங்கள் தேவைகளை விளக்குன் போது என்ன நிகழும்? பிராசஸ்கள், சிஸ்டம் கால் மூலமாக, கெர்னலின் பாதுகாப்பில், குழப்பங்கள் நிகழ்வதைத் தவிர்த்து மின் கருவிளிலிருந்து செய்திகளை (பைல்களை அனுப்புவதும் பெறுவதுமாக செயல்படுகின்றன.
அது போல ஒரு அரசு அலுவலகத்தைப் பார்வையிட்டால், முதலில், வரவேற்பு என்று ஒரு அமைப்பு இருக்கும். அதை நாம் முதலில் வேண்டும். அலுவலர்களைச் சந்திக்க .ஒரு நேரம் உண்டு. அதைப் பின்பற்றி, வரவேற்பு அலுவலர் நாம் தொடர்பு கொள்ள விரும்பும் நபரைத் தொடர்பு கொண்டு, அவர் குறிப்பிட்ட நபரைக் காண இயலுமா என்று கேட்டு பிறகு தேவைகளை அறிந்து பின் தொடர்பு கொள்ள சம்மதிப்பார். பிறகு ஒரு தனி அறையில் சந்திப்பு நிகழும். வேலையும் நடந்தேரலாம்.
சிஸ்டம் கால் என்ற ஏற்பாடு இல்லை என்றால், என்னவாகும்? அரசு அதிகாரிகளும் அலுவலர்களும் நல்லவர்கள் லஞ்சம் கேட்கமாட்டார்கள். புரோக்கர்கள் ரகசியமாக லஞ்சம் பெற பயன் படுத்தப்படுவதில்லை என்றே வைத்துக் கொள்வோம்.
பொதுமக்கள் பலர், ஒரே நேரத்தில், தங்கள் தேவையை முன்னிட்டு ஒரு அரசு அலுவலரைப் படை எடுக்கும் போது எந்த ஒருவருடைய வேலையும் ஒழுங்காக நிகழாது இல்லையா?
ஒருவர் காகிதங்களை மற்றவர் கொண்டு செல்வதும். நிகழ வாய்ப்புண்டு. கூச்சல், குழப்பம் மாத்திரமே எஞ்சும், இல்லையா?
இதே போல வாழ்கையில் சூழ்னிலைகளில், சேவை நிருவனங்களின் நிகழ்வுகளில், சிஸ்டம் கால்களின் சாயல்களைக் காணலாம்.
இதை சிஸ்டம் புரோகிராமர்கள் பயன்படுத்தும் விதம் இங்கே விளக்கப்படவில்லை.
சிக்னல்ஸ்
(Signals)
இதன் பயன்பாட்டை ‘Useful to signal asynchronous events to one or more processes” என்¢று சொல்லலாம்.
- ஒரு பயனாளியின் பிராசஸ் மெமொரியில் இல்லாத (ஆனல் வர்சுவல் மெமொரி என்று அறியப்பட்ட) ஒரு இடத்தை அடைய முயற்சி செய்யும்போது அதற்கான ஒரு சிக்னல் உருவாகிறது.
- கெர்னல் வெவ்வேறு சூழ்னிலைகளில் எழுப்ப உதவியாக சில சிக்ன்ல்கள் முன்கூட்டியே வடிவமைக்கப்பட்டு தயார் நிலையில் உள்ளன. அவற்றின் பட்டியல் கீழே தரப்பட்டுள்ளது.
- கெர்னல் மட்டுமல்லாது, சரியான அங்கீகாரம் அளிக்கப்பட்டால் சிக்னல்களை உருவாக்கலாம்.
சிகனல்கள் எதற்காக?
நம் வாழ்விலும் நாம் அமைக்கும் இயந்திரங்களிலும் அதிக அளவில் சிக்னலின் பயன்பாடு உள்ளது.
- சிகனல்கள் தவறுகள் நிகழ்வதை தடுக்க பயன்படும். (சாலைகளில் டிராபிக் சிக்னல் ஒரு உதாரணம்)
- தவறுகள் நிகழப்போவதை எச்சரிக்க பயன்படும். ஒரு பயனாளியின் புரோகிராம் கெர்னலுக்கு என்ற மெமொரியின் பாகத்தில் நு¢ழையும்போது கெர்னல் எச்சரிக்க பயனானாகிறது.
சிகன்ல் வரும்போது பிராசஸ்கள் என்ன செய்யும்?
யுனிக்ஸில் சிகனல்களின் பயன்பாடும், செயல் முறைகளும் நமது தினசரி வாழ்விலிருந்து, முக்கியமாக நம் நாட்டிலிருந்து, பெறப்பட்ட ஒரு யுக்தி என்று நினைக்க பல காரணங்கள் உண்டு.
வளர்ந்த நாடுகளில், ஒரு டிராபிக் போலீஸ்காரர் ஒருவர் கார், (ஸ்கூட்டர்) ஓட்டியை ஒருவரை வண்டியை நிறுத்தச் சொல்லி சைகை செய்தால், உடனே நிறுத்தி விடுவார். நம்ம ஊரில் என்ன நடக்கும்? மூன்றில் ஒன்று. (1) ஒரு சிலர் வண்டியை நிறுத்துவோம்.(2) முடியுமானால், (நிறுத்துவது போல பாவலா செய்து), பின் வேகமாக நிறுத்தாமல் வண்டியை ஓட்டிவிடுவோம். (3) ஒரு யூ-டர்ன் அடித்து வேறு வழியாக மறைந்துவிடுவோம்.
யுனிக்ஸ் தயாரிப்பில் இந்தியர் பங்குபெற்றிருப்பார்கள் என்பது சிக்னலின் பயன்பாடு உறுதி செய்கிறது. மேலே குறிப்பிட்ட மூன்று செயல்பாடும் யுனிக்ஸில் பிரதிபலிக்கும்.
- ஒவ்வொரு சிக்னலுக்கும் (பிராசஸ்) என்ன செய்ய வேண்டும் என்று தீர்மானிக்கப்பட்டுள்ளது. பிராசஸ், அதை நிரைவேற்றலாம்.
- சிக்னலை முற்றிலும் அலட்சியம் செய்து, தான் செய்து கொண்டிருக்கும் வேலையைத் தொடரலாம்.
- புரோகிராராமர், ஒரு சிகனலுக்கு முன்னே நிச்சயித்த செயலை ஒதுக்கி, புதிய ஒரு செயல்பாட்டை உருவாக்கலாம்.
சிக்னல் என்னும் கருவி இரு வகைப்படும். முதலாவது ஒரு மின் வகை ( Hardware ), மற்றது மென் வகை (Software).
இவை தவறு நிகழாமல் இருக்க எச்சரிக்கை செய்யவும், புரோகிராமர்களுக்கு ஒரு பயனுள்ள உபரிக் கருவியாகவும் பயனாகும். அதிகப் பயன்பாடுள்ள 30 சிகனல்களை ஒரு பட்டியலாகக் காண்போம்.
இந்த சிகனல்கள் எவ்விதமாக பயன்படுத்தலாம் என்பதை, வாசகர்கள் இண்டெர்னெட்டின் உதவியுடன் தெரிந்து கொள்ளவேண்டும்.
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGIOT 7) SIGBUS 8) SIGFPE
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD
18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN
22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH
29) SIGIO 30) SIGPWR