ത്രെഡ്ഡിങ്
From Wikipedia, the free encyclopedia
കംപ്യൂട്ടറിൽ പ്രാവർത്തികമാക്കപ്പെടുന്ന 'പ്രോസസ്സി'നെ ഒന്നിലേറെ പ്രക്രിയകളാക്കി വേർതിരിച്ച് അവയെ ഒരേ സമയത്തുതന്നെ നടപ്പിൽ വരുത്തുവാനുള്ള മൾട്ടിടാസ്കിങ് സംവിധാനമാണ് ത്രെഡ്ഡിങ്.[1] കെർണൽ ഷെഡ്യൂളിങ്ങിൽ ഏറ്റവും 'ഭാരം കുറഞ്ഞ' ഘടകമാണ് ത്രെഡ്. ഓരോ പ്രോസസ്സിലും കുറഞ്ഞത് ഒരു ത്രെഡ് എങ്കിലും പ്രവർത്തിക്കുന്നുണ്ടാകും. പ്രോസസ്സിന്റെ അവസ്ഥാവിവരങ്ങൾ പൂർണമായും അതിന്റെ എല്ലാ ത്രെഡ്ഡുകളിലും ലഭ്യമായിരിക്കും. കൂടാതെ കംപ്യൂട്ടറിന്റെ മെമ്മറി, അഡ്രസ് സ്പേസ്, ഇതര വിഭവ ശേഷി മുതലായവയെ പങ്കുവച്ച് ഉപയോഗപ്പെടുത്താൻ ത്രെഡ്ഡുകൾ സൗകര്യമേകുന്നു. വ്യത്യസ്ത പ്രോസസ്സുകളെ തമ്മിൽ കോൺടെക്സ്റ്റ് സ്വിച്ചിങ് നടത്തുന്നതിനെക്കാൾ വേഗതയിൽ ഒരേ പ്രോസസ്സിന്റെ വിവിധ ത്രെഡ്ഡുകൾ തമ്മിൽ കോൺടെക്സ്റ്റ് സ്വിച്ചിങ് നടത്തുവാൻ കഴിയുന്നു എന്നത് ത്രെഡ്ഡുകളുടെ മറ്റൊരു സവിശേഷതയാണ്.
ഏക പ്രോസസ്സർ കംപ്യൂട്ടറിൽ ഒരു സമയത്ത് ഒരു ത്രെഡ് മാത്രമേ പ്രാവർത്തികമാക്കാൻ കഴിയൂ. ത്രെഡ്ഡുകൾ തമ്മിലുള്ള കോൺടെക്സ്റ്റ് സ്വിച്ചിങ് വേഗത്തിലായതിനാൽ ത്രെഡ്ഡുകളെല്ലാം ഒരേ സമയത്തുതന്നെ നടപ്പിലാകുന്നു എന്ന തോന്നൽ ഉപയോക്താവിന് ഉണ്ടാകുന്നു. എന്നാൽ, ഒന്നിലേറെ പ്രോസസ്സർ ഉള്ള മൾട്ടിപ്രോസസ്സർ ക്രമീകരണം, ക്ളസ്റ്റർ സംവിധാനം മുതലായവയിൽ വിവിധ പ്രോസസ്സറുകളിലായി വ്യത്യസ്ത ത്രെഡ്ഡുകൾ ഒരേ സമയത്തുതന്നെ പ്രാവർത്തികമാക്കപ്പെടും.
ഇന്ന് വിപണിയിൽ ലഭ്യമാകുന്ന മിക്ക ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങളും ത്രെഡ്ഡിങ് അനുവദിക്കുന്നവയാണ്. ഇവയുടെ സിസ്റ്റം കെർണലിലൂടെ സിസ്റ്റം കോൾ ഇന്റർഫേസ് ഉപയോഗപ്പെടുത്തി പ്രോഗാമർക്ക് ത്രെഡ്ഡുകൾ ചിട്ടപ്പെടുത്താം. ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിൽ ത്രെഡ്ഡുകൾ പൊതുവേ രണ്ട് രീതിയിലാണ് നടപ്പിലാക്കപ്പെടുന്നത്. പ്രിയെംറ്റീവ് മൾട്ടിത്രെഡ്ഡിങ്, കോ-ഓപ്പറേറ്റീവ് മൾട്ടിത്രെഡ്ഡിങ് എന്നിവയാണ് ഇവ. ത്രെഡ്ഡുകൾ തമ്മിലുള്ള കോൺടെക്സ്റ്റ് സ്വിച്ചിങ് എപ്പോൾ വേണമെന്ന് നിശ്ചയിക്കുന്നതിനുള്ള ചുമതല ആർക്കായിരിക്കും എന്നതനുസരിച്ചാണ് ഇവിടത്തെ വർഗീകരണം. ആദ്യത്തെ രീതിയിലാണ് ക്രമീകരണമെങ്കിൽ അതിനുള്ള ചുമതല ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിനാണ്; രണ്ടാമത്തേതിൽ അത് ത്രെഡ്ഡു തന്നെ നിർവഹിക്കുന്നു.