திங்கள், 11 மார்ச், 2013

கணினி செயல்படும் தத்துவம் - computer working principle

கணினி ஒரு மின்னனு உபகரணம். இது மெஷின் லேங்குவேஜ் என்று சொல்லக்கூடிய இயந்திர மொழியை அடிப்படையாகக் கொண்டு செயல்படுகின்றது. இயந்திர மொழி என்றால் “0” மற்றும் “1” ஐ குறிப்பிடுகின்றது, இதனையே டிஜிட்டல் மொழி என்றும் சொல்லக்கூடும்.
மையச்செயலகம்(central processing unit) எனும் செயலக அமைப்பு, இந்த இயந்திர மொழியால் மட்டுமே இயங்கக்கூடியது.
மையச்செயலகத்தில் (CPU) ஒரு நுண்செயலி(microprocessor) மற்றும் ஒரு நினைவகம்(memory) மற்றும் ஒரு கட்டுப்பாட்டு அமைப்பு (control unit) ஒன்றாக இணைக்கப்பட்டு இருக்கும். அந்த நினைவகத்தில் ஒரு நுண்செயலி என்னச்செய்ய வேண்டும் மற்றும் என்னச்செய்யக்கூடாது என்று இயந்திர மொழியில் கட்டளைகள் விடப்பட்டு அதனைச் சேமிக்கப்பட்டிருக்கும்.
 
நுண்செயலியின் கட்டளை தரவு அலவு

கட்டளைகள் ஆனது ஒரு நுண்செயலியின் செயல் அலவை பொருத்தது. நுண்செயலிகள் பொதுவாக 8 bit (8 துண்டுகள்) அளவுள்ள இயந்திர மொழி கட்டளைகளை கையாலும் தண்மையுடையது. ஒருசில நவீன நுண்செயலிகள் 16 bit மற்றும் 32 bit அளவுள்ள இயந்திர மொழி கட்டளைகளை புரிந்து கொள்ளும் தண்மை கொண்டது. 64 bit தரவு (data) கட்டளைகள் கொண்டு செயல்படும் நுண்செயலிகள் அதிவேகமாக கணக்குகளையும் மற்ற வேளைகளையும் செய்துமுடிக்கும்.

ஒரு 8 bit data எவ்வாறு இருக்கும்.

ஒரு 8 bit data எவ்வாறு இருக்கும் என்றால். 0101  இது ஒரு 8 bit data (தரவு). இந்த 8 bit data எதைக் குறிப்பிடுகின்றது என்றால், நீங்கள் உங்கள் கணினியில் விசைபலகம் மூலம் 5 என்ற விசையை அழுத்தும்போது உங்கள் கணினியில் உள்ள விசைபலக பகிர்மானம்(KEYBOARD INTERFACE) அந்த 5 என்ற என்னை 0101 என்று மாற்றி நுண்செயலிக்கி அளிக்கின்றது. நுண்செயலி அந்த என்னை சேமிக்க வேண்டுமா, அல்லது அதைவைத்து கணக்கு போடவேண்டுமா அல்லது வேறு ஏதாவது கட்டளை பயனரிடமிருந்து வந்துள்ளதா என்று சோதனை செய்யும். எந்த கட்டளையும் இடப்படவிள்ளை எனில் அதை அப்படியே திரைபலக பகிர்மானம்(DISPLAY INTERFACE UNIT) அமைப்பிற்க்கு அனுப்பி இடப்பட்ட கட்டளை மற்றும் அந்த 5 என்ற என்னையும் திரைபலகம் மூலம் காண்பிக்கச் செய்யும். இந்த செயல் எவ்வாறு நடைப்பெற்றதோ அதே போன்றுதான் எல்லாச் செயல்களும் நடக்க கணினி அனுமதிக்கும்.

கட்டளைத் தொகுதிகள்.

