மூன்றாம் பதிப்பு கெர்னல் பேட்ச்கள் Linux ரஸ்ட் மொழி ஆதரவுடன்

ரஸ்ட்-ஃபார்- திட்டத்தின் ஆசிரியர் மிகுவேல் ஓஜெடாLinuxகர்னல் உருவாக்குநர்களின் பரிசீலனைக்கு முன்மொழியப்பட்டது Linux ரஸ்டில் சாதன இயக்கிகளை உருவாக்குவதற்கான கூறுகளின் மூன்றாவது பதிப்பு. ரஸ்ட் ஆதரவு சோதனை நிலையில் இருப்பதாகக் கருதப்பட்டாலும், இது ஏற்கனவே linux-next கிளையில் சேர்க்க ஒப்புதல் அளிக்கப்பட்டுள்ளது. இந்த மேம்பாட்டிற்கு கூகிள் மற்றும் இணையப் பாதுகாப்பை மேம்படுத்தும் தொழில்நுட்பங்களின் வளர்ச்சியையும் HTTPS-ஐயும் ஊக்குவிக்கும் Let's Encrypt திட்டத்தின் நிறுவனரான ISRG (இணையப் பாதுகாப்பு ஆராய்ச்சிக் குழு) நிதியளிக்கின்றன.

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

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

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

  • நிலையான ரஸ்ட் 1.57 வெளியீட்டை குறிப்பு தொகுப்பியாகப் பயன்படுத்துவதற்கான மாற்றம் நிறைவடைந்துள்ளது, மேலும் நிலையான ரஸ்ட் 2021 மொழி பதிப்பிற்கான பிணைப்பு உறுதி செய்யப்பட்டுள்ளது. முன்னதாக, இணைப்புகள் ரஸ்டின் பீட்டா கிளையுடன் இணைக்கப்பட்டு நிலையற்றவை என வகைப்படுத்தப்பட்ட சில மொழி அம்சங்களைப் பயன்படுத்தின. ரஸ்ட் 2021 விவரக்குறிப்புக்கான மாற்றம், இணைப்புகளிலிருந்து const_fn_transmute, const_panic, const_unreachable_unchecked, core_panic மற்றும் try_reserve போன்ற நிலையற்ற அம்சங்களை அகற்றுவதற்கான பணியைத் தொடங்க எங்களுக்கு அனுமதித்துள்ளது.
  • இணைப்புகளில் சேர்க்கப்பட்டுள்ள alloc Rust நூலக பதிப்பின் மேம்பாடு தொடர்கிறது. நினைவகத்திற்கு வெளியே உள்ள நிலைமைகள் போன்ற பிழைகள் ஏற்படும் போது, ​​நினைவக ஒதுக்கீடு செயல்பாடுகள் பீதி நிலைமைகளை உருவாக்குவதைத் தடுக்க இந்த பதிப்பு மாற்றியமைக்கப்பட்டுள்ளது. புதிய பதிப்பு கோர் ரஸ்ட் குறியீட்டில் பயன்படுத்தப்படாத செயல்பாட்டை முடக்க "no_rc" மற்றும் "no_sync" விருப்பங்களை செயல்படுத்துகிறது, இது நூலகத்தை மேலும் மட்டுப்படுத்துகிறது. கோர் நூலகத்திற்குத் தேவையான மாற்றங்களை நகர்த்துவதற்கு கோர் ஒதுக்கீட்டு உருவாக்குநர்களுடன் பணி தொடர்கிறது. நூலகம் கர்னல் மட்டத்தில் செயல்படத் தேவையான "no_fp_fmt_parse" விருப்பம், கோர் ரஸ்ட் நூலகத்திற்கு மாற்றப்பட்டுள்ளது.
  • CONFIG_WERROR பயன்முறையில் கர்னலை உருவாக்கும்போது சாத்தியமான தொகுப்பி எச்சரிக்கைகளை நீக்க குறியீடு சுத்தம் செய்யப்பட்டது. ரஸ்ட் குறியீட்டை உருவாக்கும்போது கூடுதல் தொகுப்பி கண்டறியும் முறைகள் மற்றும் கிளிப்பி லிண்டர் எச்சரிக்கைகள் இயக்கப்பட்டன.
  • சீக்லாக்குகள் (வரிசை பூட்டுகள்), மின் மேலாண்மைக்கான கால்பேக்குகள், I/O நினைவகம் (readX/writeX), குறுக்கீடு மற்றும் நூல் கையாளுபவர்கள், GPIO, சாதனங்களுக்கான அணுகல், இயக்கிகள் மற்றும் சான்றுகளுக்கான ரஸ்ட் குறியீட்டில் பயன்படுத்த சுருக்கங்கள் முன்மொழியப்பட்டுள்ளன.
  • இயக்கக மேம்பாட்டு கருவிகள் நகரக்கூடிய மியூடெக்ஸ்கள், பிட்வைஸ் இட்டரேட்டர்கள், எளிமைப்படுத்தப்பட்ட சுட்டிக்காட்டி ரேப்பர்கள், மேம்படுத்தப்பட்ட செயலிழப்பு கண்டறிதல்கள் மற்றும் தரவு பஸ்-சுயாதீன உள்கட்டமைப்பு ஆகியவற்றை உள்ளடக்கியதாக விரிவுபடுத்தப்பட்டுள்ளன.
  • refcount_t பின்தளத்தை அடிப்படையாகக் கொண்ட எளிமைப்படுத்தப்பட்ட Ref வகையைப் பயன்படுத்தி குறிப்பு கையாளுதல் மேம்படுத்தப்பட்டுள்ளது, இது குறிப்பு எண்ணுவதற்கு அதே பெயரின் கர்னல் API ஐப் பயன்படுத்துகிறது. நிலையான alloc நூலகத்தால் வழங்கப்பட்ட Arc மற்றும் Rc வகைகளுக்கான ஆதரவு நீக்கப்பட்டது மற்றும் கர்னல்-நிலை குறியீட்டில் கிடைக்கவில்லை (இந்த வகைகளை முடக்குவதற்கான விருப்பங்கள் நூலகத்திற்கு வழங்கப்பட்டுள்ளன).
  • இந்த இணைப்புகளில் ரஸ்டில் மீண்டும் எழுதப்பட்ட PL061 GPIO இயக்கியின் பதிப்பு அடங்கும். இந்த இயக்கியின் ஒரு தனித்துவமான அம்சம் என்னவென்றால், அதன் செயல்படுத்தல் C இல் இருக்கும் GPIO இயக்கியைப் போலவே கிட்டத்தட்ட வரிக்கு வரி ஒத்ததாக உள்ளது. ரஸ்டில் இயக்கிகளை எவ்வாறு உருவாக்குவது என்பதைக் கற்றுக்கொள்ள ஆர்வமுள்ள டெவலப்பர்களுக்கு, C குறியீடு மாற்றப்பட்டுள்ள ரஸ்ட் கட்டமைப்புகளைப் புரிந்துகொள்ள உதவும் வகையில் வரிக்கு வரி ஒப்பீடு கிடைக்கிறது.
  • ரஸ்டின் முக்கிய குறியீட்டுத் தளம் rustc_codegen_gcc ஐ ஏற்றுக்கொண்டது, இது gcc க்கான rustc பின்தளமாகும், இது libgccjit நூலகத்தைப் பயன்படுத்தி முன்கூட்டியே (AOT) தொகுப்பை செயல்படுத்துகிறது. போதுமான மேம்பாட்டுடன், பின்தளம் கர்னலில் பயன்படுத்தப்படும் ரஸ்ட் குறியீட்டை GCC ஐப் பயன்படுத்தி தொகுக்க உதவும்.
  • ARM, கூகிள் மற்றும் மைக்ரோசாப்ட் நிறுவனங்களைத் தவிர, கெர்னலில் ரஸ்ட் மொழியைப் பயன்படுத்துவதிலும் ஆர்வம் உள்ளது. Linux ரெட் ஹேட் கூறியது. நினைவூட்டலாக, கூகிள் ரஸ்ட் திட்டத்தை நேரடியாக ஆதரிக்கிறது. Linuxபைண்டர் இடைச்செயல்முறைத் தொடர்புப் பொறிமுறையின் புதிய செயலாக்கத்தை ரஸ்டில் உருவாக்கி வருகிறது, மேலும் பல்வேறு டிரைவர்களை ரஸ்டில் மீண்டும் எழுதுவதையும் பரிசீலித்து வருகிறது. மைக்ரோசாப்ட், ஹைப்பர்-வி-க்கான டிரைவர்களை ரஸ்டில் செயல்படுத்தத் தொடங்கியுள்ளது. ஏஆர்எம், ஏஆர்எம் செயலிகளை அடிப்படையாகக் கொண்ட அமைப்புகளுக்கான ரஸ்ட் ஆதரவை மேம்படுத்தும் பணியில் ஈடுபட்டுள்ளது. ஐபிஎம், பவர்பிசி அமைப்புகளுக்கான கெர்னலில் ரஸ்ட் ஆதரவைச் செயல்படுத்தியுள்ளது.

ஆதாரம்: opennet.ru

DDoS பாதுகாப்பு, VPS VDS சர்வர்கள் கொண்ட தளங்களுக்கு நம்பகமான ஹோஸ்டிங் வாங்கவும் 🔥 DDoS பாதுகாப்புடன் கூடிய நம்பகமான இணையதள ஹோஸ்டிங், VPS, VDS சர்வர்களை வாங்குங்கள் | ProHoster