2011-10-06

ලිනක්ස් Shell Programming පාඩම-කොටස 01




                                       මම දැන් කියල දෙන්න හදන්නෙ ලිනක්ස් පාඩම් මාලාවක්.ලිනක්ස් කිව්වට Linux shell Programming පාඩම් මාලාවක් ගැන තමයි කියන්න යන්නෙ. ගොඩක් සරලව හැමෝටම තේරෙන විදියට කියල දෙන්න තමයි මගේ උත්සාහය. මොනව හරි තේරෙන්නෙ නැත්තම් හරි අපැහැදිලිනම් හරි comment එකක් දාල ඒ ගැන අහන්න.ඔන්න එහෙනම් වැඩෙ පටන් ගත්ත. වරදක් අඩු පාඩුවක් එහෙම තියෙනවනම් ඒ ගැන පෙන්නා දෙන්න කියලත් ඉල්ලා කාරුණිකව ඉල්ලා සිටිනව.

01.මුලින්ම බලමු මොකද්ද මේ ලිනක්ස් කියන්නෙ කියල
 
                                   සරලවම කිව්වොත් ලිනක්ස් කියන්නෙ පරිඝණක මෙහෙයුම් පද්ධ්තියක් (Os එකක්).මේකෙ තියන වැදගත් කම් වලින් කිහිපයක් තමයි

1. මේක අපට ලැබෙන්නෙ සම්පූර්ණ නොමිලේ විම.
2. මේකෙ කේත (Source Code) නොමිලේ ලබා ගන්න හැකි විම.
3. GNU General Public License එක යටතේ තිබිම.


                                    ලිනක්ස් වල තාත්ත හැටියට හදුන්වන්න පුලුවන් Unix කියන කෙනා.මෙ Unix වල වයස අවුරුදු 35 විතර වෙනව. මේක develop කරේ Bell Labs, MIT & General Electric කියන ආයතන කිහිපය එකතු වෙලා. ඒ උනට මේක සාර්ථක Os එකක් වෙලා නැහැ. කොහොම කොහොම හරි 1991 දි Linus Torvalds කියන විශ්ව විද්‍යායල ශිෂයා විසින් තමාගෙ පරික්ෂන කටයුතු වලට යොදා ගන්න හදාගනිපු MINIX කියන OS එක තමයි පස්සෙ පස්සෙ linux කියල ගොඩනැගිල තියෙන්නෙ. C කියන පරිඝණක භාෂාව යොදාගෙන තමයි ලිනක්ස් හදල තියෙන්නෙ කියලත් මතක තියා ගන්න.Unix කියන තාත්ත ගෙන් linux ට උරුම උන දේවල් ගොඩක් තියෙනව ( තාත්තට තියෙන ගති ලක්ෂණම) බලන්න එ මොනවද කියල.

1.ගොඩක් දුරට C පරිඝණක භාෂාව යොදාගෙන තමයි හදල තියෙන්නෙ

2.Multi-user/Multitasking/32 or 64 bit Network OS එකක් - එක පාරකට users ල ගොඩ දෙනක්ට use කරන්න පුලුවන්.Programs ගොඩක් රන් කරවන්න පුලුවන්. 32 බිට් හරි 64 බිට් වගේ hardware platform වල වැඩ කරන්න පුලුවන් network os එකක් කියල තමයි කියන්නෙ.

3.Development/Programming environment එකකින් සන්නද්ධවෙලා තියෙන්නෙ - ලිනක්ස් උඩ Development වැඩ පොඩ්ඩක් හරි කරපු කෙනෙකුට මේ ගැන තේරුම් ගන්න පුලුවන්.

