தமிழ்

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

ஆப்பரேட்டிங் சிஸ்டம்ஸ்: செயல்முறை மேலாண்மைக்கான ஒரு விரிவான வழிகாட்டி

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

ஒரு செயல்முறை (Process) என்றால் என்ன?

அதன் மையத்தில், ஒரு செயல்முறை என்பது செயல்பாட்டில் உள்ள ஒரு நிரலின் ஒரு நிகழ்வு ஆகும். இது நிரலின் குறியீட்டை விட அதிகம்; இது புரோகிராம் கவுண்டர், ரெஜிஸ்டர்கள் மற்றும் மாறிகளின் தற்போதைய மதிப்புகளை உள்ளடக்கியது. ஒவ்வொரு செயல்முறைக்கும் அதன் சொந்த நினைவக இடம் உள்ளது, இது மற்ற செயல்முறைகளுடன் நேரடியாகத் தலையிடுவதைத் தடுக்கிறது.

ஒரு நிரலை ஒரு சமையல் குறிப்பு என்றும், ஒரு செயல்முறையை உண்மையில் அந்த உணவைச் சமைக்கும் செயல் என்றும் நினைத்துப் பாருங்கள். ஒரே நிரலை ஒரே நேரத்தில் பல செயல்முறைகள் இயக்க முடியும் (உதாரணமாக, ஒரு டெக்ஸ்ட் எடிட்டரின் பல நிகழ்வுகள்), ஒவ்வொன்றும் அதன் சொந்த தரவு மற்றும் நிலையுடன் இருக்கும்.

ஒரு செயல்முறையின் முக்கிய கூறுகள்:

செயல்முறை நிலைகள்

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

இந்த நிலைகள் ஒரு செயல்முறையின் வாழ்க்கைச் சுழற்சியைக் குறிக்கின்றன, மேலும் ஆப்பரேட்டிங் சிஸ்டம் அவற்றுக்கிடையேயான மாற்றங்களை நிர்வகிப்பதற்குப் பொறுப்பாகும். உதாரணமாக, ஒரு செயல்முறை ஒரு வட்டில் இருந்து தரவைப் படிக்க வேண்டியிருக்கும் போது, அது இயங்குகிறது நிலையிலிருந்து காத்திருப்பு நிலைக்கு மாறுகிறது, I/O செயல்பாடு முடியும் வரை. பின்னர், அது மீண்டும் தயார்நிலை நிலைக்குத் திரும்பி, மீண்டும் இயங்குவதற்கான தனது முறைக்காகக் காத்திருக்கிறது.

செயல்முறை கட்டுப்பாட்டுத் தொகுதி (PCB)

PCB என்பது ஒரு தரவுக் கட்டமைப்பாகும், இது ஒரு செயல்முறையை நிர்வகிக்க ஆப்பரேட்டிங் சிஸ்டத்திற்குத் தேவையான அனைத்து தகவல்களையும் கொண்டுள்ளது. இது ஒரு செயல்முறையின் ரெஸ்யூம் போன்றது, OS அதைக் கண்காணிப்பதற்குத் தேவையான அனைத்தையும் இது வைத்திருக்கிறது.

ஒரு PCB-யின் பொதுவான உள்ளடக்கங்கள்:

செயல்முறை திட்டமிடல் (Scheduling)

செயல்முறை திட்டமிடல் என்பது தயார்நிலை வரிசையில் உள்ள எந்த செயல்முறைக்கு சிபியு ஒதுக்கப்பட வேண்டும் என்பதைத் தீர்மானிக்கும் செயல்பாடு ஆகும். திட்டமிடலின் நோக்கம், சிபியு பயன்பாட்டை அதிகப்படுத்துதல், டர்ன்அரவுண்ட் நேரத்தைக் குறைத்தல் அல்லது செயல்முறைகளிடையே நேர்மையை உறுதி செய்தல் போன்ற சில அளவுகோல்களின்படி கணினி செயல்திறனை மேம்படுத்துவதாகும்.

திட்டமிடல் வரிசைகள் (Scheduling Queues)

OS செயல்முறைகளை நிர்வகிக்க வரிசைகளைப் பயன்படுத்துகிறது. பொதுவான வரிசைகள் பின்வருமாறு:

திட்டமிடுபவர்கள் (Schedulers)

