"കെർണൽ (കമ്പ്യൂട്ടിങ്)" എന്ന താളിന്റെ പതിപ്പുകൾ തമ്മിലുള്ള വ്യത്യാസം

No edit summary
No edit summary
വരി 2:
{{ആധികാരികത}}
[[Image:Kernel Layout.svg|thumb|A kernel connects the application software to the hardware of a computer]]
ഉപയോക്താക്കൾ പ്രവർത്തിപ്പിക്കുന്ന [[ആപ്ലിക്കേഷൻ സോഫ്റ്റ്‌വെയർ|ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിന്നും]], ഡാറ്റകളെ മാറ്റങ്ങൾക്ക് വിധേയമാക്കുന്ന [[ഹാർഡ്‌വെയർ|ഹാർഡ്‌വെയർ]] തലത്തിനും ഇടയിൽ പ്രവർത്തിക്കുന്ന സോഫ്റ്റ്വെയർ[[സിസ്റ്റം സോഫ്റ്റ്‌വെയർ]] ഭാഗമാണ് ഭാഗമാണിത്'''കേണൽ'''. സിസ്റ്റത്തിലെ വിഭവങ്ങളെ നിയന്ത്രിക്കുക എന്നതാണ്‌ ഇതിന്റെ ഏറ്റവും പ്രധാനപ്പെട്ട ധർമ്മം. [[ഓപ്പറേറ്റിങ്ങ്‌ സിസ്റ്റം|ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിന്റെ]] അടിസ്ഥാനപരമായ ഭാഗം ആയതുകൊണ്ടുതന്നെ താഴെക്കിടയിലുള്ള [[മൈക്രോപ്രൊസസ്സർ|പ്രൊസസ്സർ]], ഇൻപുട്ട്/ഔട്ട്പുട്ട് ഘടകങ്ങൾ പോലെയുള്ള ഹാർഡ്‌വെയറുകൾക്കുവേണ്ടി ഒരു സംഗ്രഹിത പ്രത്യക്ഷതലം അവ നടപ്പിലാക്കിയിരിക്കും; [[ആപ്ലിക്കേഷൻ സോഫ്റ്റ്‌വെയർ|ആപ്ലിക്കേഷൻ സോഫ്റ്റ്വെയറുകൾസോഫ്റ്റ്‌വെയറുകൾ]] അവയുടെ ആവശ്യപൂർത്തീകരണത്തിനായി അവ ഉപയോഗപ്പെടുത്തുകയാണ്‌ ചെയ്യുക. പ്രൊസസ്സ്-ഇതര ആശയവിനിമയങ്ങൾ, സിസ്റ്റം കോളുകൾ തുടങ്ങിയവ വഴിയാണ്‌ സാധാരണ അവ നടപ്പിലാക്കുക.
ഒരു [[കമ്പ്യൂട്ടർ|കമ്പ്യൂട്ടറിലെ]] റിസോഴ്സ് കളെ നിയന്ത്രിക്കുന്നതും അത് വ്യത്യസ്ത ഉപഭോക്താക്കൾക്കും , പ്രവർത്തനങ്ങൾക്കും ലഭ്യമാക്കുന്നതും '''കേർണൽ''' ആണ്. മിക്കവാറും ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങളിലേയും മർമ്മപ്രധാനമായ ഭാഗമാണ് കേണൽ. കെർണൽ [[ഹാർഡ്‌വെയർ|ഹാർഡ് വെയറുമായി]] സംവദിക്കുന്നു ഇത് ആപ്ലിക്കേഷൻ പ്രോഗ്രാമർക്ക് [[ഹാർഡ്‌വെയർ|ഹാർഡ് വെയർ]] പരിജ്ഞാനം ഇല്ലാതെ തന്നെ പ്രോഗ്രാമുകൾ എഴുതുവാൻ സഹായിക്കുന്നു<ref name="PLA"> Title:Professional Linux Kernel Architecture,Author:Wolfgang Mauerer,Publisher:Wiley-India, 2008,ISBN:8126519290, 9788126519293</ref> .ഇവയെല്ലാം ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ ജോലി ആണു എന്നിരുന്നാലും silberschatz ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തെ ഇങ്ങനെ നിർവചിച്ചിരിക്കുന്നു ''മുഴുവൻ സമയവും മറ്റെല്ലാ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമുകൾക്കൊപ്പവും സിസ്റ്റം പ്രോഗ്രാമുകൾക്കൊപ്പവും പ്രവർത്തിക്കുന്ന പ്രോഗ്രാം , സാധാരണയായി കേർണൽ എന്നു വിളിക്കുന്നു'' <ref name="OSC6E">Title: OPERATING SYSTEM CONCEPTS, 6ED, WINDOWS XP UPDATE ,Authors:Galvin, Silberschatz, Gagne, Publisher:Wiley-India, 2006,ISBN:812650885X, 9788126508853</ref>.എന്നാൽ ഒരു ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം പൂർണമാകുന്നത് മറ്റു ചില ഘടകങ്ങൾ ഉദ്ദാഹരണമായി സെർവ്വറുകൾ,യൂസർ-ലെവൽ ലൈബ്രറികൾ തുടങ്ങിയവ കൂടിച്ചേരുമ്പോൾ ആണു<ref>http://www.cs.unc.edu/~dewan/242/s06/notes/intro/node14.html</ref>.ലിനക്സ് ഇത്തരത്തിൽ തെറ്റിധരിക്കപ്പെട്ട ഒന്നാണു , ലിനക്സ് ഒരു കേർണൽ മാത്രമാണു സാധാരണയായി ലിനക്സ് എന്നറിയപ്പെടുന്ന ഈ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ ശരിയായ നാമം ഗ്നു/ലിനക്സ് എന്നാണു<ref>http://www.gnu.org/gnu/linux-and-gnu.html</ref>.ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ സേവനങ്ങൾ കേർണലിന്റെ സഹായത്തോടെ ലഭിക്കുന്നതിനായി പ്രോഗ്രാമുകൾ സിസ്റ്റം കോൾസ് ഉപയോഗിക്കുന്നു<ref name="PLA"/> സിസ്റ്റം കോൾസ് സി പ്രോഗ്രാമ്മിങ്ങ് ഭാഷയിലെ പ്രൊസീജറുകൾക്ക് സമാനമാണു എന്നാൽ സി പ്രൊസീജറുകൾക്ക് കെർണൽസ്പേസിൽ കടക്കുവാൻ അനുവാദമില്ല <ref name="OSDI">TITLE : Operating Systems Design and Implementation (3rd Edition) (Prentice Hall Software Series),AUTHOR : Andrew S Tanenbaum, Albert S Woodhull,PUBLISHER : Prentice Hall,ISBN : 0131429388</ref>.ഒന്നിലധികം പ്രോഗ്രാമുകൾ സമാന്തരമായി പ്രവർത്തിക്കുന്ന സമയത്ത് കേർണൽ റിസോഴ്സ് മാനേജർ അയി പ്രവർത്തിക്കുന്നു<ref name="PLA"/>.
 
