லினக்ஸில் செயல்முறைகளின் நேரம் மற்றும் நினைவக பயன்பாட்டை எவ்வாறு கட்டுப்படுத்துவது


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

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

இந்த ஸ்கிரிப்டை இயக்க, உங்கள் லினக்ஸ் கணினியில் பெர்ல் 5 நிறுவப்பட்டிருக்க வேண்டும் மற்றும்/proc கோப்பு முறைமை ஏற்றப்பட்டிருக்க வேண்டும்.

உங்கள் லினக்ஸ் கணினியில் பெர்லின் நிறுவப்பட்ட பதிப்பைச் சரிபார்க்க, பின்வரும் கட்டளையை இயக்கவும்.

$ perl -v

அடுத்து, வழக்கமான லினக்ஸ் கட்டளையைப் பயன்படுத்தி உங்கள் கணினியில் காலாவதியான களஞ்சியத்தை குளோன் செய்யுங்கள்.

$ cd ~/bin
$ git clone https://github.com/pshved/timeout.git
$ cd timeout

காலாவதியான ஸ்கிரிப்ட் எவ்வாறு செயல்படுகிறது என்பதை இப்போது பார்ப்போம்.

-m கொடியைப் பயன்படுத்தி ஒரு செயல்முறையின் நினைவக பயன்பாட்டை 100M மெய்நிகர் நினைவகத்திற்கு எவ்வாறு கட்டுப்படுத்துவது என்பதை இந்த முதல் எடுத்துக்காட்டு காட்டுகிறது. நினைவகத்திற்கான இயல்புநிலை அலகு கிலோபைட்டுகளில் உள்ளது.

இங்கே, அழுத்த-என்ஜி கட்டளை 4 மெய்நிகர் நினைவக அழுத்தங்களை (விஎம்எஸ்) இயக்குகிறது, அவை கிடைக்கக்கூடிய நினைவகத்தில் 40% ஐ 10 நிமிடங்களுக்கு பயன்படுத்துகின்றன. இதனால் ஒவ்வொரு அழுத்தமும் கிடைக்கக்கூடிய நினைவகத்தில் 10% பயன்படுத்துகிறது.

$ ./timeout -m 100000 stress-ng --vm 4 --vm-bytes 40% -t 10m

மேலே உள்ள காலக்கெடு கட்டளையின் வெளியீட்டைக் கருத்தில் கொண்டு, மன அழுத்தம்-தொழிலாளர் செயல்முறைகள் வெறும் 1.16 விநாடிகளுக்குப் பிறகு நிறுத்தப்பட்டன. ஏனென்றால், வி.எம்.எஸ் (438660 கிலோபைட்டுகள்) இன் ஒருங்கிணைந்த நினைவக நுகர்வு மன அழுத்தம் மற்றும் அதன் குழந்தை செயல்முறைகளுக்கு அனுமதிக்கப்பட்ட மெய்நிகர் நினைவக பயன்பாட்டை விட அதிகமாக உள்ளது.

செயல்முறையின் நேர வரம்பை இயக்க, காட்டப்பட்டுள்ளபடி -t கொடியைப் பயன்படுத்தவும்.

$ ./timeout -t 4 stress-ng --vm 4 --vm-bytes 40% -t 10m

மேலே உள்ள எடுத்துக்காட்டில், மன அழுத்தம்- ng CPU + SYS நேரம் 4 இன் வரையறுக்கப்பட்ட மதிப்பை மீறும் போது, தொழிலாளர் செயல்முறைகள் கொல்லப்படுகின்றன.

நினைவகம் மற்றும் நேரம் இரண்டையும் பின்வருமாறு கட்டுப்படுத்தலாம்.

$ ./timeout -t 4 -m 100000 stress-ng --vm 4 --vm-bytes 40% -t 10m

காலக்கெடு --detect-hangups போன்ற சில மேம்பட்ட விருப்பங்களையும் ஆதரிக்கிறது, இது ஹேங்கப் கண்டறிதலை செயல்படுத்துகிறது.

$ ./timeout --detect-hangups -m 100000 stress-ng --vm 4 --vm-bytes 40% -t 10m

--memlimit-rss அல்லது -s சுவிட்சைப் பயன்படுத்தி RSS (குடியிருப்பு தொகுப்பு அளவு) நினைவக வரம்பை நீங்கள் கண்காணிக்கலாம்.

$ ./timeout -m 100000 -s  stress-ng --vm 4 --vm-bytes 40% -t 10m

கூடுதலாக, ஒரு செயல்பாட்டின் வெளியேறும் குறியீடு அல்லது சமிக்ஞை + 128 ஐ திருப்பி அனுப்ப, காட்டப்பட்டுள்ளபடி --confess அல்லது -c விருப்பத்தைப் பயன்படுத்தவும்.

$ ./timeout -m 100000 -c  stress-ng --vm 4 --vm-bytes 40% -t 10m

மேலும் தகவல் மற்றும் பயன்பாட்டு எடுத்துக்காட்டுக்கு, நேரம் முடிந்த கிதுப் களஞ்சியத்தைக் காண்க: https://github.com/pshved/timeout.

பின்வரும் தொடர்புடைய கட்டுரைகளையும் நீங்கள் சமமாகக் காணலாம்:

  1. தொகுதி பயன்முறையில் ‘மேல்’ மூலம் நினைவக பயன்பாட்டின் மூலம் முதல் 15 செயல்முறைகளை எவ்வாறு கண்டுபிடிப்பது
  2. <
  3. CPUTool - லினக்ஸில் எந்தவொரு செயல்முறையையும் CPU பயன்படுத்துவதை கட்டுப்படுத்துங்கள் மற்றும் கட்டுப்படுத்துங்கள்
  4. <
  5. CPULimit கருவி மூலம் லினக்ஸில் ஒரு செயல்முறையின் CPU பயன்பாட்டை எவ்வாறு கட்டுப்படுத்துவது

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