ලිනක්ස් ක'නලය
"ලිනක්ස් කර්නලය" යනු ලිනක්ස් පවුලේ Unix-like (යුනික්ස් හා සමාන) මෙහෙයුම් පද්ධති කර්නලයකි. එසේම එය නිදහස් හා විවෘත මූලාශ්ර මෘදුකාංග සඳහා ප්රමුඛ උදාහරණයකි.
විකාශකයා | Linus Torvalds and thousands of collaborators |
---|---|
OS පවුල | Unix-like |
Initial release | 1991 |
Repository | |
ලබා ගත හැක්කේ | English |
Kernel type | Monolithic |
License | GNU General Public License version 2 (only)[1][2] plus various non-freely licensed binary blobs[3] |
Official website | www.kernel.org |
එය ජීඑන්යූ ජෙනරල් පබ්ලික් ලයිසෙන්ස්(GNU General Public License) දෙවන සංස්කරණය (සමහර ස්ථීරාංග අනුරූප(Firmware images) විවිධාකාර බලපත්ර භාවිත කරයි) යටතේ නිකුත් කර තිබෙන අතර ලොව වටා දහස් ගණනකගේ දායකත්වය ලැබ ඇත. ඒසේම ලිනක්ස් කර්නලය ලිනක්ස් කර්නල විද්යුත් තැපැල් ලැයිස්තුව(Linux kernel mailing list) හරහා එදිනෙදා සංවර්ධනයට බඳුන්වේ.
ලිනක්ස් කර්නලයෙහි නිර්මාර්තෘ පින්ලන්ත ජාතික ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) වන අතර ඒ 1991 දී ඔහුට ඇතිවූ අදහසක් අනුවය. ඔහුගේ කර්නලය සීඝ්රයෙන් අනිකුත් නිදහස් මෘදුකාංග ව්යාපෘති කේතකරුවන් සහ පරිශිලකයින් ආකර්ශනය කරගන්නා ලදි. මෙසේ ලොවපුරා දහස් ගණනකගේ දායකත්වය ලැබූ ලිනක්ස් කර්නලය පදනම් කර ගනිමින් අද වන විට බොහෝ ලිනක්ස් බෙදා හැරීම් නිකුත්වී ඇත.
ඉතිහාසය
සංස්කරණය1991 දී පින්ලන්තයේ හෙල්සින්කි සරසවියේ 21 හැවිරිදි සිසුවෙකුව සිටි ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) නව මෙහෙයුම් පද්ධතියක් නිපදවීම සඳහා කටයුතු ආරම්භ කළේ ය. ඔහු මුලින් ම තම වැඩ කටයුතු සඳහා Intel 80386 assembly language හි task switcher ක් හා terminal driver ක් භාවිත කළ අතර යූස්නෙට් (Usenet) හි comp.os.minix පුවත් කණ්ඩායමේ මෙසේ සඳහන් කලේය.
මම විනෝදයට වගේ 386(486) AT ක්ලෝන සඳහා මෙහෙයුම් පද්ධතියක් නිර්මාණය කරනවා. ඔබ මිනික්ස් (minix) හි කැමති අකමැති දේ මට පවසන්න. මොකද මගේ නිර්මාණයත් ටිකක් විතර ඒ වගේ (ප්රායෝගික හේතුන් නිසා ගොනු පද්ධතිය හා තවත් සමහර දේ).
මම දැනට bash(1.08) හා gcc(1.40) පරිවර්තනය කර අවසන්. එය වැඩ කරන බවයි පේන්නෙ. ඒ කියන්නෙ තව මාස කීපයකින් මට ප්රයෝගික යමක් කරන්න පුලුවන් වෙයි [...] ඔව් - එය මිනික්ස් (minix) කේත වලින් තොරයි. එය පරිවර්තනය කල නොහැකි අතර හුගක් වෙලාවට එය වැඩ කරන්නේ AT දෘඩ තැටි වල විතරක් වෙයි.
[...]එය බොහෝ දුරට කේත කලේ C වලින්, ඒත් හුගක් අය කියන විදිහට ඒක C නෙවේ. මොකද මම ඒකෙ මට හොයා ගන්න පුලුවන් හැම 386 ලක්ෂණයක්ම වගේ පාවිච්චි කරනව. එය මට 386 ඉගනීමට කරපු ව්යාපෘතියක්ද වෙනව. කිව්වත් වගේ එය MMU පාවිච්චි කරනව, පේජින් (paging) සඳහාත් (තවම දෘඩ තැටියට බැහැ) සෙග්මෙන්ටෂන් (segmentation) සඳහාත්. සෙග්මෙන්ටෂන් වලදි නම් එය 386 වලින් හුගක් දුරට ස්වාධීනයි. [...]මගේ සමහර C ගොනු (විෂේෂයෙන් mm.c) C වගේම ඇසෙම්බ්ලි (assembly) වලට ගොඩක් ළගයි.
මින් පසුව මෙය සඳහා බොහෝ දායකත්වයන් ලැබුණි.එසේම ආරම්භක අදහස් හා කේත බොහෝ විට මිනික්ස්(Minix) ප්රජාවෙන් විය. මෙසේ ජීඑන්යූ ව්යාපෘතියට (GNU project) මෙහෙයුම් පද්ධතියකට අවශ්ය බොහෝ අංග එකතු වුවත් එයටම ආවේනික කර්නලය වූ ජීඑන්යූ හර්ඩ්(GNU hurd) තවමත් අසම්පූර්ණවම තිබිණි. බීඑස්ඩී(BSD) මෙහෙයුම් පද්ධතිය මේ අවධිය වන විටත් නෛතික බලපැම් වලින් මිදී නොතිබිණි. මේ අතර මුල් සංස්කරණ වල අඩු ලුහුඩුකම් නොතකා ලිනක්ස් සීඝ්රයෙන් පරිශිලකයන් අතරට ඇදී ගියේය.
1991 සැප්තැම්බරයේදී ලිනක්ස් හි සංස්කරණ 0.01 නිකුත් වූ අතර එය හෙල්සින්ස්කි සරසවියේ ftp.funet.fi යන FTP සර්වරයේ තැන්පත් විණි. මෙම සංස්කරණය කේත පේලි 10,239කින් යුතු විය.
1991 දෙසැම්බරයේදී ලිනක්ස් හි සංස්කරණ 0.11 නිකුත් වූ අතර එය ප්රථම ස්වයං ධාරක (self-hosted) සංස්කරණය වූ අතර ලිනක්ස් 0.11 සහිත පරිඝනකයක් මගින් ලිනක්ස් 0.11 සම්පාදනය(compile) කල හැකි විය. 1992 පෙබරවාරියේදී ලිනක්ස් හි සංස්කරණ 0.12 නිකුත් වීමත් සමග ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) ඔහු තමා කෙටුම්පත් කල බලපත්රය වෙනුවට ජීඑන්යූ ජෙනරල් පබ්ලික් ලයිසෙන්ස්](GNU General Public License) ලබා ගත්තේය.
ඉන් පසුව ලිනක්ස් සංස්කරණ නිකුතු මෙසේය.
- 1994 මාර්තු 14 ලිනක්ස් 1.0.0 (කේත පේලි 176,250)
- 1995 මාර්තු ලිනක්ස් 1.2.0 (කේත පේලි 310,950)
- 1996 ජුනි 09 ලිනක්ස් 2.0.0
ලිනක්ස් 2.0.0 යටතේ නිකුතු
- 1999 ජනවාරි 25 ලිනක්ස් 2.2.0 (කේත පේලි 1,800,847)
- 1999 දෙසැම්බර් 18 ලිනක්ස් 2.2.13 ( IBM පරිඝනක වල භාවිත කල හැකි)
- 2001ජනවාරි 04 ලිනක්ස් 2.4.0 (කේත පේලි 3,377,902)
- 2003 දෙසැම්බර් 17 ලිනක්ස් 2.6.0 (කේත පේලි 5,929,913)
- 2010 ඔක්තෝම්බර් 20 ලිනක්ස් 2.6.36 (කේත පේලි 13,499,457)
නෛතික කරුණු
සංස්කරණයබලපත්රදායක කොන්දේසි(Legal Terms)
සංස්කරණයලිනක්ස් ආරම්භයේදී නිකුත්වූයේ වාණිජ බෙදා හැරීම වාරණය කරන ලද ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) විසින්ම කෙටුම්පත් කරන ලද බලපත්රයකිනි. එහෙත් 0.12 නිකුතුවෙන් පසුව එය ජීඑන්යූ ජෙනරල් පබ්ලික් ලයිසෙන්ස්](GNU General Public License) යටතට පත් කරන ලදි.
මෙම බලපත්රය යටතේ විකිණීම සහ බෙදා හැරීම සඳහා වෙනස් කරන ලද හෝ නොකරන ලද ලිනක්ස් සංස්කරණ කල හැකි වුවත් එම සෑම සංස්කරණයක්ම පෙර බලපත්රය යටතේම විය යුතු අතර සම්පූර්ණ ප්රභව කේතයද ඒ සමඟම බෙදා හල යුතුය. ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) මෙය විස්තර කරන්නේ ඔහු විසින් කරන ලද හොඳම කාර්යය ලෙසයි.
ප්රවේශනය කල හැකි කර්නල මොඩියුල සහ ස්ථීරාංග (Loadable kernel modules and firmware)
සංස්කරණයප්රවේශනය කල හැකි කර්නල මොඩියුල සහ ස්ථීරාංග (Loadable kernel modules and firmware), ජීඑන්යූ ජෙනරල් පබ්ලික් ලයිසෙන්ස්(GNU General Public License) යටතට වැටිය යුතු ව්යුත්පන්නයන්ද යන්න මතබේදයට තුඩු දුන් කරුණකි. ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) ගේ විශ්වාසය අනුව පොදු අනුකට්ටලයට අයත් නොවන සීමිත කොටසක් පමනක් ව්යුත්පන්නයන් නොවන කාර්යයන් ලෙස සැලකිය හැක. එහෙත් බොහෝ ලිනක්ස් දායකකරුවන් මෙම අදහසට එකඟ නොවේ.එය එසේ නොවිය හැකි යම් අවස්ථා තිබෙන බව ටොර්වල්ඩ්ස් පවා එසේ සදහන් කිරීමෙන් පෙනේ.
වෙළඳ නාමය
සංස්කරණයLinux (ලිනක්ස්) යනු ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) හට ඇමරිකා එක්සත් ජනපදයේ හා වෙනත් රටවල අයිතිව ඇති වෙළඳ නාමයකි. මෙය විලියම් ඩොල්සා ක්රොස්(William Della Croce) ජුනියර්(jr) යන ලිනක්ස් ව්යාපෘතියට අසම්බන්ධ අයකු Linux(ලිනක්ස්) යන නාමය වෙළඳ නාමයක් සඳහා ලියාපදිංචි කර කල කර්තෘභාග ඉල්ලීමක ප්රතිඵලයකි. ඔහුට විරුඬව නීතිමය පියවර ගනු ලැබූ අතර අවසානයේ ඔහු එම වෙළඳ නාමය ලිනස් ටොර්වල්ඩ්ස්(Linus Torvalds) අයිති බව පිළිගත්තේ ය.
තාක්ෂණික අංග
සංස්කරණයමුඛ්ය තාක්ෂණය(Architecture)
සංස්කරණයලිනක්ස් යනු මොනොලිතික කර්නලයකි(monolithic kernel). උපකරණ එලවනයන්(Device drivers) හා කර්නල දිගුවන් කර්නල අවකාශයේ(Kernel space) දෘඩාංග මත සම්පූර්ණ පිවිසුම ඇතිව ධාවනය වන අතර සමහර අවස්ථාවලදී පරිශීලක අවකාශය(User space) මතද ධාවනය වේ. එසේම බොහෝ පරිශීලකයන් සතු ග්රාපික පද්ධතියද (Graphic system) කර්නලය මත ධාවනය නොවන අතර මෙම ආකාරය වින්ඩෝස් මෙහෙයුම් පද්ධතියට පරස්පරය.
කර්නල භීතිය(Kernel panic)
සංස්කරණයලිනක්ස් හීදී "කර්නල භීතිය"(Kernel panic) යනු නැවත යථා තත්වයට පත් කල නොහැකි පද්ධති දෝෂයකි. මෙහි අනාවරණය පරිශීලක කේතයන්හි දෝෂ අනාවරණයට සමානය. කෙසේ වුවත් බොහෝ අවස්ථා වලදී මේ සදහා හේතු වන්නේ ප්රොසසරයේ සිදුවන වැරදි මතක ලිපිනයන්හි පිරික්සුම්ය. එසේම මෙම දෝෂ සමහර අවස්ථා වලදී දෘඩාංග දෝෂ වලදීද ඇතිවේ.
කේතන භාෂාව
සංස්කරණයලිනක්ස් බොහෝ දුරට C යොදා ගෙන ඇති අතර GCC (සම්මත C කේතන භාෂාවේ දිගුවක් ලෙස සැලකිය හැක) සහායික භාෂාවක් ලෙස භාවිත වේ. එසේම ඉලක්ක පද්ධතිය සඳහා වූ කේතන කොටස් බොහෝ විට ඇසෙම්බ්ලි(Assembly) භාවිත කරයි. එක්තරා ආකාර වලින් බොහෝ අනිකුත් භාෂාද යොදා ගෙන ඇත.මේ අතර පර්ල්(Perl),පයිතන්(Python) හා තවත් බොහෝ කේතන භාෂා වේ. බොහෝ විට බලවත් අධෛර්යට පත් කිරීම් සිදු වුවත් පොර්ට්රාන්(Fortran), C++ වැනි භාෂා වලින්ද සමහර එලවනයන් ලියවී ඇත.
(සුවහබව) පෝටබිලිටි
සංස්කරණයආරම්භක ලිනක්ස් කර්නල සුවහබව සඳහා ඉලක්ක නොකලත් දැනට භාවිතවන කර්නල අතරින් සුවහබව අතින් උපරිම ස්ථානයේ පවතින්නේ ලිනක්ස් කර්නලයයි. වසර 2009 ජුනි වනවිට ලොව පුර පවතින හොඳම සුපිරි පරිඝනක 500 අතුරින් 91% ලිනක්ස් කර්නලය මත පදනම් වී අති බව වාර්තා විය. ඒසේම ලිනක්ස් අතේ ගෙන යාහැකි උපකරණ වන ටක්ස්පෝන්(Tuxphone),ඇපල් අයිපොඩ්(Apple iPod), අයිපෝන්(iPhone), ගූගල් ඇන්ඩ්රොයිඩ්(Google Android),නොකියා මෑමො(Nokia Maemo) මෙහෙයුම් පද්ධතිය ආදී බොහෝ සුවහබව පෙනවන පරිවර්තනයන්ට බඳුන්වී ඇත.
අතාත්වික යන්ත්ර සැලසුම
සංස්කරණයමෙම තාක්ෂණය සඳහා ලිනක්ස් උපරිම සහයෝගීතාවයක් දක්වන අතර බොහෝ යන්ත්ර සඳහා ධාරක සහ ආගන්තුක මෙහෙයුම් පද්ධතියක් ලෙස ක්රියා කරයි. බොහෝ විට ඉන්ටෙල් x86(intel x86) පවුලේ ප්රොසෙසර ආදර්ශනය කිරීම කලත් ඇතැම් අවස්ථා වල පවර්පීසී(powerPC) හා ARM ආදර්ශනයන්ද දැකිය හැක.
ඇස්තමේන්තුගත නැවත නිපදවීමේ වියදම
සංස්කරණය2004 දී COCOMO මිනිස්-මාස මොඩලය යොදා කල ඇස්තමේන්තුව අනුව ලිනක්ස් සංස්කරණ 2.6.0, සාම්ප්රදායික ස්වාම්ය නැවත නිපදවීම සඳහා වියදම යූරෝ මිලියන 467කි. 2006 දී යුරෝපීය සංගමයේ මූල්ය මගින් කල සමීක්ශණයකට අනුව ලිනක්ස් 2.6.8 නැවත නිපදවීමේ වියදම යූරෝ මිලියන 882කි. ඩේවිඩ් ඒ. ගේ වීලර්ස් ක්රමය අනුව වියදම 2008 දී මනින ලදුව කර්නල 2.6.23 සඳහා ඩොලර් බිලියන 1.3ක් බව නිගමනය විය. එසේම වාර්ෂිකව අගය එකතු වීම 2005 සහ 2007 අතරතුරෙදී මිලියන 100ක් වූ අතර 2008 දී මිලියන 225ක් විය. යුරෝපීය සංගමය තුලදී මෙය යූරෝ බිලියනය ඉක්මවිය හැකි බව ඇස්තමේන්තු කර ඇත.
සංවර්ධනය
සංස්කරණයනඩත්තු කිරීම
සංස්කරණයKernel series | Current version | Maintainer | Support Model |
---|---|---|---|
2.0 | 2.0.40[4] | David Weinehall | EOL (Officially made obsolete with the kernel 2.2.0 release) |
2.2 | 2.2.26[5] | Marc-Christian Petersen (former maintainer Alan Cox) | EOL (Unofficially obsolete with the 2.2.27-rc2)[6] |
2.4 | 2.4.37.10[7] | Willy Tarreau (former maintainer Marcelo Tosatti) | Will be EOL, if no major bugs reported, by September 2011[7] |
2.6.16 | 2.6.16.62[8] | Adrian Bunk | EOL (was a long-term stable release, replaced by 2.6.27.xx) |
2.6.27 | 2.6.27.54[9] | Greg Kroah-Hartman | long-term stable release. From 9 October 2008[10] to July/September 2010[11] |
2.6.32 | 2.6.32.23[12] | Greg Kroah-Hartman[13] | long-term stable release. From 3 December 2009[14] to 2011 /2012[11] |
2.6 | 2.6.36 | Linus Torvalds | (current only) (releases every three months) |
2.6-linux-next | next-20100820 | latest development version |
මූලාශ්ර
සංස්කරණය- ^ InfoWorld. "Linux creator Torvalds still no fan of GPLv3". සම්ප්රවේශය 2008-10-11.
- ^ "Linux Kernel Copying". සම්ප්රවේශය 25 September 2013.
Also note that the only valid version of the GPL as far as the kernel is concerned is _this_ particular version of the license (ie v2, not v2.2 or v3.x or whatever), unless explicitly otherwise stated.
- ^ Stallman, Richard (2002). "Linux, GNU, and freedom". Free Software Foundation. සම්ප්රවේශය 21 February 2007.
- ^ David Weinehall (2004-02-08). "[ANNOUNCE] Linux-kernel 2.0.40 aka ``The Moss-covered Tortoise''". 2012-05-30 දින මුල් පිටපත වෙතින් සංරක්ෂණය කරන ලදී.
- ^ Marc-Christian Petersen (2004-02-25). "Linux 2.2.26".
- ^ Marc-Christian Petersen (2005-01-13). "Linux 2.2.27-rc2". 2012-05-30 දින මුල් පිටපත වෙතින් සංරක්ෂණය කරන ලදී.6
- ^ a b Willy Tarreau (2010-09-06). "Linux 2.4.37.10 + 2.4 EOL plans" (Mailing list).
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (help) - ^ Adrian Bunk (2008-10-11). "Linux 2.6.27 will be a longtime supported kernel" (Mailing list).
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (help) - ^ http://kernel.org/
- ^ http://kernelnewbies.org/Linux_2_6_27
- ^ a b http://lkml.indiana.edu/hypermail/linux/kernel/1001.2/00858.html
- ^ http://kernel.org/
- ^ Greg Kroah-Hartman (2010-01-18). "Stable kernel tree status, January 18, 2010" (Mailing list).
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (help) - ^ http://kernelnewbies.org/Linux_2_6_32
- Torvalds, Linus (2001). Just for Fun: The Story of an Accidental Revolutionary. HarperBusiness. ISBN 0-06-662072-4 (hardcover); HarperAudio ISBN 0-694-52539-1.
{{cite book}}
: Check|isbn=
value: invalid character (help); Unknown parameter|coauthors=
ignored (|author=
suggested) (help) (audio tape, abridged ed., read by David Diamond) - on the beginnings of the Linux kernel - Nikolai Bezroukov, Portraits of Open Source Pioneers. Ch 4: A benevolent dictator (Softpanorama e-book).
- "LinkSys and binary modules". LWN.net Weekly Edition. 16 October 2003.
- FreeBSD/Linux kernel source code cross-reference. Browsable Linux (and other operating system) kernel source cross-reference.
- LXR: The Linux Cross-Reference project. Browsable Linux kernel source.
- KernelHQ - a browsable kernel source tree - with all versions present, and with browsable diffs
- The LWN 2001 Linux Timeline
- Everyone's Favorite Linux Mascot
- Linux Timeline[permanent dead link]
- History of Linux
- Upgrade to 2.6 kernel සංරක්ෂණය කළ පිටපත 2008-12-26 at the Wayback Machine
- The Wonderful World of Linux 2.6 සංරක්ෂණය කළ පිටපත 2003-07-16 at the Wayback Machine; Joseph Pranevich; December 2003
- Understanding the Linux 2.6.8.1 CPU Scheduler; Josh Aas, 17 February 2005
- LinuxChanges
- Seminar Paper on Linux Kernel 2.6 සංරක්ෂණය කළ පිටපත 2007-02-02 at the Wayback Machine
- Linux Device Drivers, 3rd Edition
- Understanding the Linux Kernel, 3rd Edition (Book)
- Linux: The GPL And Binary Modules
- Anatomy of the Linux kernel