estamos- ன் லினக்ஸ் 6.10 இன் நிலையான பதிப்பு வெளியான சில நாட்களுக்குப் பிறகு, மிகவும் சுவாரஸ்யமான மாற்றங்களின் வரிசையை உள்ளடக்கிய பதிப்பு, அத்துடன் சாதன ஆதரவு, செயல்பாடுகள் மற்றும் பலவற்றின் அடிப்படையில் சிறந்த மேம்பாடுகள்.
இக்கட்டுரைக்கான காரணம் லினக்ஸின் அடுத்த எதிர்பார்க்கப்பட்ட பதிப்பான "லினக்ஸ் 6.11" பற்றிய குறிப்பு என்பதால், இந்த வெளியீட்டைப் பற்றி சரியான நேரத்தில் பேசுவோம், அதில் சில மாற்றங்கள் அறிவிக்கப்பட்டுள்ளன போதுமான நேரம், நான் அவர்களை மற்றொரு இடுகையில் உரையாற்ற விரும்புகிறேன்.
சரி, இப்போது உள்ள கட்டுரையின் புள்ளிக்கு செல்கிறோம் லினஸ் டொர்வால்ட்ஸ் வெளியிட்ட அறிவிப்பின் குறிப்பு லினக்ஸ் 6.11 கர்னலில் சேர்க்க அவர்களின் விருப்பம் பற்றி, சில பொறிமுறையை செயல்படுத்தும் இணைப்புகள் "sched_ext" (SCX).
இந்த பொறிமுறைஅல்லது லினக்ஸ் கர்னலில் CPU திட்டமிடுபவர்களை உருவாக்க eBPF ஐப் பயன்படுத்த வேண்டும். இது எவ்வாறு செயல்படும் என்பதற்கான சுருக்கம் இங்கே:
- eBPF மற்றும் CPU புரோகிராமர்கள்: eBPF ஐப் பயன்படுத்துவதன் மூலம், CPU திட்டமிடுபவர்கள் லினக்ஸ் கர்னலில் மாறும் வகையில் ஏற்றப்பட்டு செயல்படுத்தப்படும். ஜஸ்ட்-இன்-டைம் (JIT) தொகுப்பு eBPF பைட்கோடை செயல்படுத்துவதற்கான இயந்திர வழிமுறைகளாக மொழிபெயர்க்கிறது.
- SCHED_EXT வகுப்பு: இது ஒரு புதிய நிரலாக்க வகுப்பாகும், அதன் கர்னல் அழைப்பு முன்னுரிமை வகுப்புகளில் உள்ளது SCHED_IDLE மற்றும் SCHED_NORMAL. BPF இயக்கிகள் இணைக்கப்பட்டுள்ளன SCHED_EXT சாதாரண திட்டமிடலுடன் ஏற்கனவே இணைக்கப்பட்டுள்ள பணிகளை பாதிக்காமல், நிகழ்நேரச் செயலாக்கத்தை விட குறைந்த முன்னுரிமை கொண்ட பணிகளைக் கையாள முடியும் SCHED_NORMAL.
- அறுவை சிகிச்சை: BPF இயக்கிகள் CPU இல் செயல்படுத்தப்படுவதற்கு காத்திருக்கும் பணிகளின் வரிசைகளை ஆய்வு செய்து, CPU கோர் விடுவிக்கப்படும்போது எந்த பணியை ஒதுக்க வேண்டும் என்பதைத் தேர்ந்தெடுக்கவும். செயலில் BPF இயக்கிகள் இல்லை என்றால் SCHED_EXT, அட்டவணையைப் பயன்படுத்தி பணிகள் கையாளப்படுகின்றன SCHED_NORMAL.
- நன்மைகள்: பொறிமுறை sched_ext பல்வேறு நிரலாக்க நுட்பங்கள் மற்றும் உத்திகளை ஒரு மாறும் வழியில் பரிசோதனை செய்ய உதவுகிறது. புரோகிராமர்களின் செயல்பாட்டு முன்மாதிரிகளை விரைவாக உருவாக்கவும், உற்பத்திச் சூழல்களில் பறக்கும்போது அவற்றை மாற்றவும் இது உங்களை அனுமதிக்கிறது. எடுத்துக்காட்டாக, ஒரு பயன்பாட்டின் குறிப்பிட்ட குணாதிசயங்களுக்கு ஏற்றவாறு அதை டியூன் செய்யலாம் மற்றும் கணினி நிலை மற்றும் பிற காரணிகளின் அடிப்படையில் திட்டமிடல் உத்தியை மாற்றலாம்.
அதைக் குறிப்பிடுவது மதிப்பு 2022 இல் கர்னல் டெவலப்பர்களால் "sched_ext" முதலில் பரிசீலிக்க முன்மொழியப்பட்டது, அதைத் தொடர்ந்து ஆறு பேட்ச் திருத்தங்கள் வெளியிடப்பட்டன. பிரதான கர்னலில் ஆதரிக்கப்படவில்லை என்றாலும், Ubuntu, Arch Linux, Fedora மற்றும் NixOS போன்ற பல விநியோகங்கள் கூடுதல் தொகுப்புகள் மூலம் "sched_ext" இன் நிறுவலை வழங்குகின்றன.. "இன் கூறுகளை உள்ளடக்கியதாக நியமனம் பரிசீலித்து வருகிறதுsched_ext» Ubuntu 24.10 இல், மற்றும் Steam Deckக்கான அதன் ஒருங்கிணைப்பில் வால்வு செயல்படுகிறது. மெட்டாவில், புரோகிராமர் அடிப்படையில் «sched_ext» ஏற்கனவே உற்பத்தி உள்கட்டமைப்பில் பயன்படுத்தப்படுகிறது.
கூடுதலாக, தற்போது, ஏறக்குறைய ஒரு டஜன் புரோகிராமர்களை அடிப்படையாகக் கொண்டது என்று குறிப்பிடப்பட்டுள்ளது "sched_ext", ஒவ்வொன்றும் பணி திட்டமிடல் தர்க்கத்துடன் பயனர் இடத்தில் வரையறுக்கப்பட்டு, BPF நிரல்களைப் பயன்படுத்தி கர்னலில் ஏற்றப்படும்.
- scx_layered: ஒரு கலப்பின திட்டமிடல், பணிகளை அடுக்குகளாகப் பிரிக்கிறது, ஒவ்வொன்றும் அதன் சொந்த திட்டமிடல் உத்தியைக் கொண்டுள்ளது. உத்தரவாதமான CPU ஆதாரங்களுடன் குறிப்பிட்ட லேயர்களுக்கு சில பணிகளை ஒதுக்க அல்லது தனிப்பட்ட பயன்பாடுகளின் முன்னுரிமையை அதிகரிக்க உங்களை அனுமதிக்கிறது. மெட்டாவால் உருவாக்கப்பட்டது, அதன் பயனர்வெளி தர்க்கம் ரஸ்டில் எழுதப்பட்டுள்ளது.
- scx_rustland: CPU-தீவிர செயல்களை விட ஊடாடும் பணிகளுக்கு முன்னுரிமை அளிக்க உகந்ததாக உள்ளது. எடுத்துக்காட்டாக, நிலையான EEVDF திட்டமிடலுடன் ஒப்பிடும்போது ஒரே நேரத்தில் கர்னல் தொகுப்பின் போது Terraria கேமில் FPS ஐ மேம்படுத்துகிறது. ரஸ்டில் தர்க்கத்துடன், ஒரு நியமன ஊழியரால் உருவாக்கப்பட்டது.
- scx_lavd: LAVD (லேட்டன்சி-கிரிட்டிகாலிட்டி அவேர் விர்ச்சுவல் டெட்லைன்) அல்காரிதத்தைச் செயல்படுத்துகிறது, தாமதங்கள் மற்றும் செயல்முறை முன்னேற்றத்தைக் குறைப்பதன் பொருத்தத்தைக் கருத்தில் கொண்டு கணினி விளையாட்டுகள் மற்றும் ஊடாடும் பணிகளில் தாமதத்தைக் குறைக்கிறது. ரஸ்டில் தர்க்கத்துடன், இகாலியா மற்றும் வால்வ் ஆகியோரால் உருவாக்கப்பட்டது.
- scx_rusty, scx_rlfifo, scx_mitosis: சுமையின் அடிப்படையில் பணிக் குழுக்களை சமநிலைப்படுத்தும் திட்டமிடுபவர்கள், ஒரு எளிய FIFO திட்டமிடலைச் செயல்படுத்துகின்றனர் மற்றும் பணிக் குழுக்களை CPU கோர்களுடன் பிணைப்பார்கள். அனைத்தும் ரஸ்ட் கூறுகளுடன்.
- scx_central, scx_flatcg, scx_nest, scx_pair, scx_qmap, scx_simple, scx_userland: C பாகங்கள் கொண்ட புரோகிராமர்களின் எடுத்துக்காட்டுகள், “sched_ext” இன் பல்வேறு திறன்களை நிரூபிக்கிறது.
இறுதியாக, BPF நிரல்களைப் பயன்படுத்தி பணி திட்டமிடல் முடிவுகளில் செல்வாக்கு செலுத்த, கூகிள் தனது சொந்த கட்டமைப்பான ghOSt ஐப் பயன்படுத்தி பரிசோதனை செய்து வருகிறது, மேலும் ghOSt ஐ "sched_ext" க்கு மாற்றத் தொடங்கியுள்ளது. கூடுதலாக, Google ChromeOS க்காக “sched_ext” போர்ட்டை உருவாக்குகிறது.
மூல: https://lkml.org