முதலில் தரவு பிறகு கட்டளைகள் அதன்பிறகு செயலாக்கம். இதன் அடிப்படையில் தான் கட்டளைத் தொகுதிகள்(INSTRUCTION SETS) உருவாக்கப்படுகின்றன. இந்த கட்டளைத் தொகுதிகள் ஒரு கணினியை வழிநடத்துகின்றது. கணனியின் நினைவகத்தில் ஒரு கோப்பு உறுவாக்கி அந்த கோப்பில் ஒரு செயலுக்கான கட்டளைத்தொகுதிகளை தயார்செய்து பிறகு அதை சேமித்து அதனை தேவைப்படும்போது பயன்படுத்தலாம்.
கட்டளைகளை நடைமுறையில் நிரல்கள் (programs)  என்றழைக்கப்படுகின்றன. இந்த நவீன உலகில் கணினியின் தேவைப்பாடு அதிகம் இருப்பதால் அதனை எல்லோறும் பயன்படுத்தும் வகையில் எளிமையாக்க இந்த நிரல்கள் என்று சொல்லக்கூடிய கட்டளைத்தொகுதிகளை பயன்படுத்தி பல பயன்பாடுகளை செய்யக்கூடிய கட்டளைகளை உருவாக்கி பிறகு அதனை நிலைவட்டில் சேமித்து இயக்கப்படுகின்றது. இதனையே நாம் இயக்கமுறைமை (operating system) என்று கூறுகிறோம்.

இயக்கமுறைமை கட்டளைகள்.

இந்த இயக்கமுறைமையானது கணினி புரிந்துகொள்ளும் விதத்தில் பயனர் இடக்கூடிய கட்டளைகளை இயந்திர மொழியாக மாற்றி கொடுக்கின்றது. உதாரணமாக, select, copy, past, insert, print, search, connect, find, move, undo, save, என்ற கட்டளைகளை ஒரு இயக்க முறைமையை பயன்படுத்தி நாம் செய்யும்போது. அந்த கட்டளைகள் கணினிக்கு நேரடியாக தெறியாது எனெனில் கணினிக்கு மனித மொழி புரியாது. கணினி இயந்திர மொழியை மட்டுமே உணறும். எனவே இயக்கமுறைமையானது பிறகு அந்த கட்டளைகளை தானாகவே compile செய்து அதனை Direct machine language ஆக மாற்றி, இட்ட செயலை நிரைவேற்றும். அதே போன்று செயல் நிரைவடைந்தவுடன் அந்த செய்தியை வெளிப்படுத்த DE-compile செய்து அதனை மனிதர்கள் புரிந்து கொள்ளும் விதத்தில் இட்டகட்டளைக்கான பதில் உரையாகவோ அல்லது படமாகவோ தெரிவிப்பான் மூலம் திரையில் காட்டும். இந்த ஒட்டுமொத்த செயலும் செய்வதர்க்கு கணினிக்கு ஒரு சில micro-seconds தான் ஆகும். ஏனெனில் கணினியில் உள்ள microprocessor (நுண்செயலி) அதிவேகமாக கட்டளைகளை நிரைவேற்றும் தன்மையுடையது. 8 bit microprocessor மூலம் கட்டளைகளை நிரைவேற்றும் கணினியானது 8 bit Operating System பயன்படுத்தி கட்டளைகளை இடவேண்டும். மாறாக 16 bit Operating System பயன்படுத்தி கட்டளைகள் இட்டால் 8 bit micro processor அதனை புரிந்து கொள்ளாது. இப்பொழுது வெளிவறும் கணினிகள் 32 bit microprocessor அல்லது 64 bit Microprocessor களை கொண்டு செயல்படும் வகையில் வடிவமைக்கப்பட்டு வருகின்றன. எனவே இந்த அதிவேக கணினிகளுக்கு 32 bit Operating System அல்லது 64 bit Operating System ஐ நிலைவட்டில் நிறுவி, செயல்களை நிரைவேற்ற 32 bit அளவுள்ள கட்டளைகள் இடப்படும். 
கிழே உள்ள படத்தில் 8 bit கட்டளைகளை கொண்டு இயங்கும் ஒரு கணினியின் மாதிரிபடம் காட்டப்பட்டுள்ளது.

8bit தரவை செயல்படுத்தும் கணினி