== പ്രവർത്തനം ==
ഉപയോക്താക്കൾ പ്രവർത്തിപ്പിക്കുന്ന ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിന്നും ഡാറ്റകളെ മാറ്റങ്ങൾക്ക് വിധേയമാക്കുന്ന ഹാർഡ്‌വെയർ തലത്തിനും ഇടയിൽ പ്രവർത്തിക്കുന്ന സോഫ്റ്റ്വെയർ ഭാഗമാണിത്. സിസ്റ്റത്തിലെ വിഭവങ്ങളെ നിയന്ത്രിക്കുക എന്നതാണ്‌ ഇതിന്റെ ഏറ്റവും പ്രധാനപ്പെട്ട ധർമ്മം. ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിന്റെ അടിസ്ഥാനപരമായ ഭാഗം ആയതുകൊണ്ടുതന്നെ താഴെക്കിടയിലുള്ള പ്രൊസസ്സർ, ഇൻപുട്ട്/ഔട്ട്പുട്ട് ഘടകങ്ങൾ പോലെയുള്ള ഹാർഡ്‌വെയറുകൾക്കുവേണ്ടി ഒരു സംഗ്രഹിത പ്രത്യക്ഷതലം അവ നടപ്പിലാക്കിയിരിക്കും; ആപ്ലിക്കേഷൻ സോഫ്റ്റ്വെയറുകൾ അവയുടെ ആവശ്യപൂർത്തീകരണത്തിനായി അവ ഉപയോഗപ്പെടുത്തുകയാണ്‌ ചെയ്യുക. പ്രൊസസ്സ്-ഇതര ആശയവിനിമയങ്ങൾ, സിസ്റ്റം കോളുകൾ തുടങ്ങിയവ വഴിയാണ്‌ സാധാരണ അവ നടപ്പിലാക്കുക.
ഒരു [[കമ്പ്യൂട്ടർ|കമ്പ്യൂട്ടറിലെ]] റിസോഴ്സ് കളെ നിയന്ത്രിക്കുന്നതും അത് വ്യത്യസ്ത ഉപഭോക്താക്കൾക്കും , പ്രവർത്തനങ്ങൾക്കും ലഭ്യമാക്കുന്നതും '''കേർണൽ''' ആണ്. മിക്കവാറും [[ഓപ്പറേറ്റിങ്ങ്‌ സിസ്റ്റം|ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങളിലേയും]] മർമ്മപ്രധാനമായ ഭാഗമാണ് കേണൽ. കെർണൽ [[ഹാർഡ്‌വെയർ|ഹാർഡ് വെയറുമായി]] സംവദിക്കുന്നു ഇത് ആപ്ലിക്കേഷൻ പ്രോഗ്രാമർക്ക് [[ഹാർഡ്‌വെയർ|ഹാർഡ് വെയർ]] പരിജ്ഞാനം ഇല്ലാതെ തന്നെ പ്രോഗ്രാമുകൾ എഴുതുവാൻ സഹായിക്കുന്നു<ref name="PLA"> Title:Professional Linux Kernel Architecture,Author:Wolfgang Mauerer,Publisher:Wiley-India, 2008,ISBN:8126519290, 9788126519293</ref> . ഇവയെല്ലാം [[ഓപ്പറേറ്റിങ്ങ്‌ സിസ്റ്റം|ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ]] ജോലി ആണു എന്നിരുന്നാലും silberschatz ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തെ ഇങ്ങനെ നിർവചിച്ചിരിക്കുന്നു ''മുഴുവൻ സമയവും മറ്റെല്ലാ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമുകൾക്കൊപ്പവും സിസ്റ്റം പ്രോഗ്രാമുകൾക്കൊപ്പവും പ്രവർത്തിക്കുന്ന പ്രോഗ്രാം , സാധാരണയായി കേർണൽ എന്നു വിളിക്കുന്നു'' <ref name="OSC6E">Title: OPERATING SYSTEM CONCEPTS, 6ED, WINDOWS XP UPDATE ,Authors:Galvin, Silberschatz, Gagne, Publisher:Wiley-India, 2006,ISBN:812650885X, 9788126508853</ref>. എന്നാൽ ഒരു [[ഓപ്പറേറ്റിങ്ങ്‌ സിസ്റ്റം|ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം]] പൂർണമാകുന്നത് മറ്റു ചില ഘടകങ്ങൾ ഉദ്ദാഹരണമായി സെർവ്വറുകൾ, യൂസർ-ലെവൽ ലൈബ്രറികൾ തുടങ്ങിയവ കൂടിച്ചേരുമ്പോൾ ആണു<ref>http://www.cs.unc.edu/~dewan/242/s06/notes/intro/node14.html</ref>. [[ലിനക്സ് കെർണൽ|ലിനക്സ്]] ഇത്തരത്തിൽ തെറ്റിധരിക്കപ്പെട്ട ഒന്നാണു , ലിനക്സ് ഒരു കേർണൽ മാത്രമാണു സാധാരണയായി ലിനക്സ് എന്നറിയപ്പെടുന്ന ഈ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ ശരിയായ നാമം [[ഗ്നു/ലിനക്സ്]] എന്നാണു<ref>http://www.gnu.org/gnu/linux-and-gnu.html</ref>. ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ സേവനങ്ങൾ കേർണലിന്റെ സഹായത്തോടെ ലഭിക്കുന്നതിനായി പ്രോഗ്രാമുകൾ സിസ്റ്റം കോൾസ് ഉപയോഗിക്കുന്നു<ref name="PLA"/> സിസ്റ്റം കോൾസ് [[സി (പ്രോഗ്രാമിങ് ഭാഷ)|സി]] പ്രോഗ്രാമ്മിങ്ങ് ഭാഷയിലെ പ്രൊസീജറുകൾക്ക് സമാനമാണു എന്നാൽ [[സി (പ്രോഗ്രാമിങ് ഭാഷ)|സി]] പ്രൊസീജറുകൾക്ക് കെർണൽസ്പേസിൽ കടക്കുവാൻ അനുവാദമില്ല <ref name="OSDI">TITLE : Operating Systems Design and Implementation (3rd Edition) (Prentice Hall Software Series),AUTHOR : Andrew S Tanenbaum, Albert S Woodhull,PUBLISHER : Prentice Hall,ISBN : 0131429388</ref>. ഒന്നിലധികം പ്രോഗ്രാമുകൾ സമാന്തരമായി പ്രവർത്തിക്കുന്ന സമയത്ത് കേർണൽ റിസോഴ്സ് മാനേജർ അയി പ്രവർത്തിക്കുന്നു<ref name="PLA"/>.
 