திட்டமிடுபவர்கள் என்பது அடுத்த செயல்முறையை இயக்கத் தேர்ந்தெடுக்கும் கணினி மென்பொருள் தொகுதிகள் ஆகும். இரண்டு முக்கிய வகை திட்டமிடுபவர்கள் உள்ளனர்:

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

திட்டமிடல் வழிமுறைகள் (Scheduling Algorithms)

பல திட்டமிடல் வழிமுறைகள் உள்ளன, ஒவ்வொன்றும் அதன் சொந்த பலம் மற்றும் பலவீனங்களைக் கொண்டுள்ளன. வழிமுறையின் தேர்வு, கணினியின் குறிப்பிட்ட இலக்குகளைப் பொறுத்தது. இங்கே சில பொதுவான வழிமுறைகள் உள்ளன:

உதாரணம்: முறையே 24, 3, மற்றும் 3 மில்லி விநாடிகள் பர்ஸ்ட் நேரங்களைக் (செயல்படுத்தும் நேரம்) கொண்ட P1, P2 மற்றும் P3 ஆகிய மூன்று செயல்முறைகளைக் கவனியுங்கள். அவை P1, P2, P3 என்ற வரிசையில் வந்தால், FCFS திட்டமிடல் முதலில் P1 ஐ இயக்கும், பின்னர் P2, பின்னர் P3. சராசரி காத்திருப்பு நேரம் (0 + 24 + 27) / 3 = 17 மில்லி விநாடிகள் ஆக இருக்கும். இருப்பினும், நாம் SJF ஐப் பயன்படுத்தினால், செயல்முறைகள் P2, P3, P1 என்ற வரிசையில் செயல்படுத்தப்படும், மேலும் சராசரி காத்திருப்பு நேரம் (0 + 3 + 6) / 3 = 3 மில்லி விநாடிகள் ஆக இருக்கும் – இது ஒரு குறிப்பிடத்தக்க முன்னேற்றம்!

செயல்முறைகளுக்கு இடையேயான தொடர்பு (IPC)

செயல்முறைகளுக்கு இடையேயான தொடர்பு (IPC) செயல்முறைகள் ஒன்றுக்கொன்று தொடர்பு கொள்ளவும் ஒத்திசைக்கவும் அனுமதிக்கிறது. பல செயல்முறைகள் இணைந்து செயல்படும் சிக்கலான பயன்பாடுகளை உருவாக்குவதற்கு இது அவசியம்.

பொதுவான IPC வழிமுறைகள்:

உதாரணம்: ஒரு வலை சேவையகம் உள்வரும் கோரிக்கைகளை ஒரே நேரத்தில் கையாள பல செயல்முறைகளைப் பயன்படுத்தலாம். ஒவ்வொரு செயல்முறையும் ஒரு கோரிக்கையைக் கையாளலாம், மேலும் சர்வரின் நிலை குறித்த தரவைப் பகிர, செயல்முறைகள் பகிரப்பட்ட நினைவகம் அல்லது செய்தி அனுப்புதல் மூலம் தொடர்பு கொள்ளலாம்.

ஒத்திசைவு (Synchronization)

பல செயல்முறைகள் பகிரப்பட்ட வளங்களை அணுகும்போது, தரவு சிதைவு மற்றும் ரேஸ் கண்டிஷன்களைத் தடுக்க ஒத்திசைவை உறுதி செய்வது மிகவும் முக்கியம். ஒத்திசைவு வழிமுறைகள் செயல்முறைகளின் செயல்பாட்டை ஒருங்கிணைக்கவும் பகிரப்பட்ட தரவைப் பாதுகாக்கவும் வழிகளை வழங்குகின்றன.

பொதுவான ஒத்திசைவு நுட்பங்கள்:

உதாரணம்: பல செயல்முறைகளால் அதிகரிக்கப்படும் ஒரு பகிரப்பட்ட கவுண்டரைக் கவனியுங்கள். ஒத்திசைவு இல்லாமல், பல செயல்முறைகள் கவுண்டரின் மதிப்பைப் படித்து, அதை அதிகரித்து, மீண்டும் எழுதக்கூடும், இது தவறான முடிவுகளுக்கு வழிவகுக்கும். அதிகரிப்பு செயல்பாட்டைப் பாதுகாக்க ஒரு மியூடெக்ஸ் பூட்டைப் பயன்படுத்துவது, ஒரு நேரத்தில் ஒரு செயல்முறை மட்டுமே கவுண்டரை அணுக முடியும் என்பதை உறுதி செய்கிறது, இது ரேஸ் கண்டிஷன்களைத் தடுக்கிறது.