இந்த படத்தில் உள்ளவாறு ஒரு 8bit கணினிக்கு ஒரு 8bit நுண்செயலி மற்றும் 8 bit உள் பகிர்மான சாதனங்கள்( 8 bit internal interface devices) இருக்க வேண்டும். அதாவது கணினியில் உள்ள நுண்செயலியுடன் ஒரு விசைபலகத்தை நேரடியாக தொடர்பு எற்படுத்தமுடியாது. விசைபலகத்திற்க்கென்று ஒரு தொடர்பு ஏற்படுத்தும் அமைப்பு கணினியில் உள்ளது அதன் பெயர் விசைபலக பகிர்மானம்(key board interface unit) அதன் மூலமாக தான் ஒரு விசைபலகம் கணினியில் உள்ள நுண்செயலியிடம் தொடர்புக்கொண்டு கட்டளைகளை பறிமாறிக்கொள்ளும். இதே போன்றுதான் திரைபலக பகிர்மானம்(display interface unit) மற்றும் அச்சுப்பொறி பகிர்மானம் (printer interface unit) ஓளி மற்றும் ஒலி பகிர்மானமங்கள் (audio and video interface card) இருக்க வேண்டும். இந்த பகிர்மானங்களுடன்(interface units) வெளியில் உள்ள மின்னனு சாதனங்கள்(external output devices and input devices) தொடர்புக்கொண்டு நுண்செயலியின் கட்டளைகளை ஏற்றுக்கொள்ளும். பிறகு நுண்செயலியிடமிருந்து என்ன கட்டளை வருகின்றதோ அதனை ஆமோதித்து அதன்படி செயலை நிரைவேற்றும்.
முதலில் கணினி இயங்க தொடங்கியவுடன் நுண்செயலியில் உள்ள control unit (கட்டுப்பாட்டு அமைப்பு) நினைவகத்தில் கட்டளைகள் விடப்பபட்டுள்ளனவா என சோதனை செய்து பிறகு அந்தகட்டளைகளை எடுத்து வேளைச்செய்ய ஆரம்பிக்கும். இத்தகைய வேலையை நாம் memory machine cycle என்று குறிப்பிடலாம். control unit நினைவகத்தை fetch செய்து அதில் உள்ள கட்டளை தரவுகளை எடுப்பதால் அதற்கான கோட்பாடுகளை நிர்னயிக்கின்றது. அந்த கோட்பாடுகள் அனைத்தும் memory machine cycle ல் இருக்கும்.
வொவ்வொரு செயலுக்கும் ஒரு machine cycle உருவாக்கப்படும்.  வொவ்வொரு machine cycle லிலும் ஒரு செயலுக்கான Request and request acknowledgement மற்றும் data அதற்கான control signal இருக்கும்.
பறகு அந்த செயலுக்கான Response மற்றும் Response acknowledgement அதனுடன் memory location address குறிப்பிடப்பட்டிருக்கும்.
1. control signal என்ற machine cycleல் என்ன செயல் செய்ய data enable ஆகியுல்லதோ அதைமட்டும் செய்யவே microprocessor அனுமதிக்கப்படும். உதாரணமாக “Read” data enable ஆகியிருந்தால் microprocessor படிக்க மாத்திரம் செய்யும். மாறாக எழுத ஆரம்பிக்காது.
2. data signal என்ற machine cycleல் read operation செய்ய என்ன தரவு பயன்படுத்த வேண்டுமோ அதைமாத்திரம் கொண்டு செல்லும்.
3. address machine cycle read operation செய்ய வேண்டிய information or data location address இடம் பெரும்.
4. request and response machine cycle ல் read operation செய்வதர்க்காண request signal ஆனது microprocessor க்கு அனுப்பப்படும். microprocessor தயாராக இருந்தால் control unit க்கு Response signal வரும். இந்த பரிமாற்றத்தை control unit memory mapping செய்யும் அதுவே இந்த machine cycleல் இடம்பெரும்.
எல்லா செயலும் நடந்து முடிந்த பிறகு முடிவை temporary register ல் சேமிக்கும். பிறகு control unit ஆனது output device தயாராகவுள்ளனவா என பறிசோதிக்கும் அப்படி தயாராக இருக்கின்றது என பதில் கிடைத்தவுடன் temporary registerல் உள்ள ஒரு செயலின்(task or operation) முடிவை buffer memory or RAM க்கு அனுப்பிவிடும். buffer memory யில் உள்ள result data ஆனது output device க்கு சிறிது சிறிதாக அனுப்பப்படும். out put device ன் செயல்திறனை பொருத்து buffer memory யில் இருந்துவரும் Data வின் வேகம் மாறுபடும். control unit ஆனது temporary resister உள்ள ஒருச் செயலுக்கான முடிவை buffer memory க்கு அனுப்பிய மறு நிமிடமே microprocessor வேறொரு செயலைச் செய்ய தயாராகிவிடுகின்றது. இந்த விசயத்தை control unit கண்டுபிடித்துவிடும் பிறகு பயனர் இடம்மிருந்து interrupt request வந்துள்ளனவா என சோதிக்கும் அப்படி ஏதாவது இருந்தால் அந்த request ஐ நிரைவேற்ற microprocessor க்கு செய்தி அனுப்பும்.
இவ்வாறு கணினியானது மிக நுட்பமாக தனது பணியை செய்கின்றது.   

கருத்துகள் இல்லை:

கருத்துரையிடுக