== തരങ്ങൾ ==
[[മൈക്രോകേർണൽ]], [[മോണോലിത്തിക്ക് കെർണൽ]], [[ഹൈബ്രിഡ് കേർണൽ]], [[എക്സോ കേർണൽ]] എന്നിങ്ങനെ വിവിധതരം കേർണലുകൾ നിലവിൽ ഉണ്ട്<ref>http://it.toolbox.com/wiki/index.php/Kinds_of_Kernels</ref>. ഓരോ [[ഓപ്പറേറ്റിങ്ങ്‌ സിസ്റ്റം|ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിലും]] രൂപകൽപ്പന, പ്രത്യക്ഷവൽക്കരണം എന്നിവയ്ക്കനുസൃതമായി അവയുടെ കർത്തവ്യം ചെയ്യുന്ന രീതിയിലും മാറ്റമുണ്ടാകും. [[മോണോലിത്തിക്ക് കെർണൽ|മോണോലിത്തിക്ക് കേർണലുകൾ]] സിസ്റ്റത്തിന്റെ പ്രകടനം മെച്ചപ്പെടുത്തുന്നതിനായി ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിലെ എല്ലാ കോഡുകളും ഒരേ അഡ്രസ്സ് സ്പേസിൽതന്നെയാണ്‌ പ്രവർത്തിപ്പിക്കുക, അതേ സമയം [[മൈക്രോകേർണൽ|മൈക്രോകേർണലുകൾ]] ഒരോ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം സേവനങ്ങളേയും യൂസർസ്പേസിൽ സെർ‌വറുകളായാണ്‌ പ്രവർത്തിപ്പിക്കുക, ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിന്റെ പരിപാലനവും ഘടകങ്ങളുടെ വ്യക്തിരിതയുമാണിതുവഴി ഉദ്ദേശിക്കുന്നത്.<ref name="mono-micro">Roch 2004</ref> രൂപകൽപ്പനയിലെ ഈ രണ്ട് ഉച്ചരീതികൾക്കുമിടയിൽ സാധ്യകളുള്ള രൂപകല്പനാ രീതികളും നിലനിൽക്കുന്നു.
 
[[മൈക്രോകേർണൽ]] ,[[ മോണോലെത്തിക് കേർണൽ]], [[ഹൈബ്രിഡ് കേർണൽ]], [[എക്സോ കേർണൽ]] എന്നിവ വിവിധതരം കേർണലുകൾ ആണു<ref>http://it.toolbox.com/wiki/index.php/Kinds_of_Kernels</ref>.
 
==അവലംബം==
"https://ml.wikipedia.org/wiki/കെർണൽ_(കമ്പ്യൂട്ടിങ്)" എന്ന താളിൽനിന്ന് ശേഖരിച്ചത്