4.වෙනස් වෙනස් වර්ග වල Hardware Platform මත වැඩ කරන්න පුලුවන්.
මෙන්න මේ වගේ
Intel x86 processor (Celeron/PII/PIII/PIV/Old-Pentiums/80386/80486)
Macintosh PC's 
Cyrix processor 
AMD processor 
Sun Microsystems Sparc processor
Alpha Processor (Compaq)
Mobile Phones

                                             කලින් කිව්වෙ ලිනක්ස්ගෙ තාත්ත ගැන නෙ. දැන් කියන්නෙ Linux ගෙ දරුවො ගැන Linux ගෙ පවුලෙ දරු පැටව් ගොඩක් ඉන්නව.අපි බලමු කවුද මේ දරුවො කියල. බලන්න පහල තියන පින්තුරෙ දිහා, හිතා ගන්න පුලුවන් නෙ කොයි තරම් ලොකුද කියල. දරුවන්ගෙ දරුවොත් ඉන්නව. මෙයාලට දරුවො කියන්නෙ ඇයිද දන්නවද ? මෙයාල එකිනෙකට වෙනස් උනත් හැමෝවම හදල තියෙන්නෙ Linux kernel එක use කරල. kernel එක කියන්නෙ මොකද්ද කියල ඉස්සරහට කියල දෙන්නම්.

                                               

ඔයාල කමති Linux distributions. එකක් තෝර ගන්න වැඩ කරන්න. මම නම් ඉතින් උබුන්ටු තමයි.
මේ post එක බලල හොඳ එකක් තෝර ගන්න. ලිනක්ස් වලට මාරු වෙමු.


2. Linux අපට මොන විදියටද භාවිතා කරන්න පුලුවන්.
1.Personal Work- සින්දු අහන්න ලියුම් ලියන්න වගේ වැඩ වලට.
2.Web Server- වෙබ් සේවර් එකක් විදියට.
3.Software Development Workstation- සොෆ්ට්වෙයා Development වැඩ වලට.

4.Workgroup Server- workgroup සේවර් එකක් විදියට.

5. FTP, Telnet, SSH, Web, Mail, Proxy, Proxy Cache Appliance මෙන්න මේවගේ දත්ත සේවා වැඩ වලට.

තව මෙකී නොකී ගොඩක් දේවල් කරගන්න පුලුවන්.

3.මොකද්ද මේ කර්නල් එක කියන්නෙ ?

ලිනක්ස් os එකක හදවත වගේ කොටස තමයි අපි kernel කියල හදුන්වන්නෙ. ඒකෙන් තමයි ලිනක්ස් වල තියෙන සම්පත් පාලනය කරන්නෙ. සම්පත් කිව්වෙ රන් රීදී මුත මැණික් වගේ ඒවට නම් නෙවෙයි.තියෙන Hardware පහසුකම් වලට තවත් තේරෙන්න කිව්වොත් memory, file management,දත්ත තැන්පත් කිරීම,Hardware Device එකක් පාලනය කිරීම වගේ දේවල්.
මේ කර්නල් එක සුලු පටු එකක් නම් නෙවෙයි. ලයින් මිලියනන 13ක් තියෙන source code එකක්.කර්නල් එක තමයි කම්පියුටරේ Hardware interface එකත් එක්ක කෙලින්ම සෙට් වෙන එක්කෙනා. user ඒ කියන්නෙ අපි කරන්න කියන ඉල්ලිම් (Applications හෝ Shell මගින් ) මුලින්ම ලැබෙන්නෙ kernel ට එයා තමයි ඒව hardware interfae(physical hardware) Layer එකට ලබාදෙන කෙනා.තවත් විදියකට කිව්වොත් kernel එක තමයි කව්ද සම්පත් use කරන්නෙ කොයි තරම් වෙලාවකටද කොහේදිද කියල තීරණය කරන්නෙ.
පහල තියෙන පින්තූරෙ බැලුවහම ඒක තේරේවි



ප්‍රධාන වශයෙන් කර්නල් එකෙන් මෙන්න මේදේවල් කරනව.

I/O management
Process management
Device management
File management
Memory management


ඊළඟ කොටසින් හමු වෙමු.

Share:

4 comments:

Anonymous said...

ඉතාමත් වැදගත් ලිපියක්

dilan633@facebook.com

ධනුෂ්ක කෞෂල්‍ය said...

වැඩේ නියමයි. ඉතාමත් වැදගත් ලිපියක් සරලව පැහැදිලි කරලා තියෙනවා... දිගටම ලියන්න.

Amazing said...

thanks hondagta therenna liyala thiyenawa ohoma yan

Anonymous said...

sirawatama fatta. man linux walata marau une eye. igana ganna godak dewal thina lipiyak. digatama liyanna. good luck