د لینکس 5.1 کرنل خوشې کول

د دوه میاشتو پراختیا وروسته، لینس توروالډز معرفي شوی دانه خوشې کول لینکس ایکسینمز. د خورا د پام وړ بدلونونو په مینځ کې: د غیر متمرکز I/O io_uring لپاره نوی انٹرفیس ، د RAM په توګه د NVDIMM کارولو وړتیا ، په نوویو کې د شریک مجازی حافظې لپاره ملاتړ ، د fanotify له لارې د خورا لوی فایل سیسټمونو د توزیع وړ نظارت لپاره ملاتړ ، د Zstd کمپریشن تنظیم کولو وړتیا په Btrfs کې کچه، یو نوی cpuidle TEO هینډلر، د 2038 ستونزې حل کولو لپاره د سیسټم کالونو پلي کول، پرته له initramfs، SafeSetID LSM ماډل، د ګډ ژوندی پیچونو لپاره مالتړ د وسیلې نقشه کونکي وسیلو څخه د بوټ کولو وړتیا.

اصلي نوښتونه:

  • د ډیسک فرعي سیسټم، I/O او د فایل سیسټمونه
    • د غیر متناسب I/O لپاره نوی انٹرفیس پلي کړی - io_uring، کوم چې د I/O رای ورکولو لپاره د دې ملاتړ او د بفرینګ سره یا پرته د کار کولو وړتیا لپاره د پام وړ دی. راځئ چې یادونه وکړو چې مخکې وړاندیز شوی غیر متناسب I/O میکانیزم "aio" د بفر شوي I/O ملاتړ نه کوي، یوازې په O_DIRECT حالت کې کار کولی شي (پرته له بفر کولو او کیچ څخه تیرولو)، د میټاډاټا شتون ته انتظار کولو له امله د تالاشۍ سره ستونزې درلودې، او په حافظه کې د معلوماتو کاپي کولو له امله د لوی سر لګښتونه ښودل شوي.

      د API دننه
      io_uring پراختیا کونکو هڅه وکړه چې د زاړه aio انٹرفیس نیمګړتیاوې لرې کړي. لخوا تولید io_uring ډیر نږدې دی SPDK او د لیبایو څخه د پام وړ مخکې دی کله چې د رایې ورکولو فعالولو سره کار کوي. یو کتابتون د io_uring کارولو لپاره چمتو شوی چې په پای کې غوښتنلیکونه د کاروونکي ځای کې روان دي ازادول، کوم چې د کرنل انٹرفیس کې د لوړې کچې چوکاټ چمتو کوي؛

    • په FS fanotify کې د پیښې تعقیب میکانیزم () زیاته کړه د سوپر بلاک او جوړښت بدلون حالت تعقیبولو لپاره ملاتړ dirent (د لارښودونو رامینځته کولو ، حذف کولو او حرکت کولو پیښې). وړاندې شوي ب featuresې د توزیع کولو ستونزې حل کولو کې مرسته کوي کوم چې رامینځته کیږي کله چې رامینځته کیږي د inotify میکانیزم په کارولو سره په خورا لوی فایل سیسټمونو کې د تکراري بدلون تعقیب رامینځته کوي (مختلف بدلونونه دمخه یوازې د inotify له لارې تعقیب کیدی شي ، مګر
      د لوی نیست شوي لارښودونو د تکراري تعقیب په شرایطو کې فعالیت ډیر څه پریښودل چې مطلوب وي). اوس دا ډول څارنه په مؤثره توګه د fanotify له لارې ترسره کیدی شي؛

    • د Btrfs فایل سیسټم کې زیاته کړه د zstd الګوریتم لپاره د کمپریشن کچې دودیز کولو وړتیا، کوم چې د ګړندۍ مګر غیر اغیزمن lz4 او ورو مګر ښه کمپریشن xz ترمنځ د غوره جوړجاړي په توګه ګڼل کیدی شي. د دې سره ورته والی سره چې څنګه مخکې د zlib کارولو پرمهال د کمپریشن کچه تنظیم کول ممکن وو ، د "-o compress=zstd:level" mount اختیار لپاره ملاتړ د zstd لپاره اضافه شوی. د ازموینې په جریان کې ، لږترلږه لومړۍ کچه د 2.658 MB ​​/ s د کمپریشن سرعت سره 438.47 ځله د ډیټا کمپریشن چمتو کړی ، د 910.51 MB / s د کمپریشن سرعت او د 780 MB حافظې مصرف ، او اعظمي کچه 15 3.126 ځله چمتو کړې ، مګر د کمپریشن سره سرعت 37.30 MB/s. د بسته بندۍ 878.84 MB/s او د حافظې مصرف 2547 MB؛
    • زیاته کړه د فایل سیسټم څخه د بوټ کولو وړتیا د وسیلې نقشه کونکي آلې کې موقعیت لري ، پرته له initramfs کارولو. د اوسني کرنل ریلیز سره پیل کول، د وسیلې نقشه کونکي وسایل په مستقیم ډول د بوټ پروسې په جریان کې کارول کیدی شي، د بیلګې په توګه، د روټ فایل سیسټم سره د برخې په توګه. ویش د بوټ پیرامیټر "dm-mod.create" په کارولو سره تنظیم شوی. د وسیلې نقشه کونکي ماډلونه چې د بارولو لپاره اجازه ورکړل شوي عبارت دي له: "کریپټ" ، "ځنډ" ، "لینیر" ، "سنیپ شاټ اصل" او "حقیقت"؛
    • د F2FS_NOCOW_FL بیرغ د F2FS فایل سیسټم کې اضافه شوی چې د فلش ډرایو په لور متمرکز دی، کوم چې تاسو ته اجازه درکوي چې د ورکړل شوي فایل لپاره د کاپي پر لیکلو حالت غیر فعال کړئ؛
    • د فایل سیسټم د کرنل څخه لرې شوی Exofs، کوم چې د ext2 یو ډول دی ، د OSD (د آبجیکٹ پراساس ذخیره کولو وسیله) د آبجیکٹ ذخیره کولو سره کار کولو لپاره تطبیق شوی. د داسې شیانو ذخیره کولو وسیلو لپاره د SCSI پروتوکول ملاتړ هم لرې شوی؛
  • مجازی کول او امنیت
    • PR_SPEC_DISABLE_NOEXEC اختیار prctl() ته اضافه شوی ترڅو د ټاکل شوي پروسې لپاره د لارښوونو اټکلي اجرا کنټرول کړي. یو نوی اختیار تاسو ته اجازه درکوي په انتخابي ډول د پروسو لپاره د قیاس اجرا کول غیر فعال کړئ چې ممکن د سپیکٹر برید لخوا برید شي. لاک تر هغه وخته پورې دوام کوي چې اجرایوي () ته لومړی زنګ ووهي.
    • د LSM ماډل تطبیق شوی SafeSetID, کوم چې د سیسټم خدماتو ته اجازه ورکوي چې کاروونکو ته په خوندي ډول اداره کړي پرته له دې چې د امتیازاتو زیاتولو (CAP_SETUID) او د روټ امتیازاتو ترلاسه کولو پرته. امتیازات د اعتبار وړ بندیزونو د سپین لیست پراساس په Securityfs کې د مقرراتو په ټاکلو سره ټاکل شوي (د "UID1:UID2" په بڼه)؛
    • د امنیت ماډلونو (LSMs) د سټیک پراساس بار کولو لپاره اړین د ټیټ کچې بدلونونه اضافه شوي. د "lsm" کرنل بوټ اختیار معرفي کړ ترڅو کنټرول کړي چې کوم ماډلونه بار شوي او په کوم ترتیب کې؛
    • د دوتنې نوم ځایونو لپاره ملاتړ د پلټنې فرعي سیسټم ته اضافه شوی؛
    • پراخ شوی د GCC پلگ ان structleak وړتیاوې، کوم چې تاسو ته اجازه درکوي د حافظې مینځپانګې احتمالي لیک مخه ونیسي. د هر ډول تغیراتو پیل چې په کوډ کې کارول کیږي د سټیک ته د حوالې لاسرسي له لارې چمتو کیږي؛
  • د شبکې فرعي سیسټم
    • د ساکټونو لپاره پلي شوي نوی اختیار "SO_BINDTOIFINDEX" ته ورته
      "SO_BINDTODEVICE"، مګر د انٹرفیس نوم پر ځای د شبکې انٹرفیس شاخص شمیره د دلیل په توګه اخیستل؛

    • د mac80211 سټیک یو وسیلې ته د ډیری BSSIDs (MAC پتې) ورکولو وړتیا اضافه کړې. د وائی فای فعالیت ښه کولو لپاره د یوې پروژې یوې برخې په توګه ، mac80211 سټیک د هوایی وخت محاسبه او د ډیری سټیشنونو ترمینځ د هوایی وخت توزیع کولو وړتیا اضافه کړې (کله چې د لاسرسي نقطې حالت کې کار کوي ، د بې سیم سټیشنونو ورو کولو ته د لیږد لږ وخت تخصیص کوي ، د دې پرځای چې د ټولو ترمینځ مساوي وخت توزیع کړي. سټیشنونه؛
    • اضافه شوي میکانیزم "devlink روغتیا"، کوم چې خبرتیاوې وړاندې کوي کله چې د شبکې انٹرفیس سره ستونزې رامنځته شي؛
  • د حافظې او سیسټم خدمتونه
    • پلي شوي د خوندي سیګنال تحویل چې د PID بیا کارولو ته اجازه ورکوي. د مثال په توګه، کله چې مخکې د وژنې غږ کول، یو حالت رامینځته کیدی شي چیرې چې د سیګنال لیږلو سمدستي وروسته، هدف PID د پروسې پای ته رسیدو له امله خوشې کیدی شي او د بلې پروسې لخوا اشغال شوی وي، او سیګنال به بل پروسې ته انتقال شي. د دې ډول شرایطو له مینځه وړو لپاره ، یو نوی سیسټم کال pidfd_send_signal اضافه شوی ، کوم چې د /proc/pid څخه د فایل توضیح کونکي کاروي ترڅو د باثباته پروسې پابند ډاډ ترلاسه کړي. حتی که PID د سیسټم کال پروسس کولو په جریان کې بیا کارول کیږي، د فایل ډیسکریپټر به بدل نشي او پروسې ته د سیګنال لیږلو لپاره په خوندي ډول کارول کیدی شي؛
    • زیاته کړه د دایمي حافظې وسیلو کارولو وړتیا (د مثال په توګه دوامداره حافظه NVDIMM) د RAM په توګه. تر دې دمه ، کرنل د ذخیره کولو وسیلو په توګه ورته وسیلو ملاتړ کاوه ، مګر اوس دوی د اضافي رام په توګه هم کارول کیدی شي. دا فیچر د هغو کاروونکو د هیلو په ځواب کې پلي کیږي چې غواړي د فعالیت ځنډ سره مخ شي او غواړي د اصلي لینکس کرنل حافظې مدیریت API وکاروي پرځای د اوسني کارونکي ځای ځای حافظې تخصیص سیسټمونو کارولو پرځای چې د ډیکس لپاره د mmap په سر کې روان دي. دوتنه
    • یو نوی CPU غیر فعال هینډلر اضافه شوی (cpuidle، پریکړه کوي کله چې CPU د بریښنا سپمولو ژورو حالتونو کې واچول شي؛ څومره چې ژور موډ وي ، هومره سپمونه خورا لوی وي ، مګر دا هم د حالت څخه وتلو ته ډیر وخت نیسي) - TEO (د ټیمر پیښو اورینټډ والي ). تر اوسه پورې، دوه د cpuidle سمبالونکي وړاندیز شوي - "مینو" او "زینه"، په هوریسټیک کې توپیر لري. د "مینو" هینډلر د هوریستیک پریکړو کولو کې ستونزې پیژندلي ، د دې له مینځه وړو لپاره چې د نوي هینډلر چمتو کولو پریکړه شوې. TEO د "مینو" هینډلر لپاره د بدیل په توګه موقعیت لري، د لوړ فعالیت لپاره اجازه ورکوي پداسې حال کې چې د بریښنا مصرف ورته کچه ساتي.
      تاسو کولی شئ د بوټ پیرامیټر "cpuidle.governor=teo" په کارولو سره نوی هینډلر فعال کړئ؛

    • د له منځه وړلو لپاره د کار د یوې برخې په توګه د 2038 کال ستونزې، د 32-bit time_t ډول د ډیریدو له امله رامینځته شوی ، د سیسټم تلیفونونه پکې شامل دي چې د 32-bit آرکیټیکچر لپاره د 64-bit وخت کاونټر وړاندیز کوي. د پایلې په توګه، د 64-bit time_t جوړښت اوس په ټولو جوړښتونو کې کارول کیدی شي. ورته بدلونونه د اختیارونو لپاره د شبکې فرعي سیسټم کې هم پلي شوي وخت ټیم د شبکې ساکټ؛
    • د کور لپاره د ګرم پیچ کولو سیسټم کې (ژوندۍ پیچ کول) زیاته کړه د "اتومیک ځای په ځای کولو" خصوصیت په اټومي ډول په یو واحد فعالیت کې د بدلونونو لړۍ پلي کولو لپاره. دا خصوصیت تاسو ته اجازه درکوي لنډیز پیچونه توزیع کړئ چې په یوځل کې ډیری بدلونونه پوښي، د مرحلې په واسطه د ژوندی پیچونو غوښتنلیک پروسې پرځای په سخت تعریف شوي ترتیب کې، کوم چې ساتل خورا ستونزمن دي. پداسې حال کې چې پخوا هر راتلونکی بدلون باید د وروستي بدلون وروسته د فعالیت حالت پراساس وي، اوس دا ممکنه ده چې په یو وخت کې په یو ابتدايي حالت پورې تړلي څو بدلونونه تبلیغ کړي (د بیلګې په توګه، ساتونکي کولی شي د بیس د کرنل په پرتله یو واحد پیچل وساتي. د پیچونو سلسله چې په یو بل پورې اړه لري)
    • اعلان شو د a.out د اجرا وړ فایل فارمیټ لپاره تخریب شوی ملاتړ او
      حذف شوی د a.out بڼه کې د اصلي فایلونو تولید لپاره کوډ، کوم چې په پریښودل شوي حالت کې دی. د a.out فارمیټ د اوږدې مودې لپاره د لینکس سیسټمونو کې نه دی کارول شوی ، او د a.out فایلونو نسل له اوږدې مودې راهیسې د ډیفالټ لینکس ترتیبونو کې د عصري وسیلو لخوا ملاتړ شوی نه و. سربیره پردې، د a.out فایلونو لپاره لوډر په بشپړ ډول د کارونکي ځای کې پلي کیدی شي؛

    • د نه کارول شوي کوډ پیژندلو او لرې کولو وړتیا د BPF برنامې تصدیق میکانیزم کې اضافه شوې. کرنل کې د BPF فرعي سیسټم لپاره د سپن لاک ملاتړ سره پیچونه هم شامل دي، د BPF پروګرامونو موازي اجرا کولو اداره کولو لپاره اضافي وړتیاوې چمتو کوي؛
  • تجهیزات
    • په Nouveau چلوونکی زیاته کړه د متفاوت حافظې مدیریت لپاره ملاتړ ، CPU او GPU ته اجازه ورکوي چې ګډ همغږي شوي حافظې ساحو ته لاسرسی ومومي. د شریک مجازی حافظې سیسټم (SVM، شریکه مجازی حافظه) د HMM (Heterogeneous حافظې مدیریت) فرعي سیسټم پراساس پلي کیږي ، کوم چې د دوی د خپل حافظې مدیریت واحدونو (MMU ، د حافظې مدیریت واحد) سره د وسیلو کارولو ته اجازه ورکوي ، کوم چې لاسرسی کولی شي. اصلي حافظه په ځانګړې توګه، د HMM په کارولو سره، تاسو کولی شئ د GPU او CPU ترمنځ د ګډ پته ځای تنظیم کړئ، په کوم کې چې GPU کولی شي د پروسې اصلي حافظې ته لاسرسی ومومي. د SVM ملاتړ اوس مهال یوازې د Pascal کورنۍ GPUs لپاره فعال شوی، که څه هم د Volta او Turing GPUs لپاره هم ملاتړ چمتو شوی. سربیره پردې، په نوویو کې زیاته کړه نوی ioctl د GPU حافظې ته د پروسې حافظې ساحو مهاجرت کنټرولولو لپاره؛
    • د GPU سکیلیک او وروسته (gen9+) لپاره د Intel DRM ډرایور کې شامل دي په ډیفالټ ډول ، د فاسټ بوټ حالت د بوټ پرمهال غیر ضروري حالت بدلونونه له مینځه وړي. زیاته کړه новые د کوفیلیک او آیس لیک مایکرو آرکیټیکچرونو پراساس د وسیلې پیژندونکي. د کوفیلیک چپس لپاره زیاته کړه د GVT ملاتړ (د GPU مجازی کول). د مجازی GPUs لپاره پلي شوي د VFIO EDID ملاتړ. د LCD تختو لپاره MIPI/DSI زیاته کړه د ACPI/PMIC عناصرو لپاره ملاتړ. پلي شوي نوي تلویزیون حالتونه 1080p30/50/60 تلویزیون؛
    • د amdgpu ډرایور ته د Vega10/20 BACO GPU لپاره ملاتړ اضافه شوی. د ویګا 10/20 بریښنا مدیریت او ویګا 10 کولر کنټرول میزونه پلي شوي. د پیکاسو GPUs لپاره د PCI وسیله پیژندونکي نوي اضافه شوي. زیاته کړه د مهالویش وړ انحصارونو اداره کولو لپاره انٹرفیس ترڅو د ځنډیدو مخه ونیسي؛
    • زیاته کړه د سکرین سرعت کونکي لپاره DRM/KMS ډرایور ARM کومیدا (مالي D71);
    • د Toppoly TPG110، Sitronix ST7701، PDA 91-00156-A0، LeMaker BL035-RGB-002 3.5 او Kingdisplay kd097d04 سکرین پینلونو لپاره ملاتړ اضافه شوی؛
    • د Rockchip RK3328، Cirrus Logic CS4341 او CS35L36، MediaTek MT6358، Qualcomm WCD9335 او Ingenic JZ4725B آډیو کوډیکس، او همدارنګه د Mediatek MT8183 آډیو پلیټ فارم لپاره ملاتړ اضافه شوی؛
    • د NAND کنټرولرانو فلش STMicroelectronics FMC2، املوجیک میسن لپاره ملاتړ اضافه شوی؛
    • د حبانا AI هارډویر سیسټمونو لپاره د سرعت ملاتړ اضافه شوی؛
    • د NXP ENETC ګیګابایټ ایترنیټ کنټرولرانو او میډیا ټیک MT7603E (PCIe) او MT76x8 بې سیم انٹرفیسونو لپاره ملاتړ اضافه شوی.

په ورته وخت کې، د لاتینې امریکا وړیا سافټویر بنسټ جوړ شوی
غوراوي په بشپړه توګه وړیا کرنل 5.1 - لینکس-لیبر 5.1-gnu، د فرم ویئر او ډرایور عناصرو څخه پاک شوي چې غیر وړیا اجزاو یا کوډ برخې لري ، د دې ساحه د تولید کونکي لخوا محدوده ده. په نوي ریلیز کې، د بلب بار کول په mt7603 او ګویا ډرایورونو کې غیر فعال دي. په ډرایورانو او فرعي سیسټمونو کې د بلب پاکولو کوډ تازه شوی wilc1000, iwlwifi, soc-acpi-intel, brcmfmac, mwifiex, btmrvl, btmtk او touchscreen_dmi. په lantiq xrx200 فرم ویئر لوډر کې د بلب پاکول د کرنل څخه د دې لرې کولو له امله ودرول شوي.

سرچینه: opennet.ru

Add a comment