முட்டுக்கட்டை (Deadlock)

முட்டுக்கட்டை என்பது இரண்டு அல்லது அதற்கு மேற்பட்ட செயல்முறைகள் காலவரையின்றி தடுக்கப்படும்போது ஏற்படுகிறது, ஒவ்வொன்றும் மற்றொன்றால் வைக்கப்பட்டிருக்கும் ஒரு வளத்திற்காகக் காத்திருக்கிறது. இது ஒரு கணினியை முடக்கிவிடும் ஒரு கடுமையான பிரச்சனையாகும்.

முட்டுக்கட்டைக்கான நிபந்தனைகள்:

ஒரு முட்டுக்கட்டை ஏற்பட நான்கு நிபந்தனைகள் ஒரே நேரத்தில் பூர்த்தி செய்யப்பட வேண்டும் (காஃப்மேன் நிபந்தனைகள்):

முட்டுக்கட்டை கையாளும் நுட்பங்கள்:

முட்டுக்கட்டைகளைக் கையாள பல அணுகுமுறைகள் உள்ளன:

உதாரணம்: இரண்டு செயல்முறைகள், P1 மற்றும் P2, மற்றும் இரண்டு வளங்கள், R1 மற்றும் R2 ஆகியவற்றைக் கவனியுங்கள். P1 ஆனது R1 ஐ வைத்திருக்கிறது மற்றும் R2 க்காகக் காத்திருக்கிறது, அதே நேரத்தில் P2 ஆனது R2 ஐ வைத்திருக்கிறது மற்றும் R1 க்காகக் காத்திருக்கிறது. இது ஒரு வட்ட வடிவ காத்திருப்பை உருவாக்குகிறது, இது ஒரு முட்டுக்கட்டைக்கு வழிவகுக்கிறது. இந்த முட்டுக்கட்டையைத் தடுப்பதற்கான ஒரு வழி, செயல்முறைகள் செயல்பாட்டைத் தொடங்குவதற்கு முன்பு அனைத்து வளங்களையும் ஒரே நேரத்தில் கோர வேண்டும் என்பதாகும்.

நிஜ உலக உதாரணங்கள்

செயல்முறை மேலாண்மைக் கருத்துக்கள் உலகளவில் பல்வேறு ஆப்பரேட்டிங் சிஸ்டம்களில் பயன்படுத்தப்படுகின்றன:

முடிவுரை

செயல்முறை மேலாண்மை என்பது ஆப்பரேட்டிங் சிஸ்டம்களின் ஒரு முக்கியமான அம்சமாகும், இது பல்பணி, வளப் பகிர்வு மற்றும் திறமையான கணினி பயன்பாட்டை செயல்படுத்துகிறது. இந்த வழிகாட்டியில் விவாதிக்கப்பட்ட கருத்துக்களைப் புரிந்துகொள்வது ஆப்பரேட்டிங் சிஸ்டம்களுடன் பணிபுரியும், பயன்பாடுகளை உருவாக்கும் அல்லது கணினிகளை நிர்வகிக்கும் எவருக்கும் அவசியம். செயல்முறை நிலைகள், திட்டமிடல் வழிமுறைகள், செயல்முறைகளுக்கு இடையேயான தொடர்பு மற்றும் முட்டுக்கட்டை கையாளுதல் ஆகியவற்றில் தேர்ச்சி பெறுவதன் மூலம், நீங்கள் மேலும் வலுவான, திறமையான மற்றும் நம்பகமான மென்பொருள் அமைப்புகளை உருவாக்க முடியும். வெவ்வேறு அணுகுமுறைகளுக்கு இடையிலான சமரசங்களைக் கருத்தில் கொண்டு, உங்கள் குறிப்பிட்ட தேவைகளுக்கு மிகவும் பொருத்தமான நுட்பங்களைத் தேர்வுசெய்ய நினைவில் கொள்ளுங்கள்.

மேலும் அறிய

செயல்முறை மேலாண்மை பற்றிய உங்கள் புரிதலை ஆழப்படுத்த, பின்வரும் ஆதாரங்களை ஆராய்வதைக் கவனியுங்கள்: