C இல் திறந்த கணினி அழைப்பை எவ்வாறு பயன்படுத்துவது

How Use Open System Call C



லினக்ஸ் ஓஎஸ் மற்றும் புரோகிராம்களுக்குள் ஒரு கதவை வழங்க லினக்ஸ் விநியோகங்களில் கணினி அழைப்புகள் பயன்படுத்தப்படுகின்றன. லினக்ஸ் இயக்க முறைமை சி மொழியைப் பயன்படுத்தும் போது அதில் உள்ள கணினி அழைப்புகளை ஆதரிக்க Glibc நூலகத்தைப் பயன்படுத்துகிறது. கணினி அழைப்புகளைப் பயன்படுத்த இன்னும் நிறைய வழிகள் உள்ளன. இந்த கட்டுரை வழிகாட்டியில், லினக்ஸ் அமைப்பில் திறந்த கணினி அழைப்பைப் பற்றி விவாதிப்போம். பாதையில் குறிப்பிடப்பட்டுள்ள கோப்பை விரைவாக திறக்க திறந்த கணினி அழைப்பு பயன்படுத்தப்படுகிறது. பயனர் உருவாக்கிய கோப்பின் கோப்பு விளக்கத்தை இது எங்களுக்குத் தெரிவிக்கும். ஓபன் சிஸ்டம் அழைப்பைப் பெற நாங்கள் உபுண்டு 20.04 ஐப் பயன்படுத்துகிறோம்.

நூலகங்களை நிறுவவும்

சி மொழிக்கு சில கூடுதல் நூலகத் தொகுப்புகளை முன்நிபந்தனைகளாக நிறுவ வேண்டும். முதலில், கணினி அழைப்புகள் தொடர்பான தகவல்களைச் சரிபார்க்க நீங்கள் manpages-dev தொகுப்பை நிறுவ வேண்டும். செயல்பாட்டுப் பகுதியிலிருந்து கட்டளை வரி முனையத்தைத் திறந்து கீழ்கண்ட வழிமுறைகளை இயக்கி, மேனேஜ்களை நிறுவவும்.







$ sudo apt நிறுவல் மேன்பேஜ்கள்-தேவ்



நிறுவலை முடிப்பதற்கான வெளியீடு கீழே கொடுக்கப்பட்டுள்ளது.







இப்போது கீழே உள்ள மனித கட்டளையைப் பயன்படுத்தி திறந்த கணினி அழைப்பைச் சரிபார்க்கிறோம்.

$ மனிதன்2திற



திறந்த கணினி அழைப்பிற்கான வெளியீட்டு மனிதர் பக்கம் கீழே காட்டப்பட்டுள்ளது. இது தொடர்பான கூடுதல் தகவல்களை நீங்கள் பார்க்கலாம். வெளியேற q பட்டனை அழுத்தவும்.

மேலே உள்ள தொடரியல் கணினி அழைப்புகளுக்குச் சேர்க்க வேண்டிய தேவையான நூலகங்களின் முதல் மூன்று வரிகளைக் காட்டுகிறது. திறந்த கணினி அழைப்புக்கு மூன்று தொடரியல் உள்ளன. முதல் தொடரியல் பாதையின் பெயரைக் காட்டுகிறது, இது திறக்கப்பட வேண்டிய கோப்பின் பெயர். இரண்டாவது அளவுரு, கொடிகள், ஒரு கோப்பின் பயன்முறையைக் காட்டுகிறது, எ.கா. படிக்க அல்லது எழுத. கோப்பு இல்லாதபோது இரண்டாவது தொடரியல் பயன்படுத்தப்படலாம். அளவுரு பயன்முறை கோப்பில் சலுகைகளைக் காட்டப் பயன்படுகிறது.

உபுண்டு 20.04 லினக்ஸ் விநியோகத்தில் சி குறியீட்டை பிழைதிருத்தம் செய்ய ஜிசிசி கம்பைலரை நிறுவ வேண்டிய நேரம் இது. அதற்காக, ஷெல்லில் கீழே உள்ள வழிமுறைகளைச் செயல்படுத்தவும்.

$ sudo apt gcc ஐ நிறுவவும்

ஜிசிசி கம்பைலரை நிறுவுவதைத் தொடர நீங்கள் Y ஐத் தட்ட வேண்டும், இல்லையெனில் நிறுவலை மூட n பட்டனை அழுத்தவும். எனவே y பட்டனை அழுத்தி தொடர Enter ஐ அழுத்தவும்.

நிறைவுக்கான வெளியீடு கீழே காட்டப்பட்டுள்ளது.

உதாரணம் 01

திறந்த கணினி அழைப்பின் மிக எளிய உதாரணத்தைப் பார்ப்போம். முதலில், கட்டளை ஓட்டைத் திறந்து, எளிய தொடு கட்டளையைப் பயன்படுத்தி ஒரு புதிய உரை கோப்பு test.txt ஐ பின்வருமாறு உருவாக்கவும்:

$தொடுதல்test.txt

கைமுறையாக சில தரவுகளைச் சேர்க்கவும். கீழேயுள்ள பூனை கட்டளையைப் பயன்படுத்தி ஒரு கோப்பில் தரவைப் பார்க்கலாம்.

$பூனைtest.txt

கீழே காட்டப்பட்டுள்ளபடி, ஷெல்லில் உள்ள நானோ கட்டளையைப் பயன்படுத்தி புதிய சி கோப்பை உருவாக்குவோம்.

$நானோபுதிய சி

கீழே உள்ள GNU நானோ கோப்பு திறக்கப்படும். நீங்கள் கீழே உள்ள சி மொழி குறியீட்டை தட்டச்சு செய்ய வேண்டும். சி குறியீடு சரியாக செயல்படுத்த தேவையான நூலகத் தொகுப்புகளை நாங்கள் சேர்த்துள்ளதை நீங்கள் பார்க்கலாம். அதன் பிறகு, திறந்த கணினி அழைப்பில் வேலை செய்வதற்கான முக்கிய செயல்பாட்டை நாங்கள் வரையறுத்துள்ளோம். நாங்கள் இரண்டு முழு எண் மாறிகளை அறிவித்துள்ளோம். இடையக மதிப்புகளை எண்ணுவதற்கு n மாறி பயன்படுத்தப்படுகிறது, மேலும் fd கோப்பு விளக்கத்திற்கு பயன்படுத்தப்படுகிறது. எழுத்து வகை இடையக வரிசையை அளவு 50 கொண்ட பஃப் என நாங்கள் அறிவித்துள்ளோம். திறந்த கணினி அழைப்பு கோப்பு test.txt இலிருந்து உள்ளடக்கத்தைப் படித்து கோப்பு விளக்கத்திற்குத் திரும்பப் பயன்படுத்தப்பட்டது. O_RDONLY வாசிப்பு நோக்கங்களுக்காக பயன்படுத்தப்படுகிறது. அடுத்த வரியில் பஃப்பரிலிருந்து 10 பைட்டுகளைச் சேகரித்து அதை n இன் முழு எண்ணுக்குத் திரும்பப் படிக்க கணினி அழைப்பைக் காட்டுகிறது. மேலும், எழுதுதல் கட்டளை உள்ளடக்கம் அல்லது இடையக தரவை கோப்பு விளக்கத்தில் எழுதப் பயன்படுகிறது, இது இப்போது எங்கள் விஷயத்தில் வெளியீட்டுத் திரை. இந்த கோப்பை Ctrl+S பயன்படுத்தி சேமித்து Ctrl+X கட்டளையைப் பயன்படுத்தி மூடவும்.

#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது

intமுக்கிய()
{
intஎன்,எஃப்.டி;
கரிஎருமை[ஐம்பது];
எஃப்.டி=திற(சோதனைtxt,O_RDONLY);
என்=படி(எஃப்.டி,எருமை, 10);
எழுது(1 ,எருமை, 10);

கீழே உள்ள gcc கட்டளையைப் பயன்படுத்தி திறந்த கணினி அழைப்பிற்கான C குறியீட்டை முதலில் தொகுக்கலாம்.

$gccபுதிய சி

திறந்த கணினி அழைப்பிற்கான சி குறியீட்டின் வெளியீட்டைச் சரிபார்க்க வேண்டிய நேரம் இது. ஷெல்லில் கீழே உள்ள a.out கட்டளையைப் பயன்படுத்துவோம். வெளியீடு ஒரு கோப்பு test.txt இன் உள்ளடக்கத்திலிருந்து 10 பைட்டுகளைக் காட்டுகிறது.

$./க்குவெளியே

ஒரு திறந்த கணினி அழைப்பைப் பயன்படுத்தி ஒரு கோப்பின் உள்ளடக்கங்களை மற்றொரு கோப்பில் எழுத மற்றொரு உதாரணத்தை எடுத்துக் கொள்வோம். கீழ்கண்டவாறு நானோ கட்டளையைப் பயன்படுத்தி புதிய சி கோப்பை உருவாக்க.

$ நானோ புதியது.c

எனவே அதே குறியீட்டை சிறிய மாற்றத்துடன் எடுத்துக் கொள்ளுங்கள். குறியீட்டில் மற்றொரு கோப்பு விளக்கத்தை fd1 என வரையறுத்துள்ளோம். ஒரு கூடுதல் வரியைத் தவிர அனைத்து குறியீடுகளும் ஒன்றே. குறியீட்டின் இரண்டாவது கடைசி வரி திறந்த கணினி அழைப்பைப் பயன்படுத்தி O_CREAT மற்றும் பயன்முறையைப் பயன்படுத்தி இலக்கு என்ற புதிய கோப்பை உருவாக்க, O_WRONLY என மட்டும் எழுதவும். 0642 இந்தக் கோப்பில் ஒதுக்கப்பட்ட சலுகைகளைக் காட்டுகிறது. கோப்பு புதிய கோப்பு விளக்கத்திற்கு திருப்பி அனுப்பப்பட்டது. அடுத்த கோடு அதன் கோப்பு விளக்கத்தின் படி இடையகத்தில் உள்ளடக்கத்தின் பைட்டுகளை எழுத ஒரு கட்டளையைக் காட்டியது. கோப்பை சேமித்து மூடவும்.

சி மொழி கோப்பை பிழைதிருத்தம் செய்ய gcc தொகுப்பு கட்டளையை இயக்கவும்.

$ gcc புதியது.c

C குறியீட்டின் வெளியீட்டை காட்ட, கீழே உள்ள ஷெல்லில் a.out அறிவுறுத்தலை முயற்சிக்கவும். வெளியீடு புதிதாக உருவாக்கப்பட்ட கோப்பு இலக்குக்கு திருப்பி விடப்பட்டதால் வெளியீடு இல்லை.

$./க்குவெளியே

பூனை கட்டளையைப் பயன்படுத்தி ஒரு கோப்பு இலக்கின் தரவைச் சரிபார்க்கலாம். கோப்பில் 20 பைட்டுகள் இருப்பதை வெளியீடு காட்டுகிறது.

$ பூனை இலக்கு

முடிவுரை

மேலே உள்ள டுடோரியலில், ஜிசிசி கம்பைலரைப் பயன்படுத்தி சி மொழியில் திறந்த கணினி அழைப்பைப் பயன்படுத்த நாங்கள் உங்களுக்கு விளக்கினோம். இந்த வழிகாட்டியில் விளக்கப்பட்டுள்ள பல்வேறு எடுத்துக்காட்டுகளின் உதவியுடன் நீங்கள் விரும்பிய திட்டத்தை செயல்படுத்த வழிவகுக்கும்.