د لینکس کرنل 5.14

د لینکس کرنل 5.14

د دوه میاشتو پراختیا وروسته، لینس توروالډز معرفي شوی دانه خوشې کول لینکس ایکسینمز. د خورا د پام وړ بدلونونو په مینځ کې: د نوي quotactl_fd() او memfd_secret () سیسټم زنګونه، د ایډ او خام ډرایورونو لرې کول، د C ګروپ لپاره نوی I/O لومړیتوب کنټرولر، د SCHED_CORE کاري مهالویش حالت، د BPF برنامه تایید شوي لوډرونو رامینځته کولو لپاره زیربنا.

نوې نسخه کې د 15883 پراختیا کونکو څخه 2002 فکسونه شامل دي، د پیچ ​​اندازه 69 MB ده (بدلون 12580 فایلونه اغیزمن کړي، د کوډ 861501 لینونه اضافه شوي، 321654 لینونه حذف شوي). په 47 کې د معرفي شوي ټولو بدلونونو شاوخوا 5.14٪ د وسیلې چلوونکو پورې اړه لري، نږدې 14٪ بدلونونه د هارډویر جوړښتونو لپاره ځانګړي کوډ تازه کولو پورې اړه لري، 13٪ د شبکې سټیک پورې اړه لري، 3٪ د فایل سیسټمونو پورې تړاو لري، او 3٪ د داخلي کرنل فرعي سیسټمونو پورې اړه لري.

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

  • د ډیسک فرعي سیسټم، ان پټ/آؤټ پټ او د فایل سیسټم:
    • د cgroup لپاره پلي شوي نوی I/O لومړیتوب کنټرولر - rq-qos، کوم چې کولی شي د غوښتنې پروسس کولو لومړیتوب کنټرول کړي ترڅو د هرې ډلې غړو لخوا رامینځته شوي وسایل بلاک کړي. د نوي لومړیتوب کنټرولر ملاتړ د Mq-Deadline I/O مهالویش کې اضافه شوی؛
    • په ext4 فایل سیسټم کې پلي شوي د ioctl نوې کمانډ EXT4_IOC_CHECKPOINT، کوم چې د لاګ او اړوند بفرونو څخه ډیسک ته ټولې پاتې لیږدونه مجبوروي، او همدارنګه هغه ساحه چې د لاګ په ذخیرې کې کارول کیږي بیا لیکي. دا بدلون د نوښت د یوې برخې په توګه چمتو شوی و چې د فایل سیسټمونو څخه د معلوماتو لیک مخه ونیسي؛
    • په Btrfs کې معرفي شو د فعالیت اصلاح: د fsync اجرا کولو په جریان کې د پراخو ځانګړتیاو غیر ضروري ننوتلو له مینځه وړلو سره، د پراخو ځانګړتیاو سره د سختو عملیاتو فعالیت تر 17٪ پورې لوړ شوی. برسیره پردې، کله چې د ټریم عملیات ترسره کول چې په اندازې اغیزه نه کوي، بشپړ ترکیب غیر فعال دی، کوم چې د عملیاتو وخت 12٪ کم کړی. یو ترتیب په sysfs کې اضافه شوی ترڅو د I/O بینډ ویت محدود کړي کله چې FS چک کوي. د ioctl زنګونه اضافه شوي ترڅو د وسیلې د بیا کولو او ړنګولو عملیات لغوه کړي؛
    • په XFS کې بیا کار شوی د بفر کیچ پلي کول ، کوم چې په بیچ حالت کې د حافظې مخونو تخصیص ته لیږدول کیږي. د کیچ موثریت ښه شوی؛
    • F2FS یوازې د لوستلو حالت کې د کار کولو اختیار اضافه کړ او د تصادفي لوستلو فعالیت ښه کولو لپاره د کمپریس شوي بلاک کیچنګ حالت (compress_cache) پلي کړ. د mmap() عملیاتو په کارولو سره حافظې ته نقشه شوي فایلونو کمپریس کولو لپاره ملاتړ پلي شوی. د ماسک په واسطه د فایل کمپریشن په انتخابي ډول غیر فعالولو لپاره، د نوي ماونټ اختیار nocompress وړاندیز شوی؛
    • په exFAT ډرایور کې کار ترسره شوی ترڅو د ځینې ډیجیټل کیمرونو ذخیره کولو سره مطابقت ښه کړي؛
    • اضافه شوي سیسټم کال quotactl_fd()، کوم چې تاسو ته اجازه درکوي کوټا اداره کړئ نه د ځانګړي وسیلې فایل له لارې ، مګر د فایل سیسټم پورې اړوند د فایل توضیح کونکي مشخص کولو سره چې کوټه پلي کیږي؛
    • د IDE انٹرفیس سره د بلاک وسیلو لپاره زاړه ډرایورونه د کرنل څخه لرې شوي؛ دوی د اوږدې مودې لپاره د لیباټا سب سیسټم لخوا ځای په ځای شوي. د زړو وسیلو لپاره ملاتړ په بشپړ ډول ساتل شوی ، بدلونونه یوازې د زړو ډرایورانو کارولو وړتیا پورې اړه لري ، کله چې د کوم ډرایو په کارولو سره د /dev/hd* په نوم یادیږي ، او نه /dev/sd*؛
    • "خام" ډرایور د کرنل څخه لرې شوی ، د /dev/raw انٹرفیس له لارې بلاک وسیلو ته غیر بفر لاسرسی چمتو کوي. دا فعالیت له اوږدې مودې راهیسې په غوښتنلیکونو کې د O_DIRECT بیرغ په کارولو سره پلي شوی؛
  • د حافظې او سیسټم خدمتونه:
    • د مهال ویش نوی حالت په کاري مهالویش کې پلي شوی SCHED_CORE، کوم چې تاسو ته اجازه درکوي کنټرول کړئ چې کومې پروسې په ورته CPU کور کې یوځای پرمخ وړل کیدی شي. هرې پروسې ته د کوکی پیژندونکی ټاکل کیدی شي چې د پروسو تر مینځ د باور ساحه ټاکي (د مثال په توګه ، د ورته کارونکي یا کانټینر پورې اړه لري). کله چې د کوډ اجرا کول تنظیم کړئ ، مهالویش کوونکی کولی شي ډاډ ترلاسه کړي چې د CPU کور یوازې د ورته مالک سره تړلو پروسو کې شریک شوی ، کوم چې د ورته SMT (هایپر تریډینګ) تار چلولو څخه د باور وړ او بې اعتباره کارونو مخه نیولو سره د ځینې سپیکٹر بریدونو مخنیوي لپاره کارول کیدی شي. ;
    • د cgroup میکانیزم لپاره، د وژنې عملیاتو لپاره ملاتړ پلي شوی، کوم چې تاسو ته اجازه درکوي چې د ګروپ سره تړلې ټولې پروسې په یو وخت کې ووژنئ (SIGKILL ولیږئ) د "1" په لیکلو سره مجازی فایل cgroup.kill؛
    • د سپلیټ لاکونو کشف کولو ته د ځواب ویلو پورې اړوند پراخه ظرفیتونه ("سپلایټ لاک") چې پیښیږي کله چې په حافظه کې غیر منظم ډیټا ته لاسرسی د دې حقیقت له امله رامینځته کیږي چې کله د اټومي لارښوونې پلي کول ، ډاټا د CPU کیچ لاینونو څخه تیریږي. دا ډول بلاک کول په فعالیت کې د پام وړ کمښت لامل کیږي ، نو دمخه دا ممکنه وه چې غوښتنلیک په زور سره لغوه کړئ چې د بلاک کولو لامل شوی. نوې خپرونه د کرنل کمانډ لاین پیرامیټر "split_lock_detect=ratelimit:N" اضافه کوي، کوم چې تاسو ته اجازه درکوي په هر ثانیه کې د تالاشۍ عملیاتو نرخ باندې د سیسټم پراخه حد تعریف کړئ، وروسته له دې چې هر هغه پروسه چې د سپلیټ لاک سرچینه شوه به د ختمولو پر ځای د 20 ms لپاره ودرول شي؛
    • د cgroup bandwidth کنټرولر CFS (CFS bandwidth کنټرولر)، کوم چې دا ټاکي چې هر cgroup ته څومره پروسیسر وخت تخصیص کیدی شي، د دې وړتیا لري چې د عمل د یوې ټاکلې مودې په واسطه محدود شوي محدودیتونه تعریف کړي، کوم چې د ځنډ حساس بارونو غوره تنظیم کولو ته اجازه ورکوي. د مثال په توګه، cpu.cfs_quota_us ته 50000 او cpu.cfs_period_us ته 100000 ټاکل به د پروسو یوې ډلې ته اجازه ورکړي چې په هر 100ms کې د CPU وخت 50ms ضایع کړي.
    • زیاته کړه د BPF برنامه لوډرونو رامینځته کولو لپاره لومړني زیربناوې ، کوم چې به د باور وړ ډیجیټل کیلي سره لاسلیک شوي یوازې د BPF برنامو ډاونلوډ کولو ته اجازه ورکړي؛
    • د FUTEX_LOCK_PI2 نوی عملیات اضافه کړل، کوم چې د وخت پای محاسبه کولو لپاره یو مونوټونیک ټایمر کاروي، کوم چې د سیسټم لخوا د خوب حالت کې مصرف شوي وخت په پام کې نیسي؛
    • د RISC-V جوړښت لپاره، د لوی حافظې پاڼې ملاتړ (شفاف لوی پاڼې) او د کارولو وړتیا KFENCE د حافظې سره کار کولو پرمهال د غلطیو پیژندلو لپاره؛
    • په madvise() سیسټم کال کې، کوم چې د پروسې د حافظې مدیریت د ښه کولو لپاره وسیله چمتو کوي، زیاته کړه MADV_POPULATE_READ او MADV_POPULATE_WRITE بیرغونه د لوستلو یا لیکلو عملیاتو لپاره نقشه شوي په ټولو حافظه پاڼو کې د "پاڼې غلطی" رامینځته کولو لپاره ، پرته لدې چې واقعیا لوستل یا لیکل (پریفالټ) ترسره کړي. د بیرغونو کارول د برنامه په اجرا کې د ځنډ کمولو لپاره ګټور کیدی شي ، د ټولو نه تخصیص شوي پا pagesو لپاره په یوځل کې د "پای غلطی" هینډلر فعال اجرا کولو څخه مننه ، پرته لدې چې دوی ته حقیقي لاسرسي ته انتظار وکړئ؛
    • د واحد ازموینې سیسټم کې کنیټ زیاته کړه د QEMU چاپیریال کې د ازموینو چلولو لپاره ملاتړ؛
    • نوي تعقیبونکي اضافه کړل: "osnoise"د مداخلې اداره کولو له امله رامینځته شوي د غوښتنلیک ځنډ تعقیبولو لپاره ، او "ټیمرلاټ" د ځنډ په اړه مفصل معلومات ښودلو لپاره کله چې د ټایمر سیګنال څخه ویښ کیږي؛
  • مجازی کول او امنیت:
    • زیاته کړه سیسټم زنګ memfd_secret()، کوم چې تاسو ته اجازه درکوي په جلا پته ځای کې د شخصي حافظې ساحه رامینځته کړئ ، یوازې د مالک پروسې ته څرګندیږي ، په نورو پروسو کې منعکس نه کیږي او د کرنل ته مستقیم لاسرسی نلري؛
    • د seccomp سیسټم کال فلټر کولو سیسټم کې، کله چې د کارونکي ځای ته د لاک هینډلرونه حرکت کوي، دا ممکنه ده چې د یو اټومي عملیات څخه کار واخلئ ترڅو د جلا شوي کار لپاره د فایل ډیسکریټر جوړ کړئ او د سیسټم کال پروسس کولو پر مهال بیرته راستانه کړئ. وړاندیز شوی عملیات حل کوي ستونزه د کارونکي ځای کې د هینډلر مداخلې سره کله چې سیګنال راشي؛
    • زیاته کړه نوی میکانیزم د کارن ID نوم ځای کې د سرچینو محدودیت اداره کول، کوم چې د "کارن نوم ځای" کې یو کارن ته د انفرادي محدودیت شمیرونکي پابندوي. بدلون د عامو سرچینو شمیرونکو په کارولو سره ستونزه حل کوي کله چې یو کارونکي په مختلف کانټینرونو کې پروسې پرمخ وړي؛
    • د ARM64 سیسټمونو لپاره د KVM هایپروایزر د میلمنو سیسټمونو کې د MTE (MemTag، د حافظې ټاګ کولو توسیع) توسیع کارولو وړتیا اضافه کړې، کوم چې تاسو ته اجازه درکوي چې د هرې حافظې تخصیص عملیات سره ټاګونه وتړئ او د پوائنټرونو سم کارولو چک کول تنظیم کړئ ترڅو د استحصال مخه ونیسي. هغه زیانونه چې دمخه د خلاص شوي حافظې بلاکونو ته د لاسرسي له امله رامینځته شوي ، د بفرونو ډیر جریان ، د پیل کولو دمخه لاسرسي او د اوسني شرایطو څخه بهر کارول؛
    • د ARM64 پلیټ فارم لخوا چمتو شوي د پوائنټر تصدیق اوس د کرنل او کارن ځای لپاره په جلا توګه تنظیم کیدی شي. ټیکنالوژي تاسو ته اجازه درکوي د ځانګړي ARM64 لارښوونې وکاروئ ترڅو د ډیجیټل لاسلیکونو په کارولو سره د راستنیدو پتې تصدیق کړئ چې پخپله د پوائنټر په غیر کارول شوي پورتنۍ بټونو کې زیرمه شوي؛
    • په کارن موډ لینکس کې زیاته کړه د PCI وسیلو لپاره د مجازی PCI بس سره د ډرایورانو کارولو ملاتړ چې د PCI-over-virtio ډرایور لخوا پلي کیږي؛
    • د x86 سیسټمونو لپاره، د virtio-iommu paravirtualized وسیلې لپاره اضافي ملاتړ، کوم چې تاسو ته اجازه درکوي د IOMMU غوښتنې لکه ATTACH، DETACH، MAP او UNMAP، پرته له دې چې د حافظې پاڼې جدولونه تقلید کړي د virtio ټرانسپورټ له لارې؛
    • د Intel CPUs لپاره، د سکایلاک کورنۍ څخه کافي لیک ته، د Intel TSX (د انتقالي همغږي کولو توسیع) کارول، کوم چې د غیر ضروري همغږي کولو عملیاتو په متحرک ډول له منځه وړلو سره د څو-تریډ شوي غوښتنلیکونو فعالیت ښه کولو لپاره وسایل چمتو کوي، د ډیفالټ لخوا غیر فعال شوي. توسیعونه د بریدونو د احتمال له امله غیر فعال شوي زومبیلوډ، د دریمې ډلې چینلونو له لارې د معلوماتو افشا کول چې د عملیاتو غیر متمرکز مداخلې لپاره د میکانیزم د عملیاتو په جریان کې پیښیږي (TAA, TSX اسینکرونوس ابورټ)؛
  • د شبکې فرعي سیسټم:
    • د MPTCP (MultiPath TCP) په اصلي برخه کې دوامدار ادغام، د TCP پروتوکول غزول د TCP اتصال تنظیم کولو لپاره د پیکټونو رسولو سره په ورته وخت کې د څو لارو په اوږدو کې د مختلف شبکې انٹرفیسونو له لارې چې مختلف IP پتې پورې تړاو لري. په نوې ګڼه کې زیاته کړه د IPv4 او IPv6 (ملټي پاټ هش پالیسي) لپاره ستاسو د خپل ټرافيکي هش کولو پالیسي ترتیبولو میکانیزم، د کارونکي ځای څخه دا ممکنه کوي چې معلومه کړي چې په پیکټونو کې کومې ساحې، په شمول د پوښښ شوي، د هش محاسبه کولو په وخت کې کارول کیږي چې د لارې انتخاب ټاکي. د کڅوړې لپاره؛
    • د ساکټ ملاتړ د مجازی ټرانسپورټ ورټیو ته اضافه شوی ساک_سوئ کیپټ (د ډیټاګرامونو منظم او معتبر لیږد)؛
    • د SO_REUSEPORT ساکټ میکانیزم ظرفیتونه پراخ شوي، کوم چې د اوریدلو څو ساکټونو ته اجازه ورکوي چې په یوځل کې یو بندر سره وصل شي ترڅو د SO_REUSEPORT له لارې تړل شوي ټولو ساکټونو کې په ورته وخت کې د راتلونکو غوښتنو ویشلو سره اړیکې ترلاسه کړي، کوم چې د څو-تریډ شوي سرور غوښتنلیک رامینځته کول ساده کوي. . په نوې نسخه کې زیاته کړه د ناکامۍ په صورت کې بل ساکټ ته د کنټرول لیږد لپاره وسیله کله چې د لومړني ټاکل شوي ساکټ لخوا غوښتنه پروسس کول (د خدماتو بیا پیل کولو پرمهال د انفرادي اړیکو له لاسه ورکولو ستونزه حل کوي)؛
  • تجهیزات:
    • په amdgpu چلوونکي کې پلي شوي د نوي AMD Radeon RX 6000 لړۍ GPUs لپاره ملاتړ ، چې کوډ نوم یې "بیج ګوبي" (Navi 24) او "ژیړ کارپ" دی ، په بیله بیا د Aldebaran GPU (gfx90a) او وان ګوګ APU لپاره ښه ملاتړ. د ډیری EDP پینلونو سره په ورته وخت کې د کار کولو وړتیا اضافه کړه. د APU Renoir لپاره، په ویډیو حافظه کې د کوډ شوي بفرونو سره د کار کولو ملاتړ (TMZ، د باور وړ حافظې زون) پلي شوی. د ګرم انپلګ ګرافیک کارتونو لپاره ملاتړ اضافه شوی. د Radeon RX 6000 (Navi 2x) GPUs او زړو AMD GPUs لپاره، د ASPM (فعال ریاست بریښنا مدیریت) د بریښنا سپمولو میکانیزم ملاتړ په ډیفالټ فعال شوی، کوم چې مخکې یوازې د Navi 1x، Vega او Polaris GPUs لپاره فعال شوی و؛
    • د AMD چپس لپاره، د شریک مجازی حافظې (SVM، شریک مجازی حافظې) لپاره ملاتړ د HMM (Heterogeneous حافظې مدیریت) فرعي سیسټم پراساس اضافه شوی، کوم چې د دوی د خپل حافظې مدیریت واحدونو (MMU، د حافظې مدیریت واحد) سره د وسایلو کارولو ته اجازه ورکوي. کوم چې کولی شي اصلي حافظې ته لاسرسی ومومي. د HMM کارولو په شمول، تاسو کولی شئ د GPU او CPU ترمنځ د ګډ پته ځای تنظیم کړئ، په کوم کې چې GPU کولی شي د پروسې اصلي حافظې ته لاسرسی ومومي؛
    • د لومړني ټیکنالوژۍ ملاتړ اضافه شوی AMD سمارټ شفټ، کوم چې د چپسیټ او AMD ګرافیک کارت سره لپټاپونو کې د CPU او GPU د بریښنا مصرف پیرامیټرې په متحرک ډول بدلوي ترڅو د لوبې کولو ، ویډیو ایډیټ کولو او 3D رینډینګ کولو پرمهال فعالیت ته وده ورکړي؛
    • د Intel ویډیو کارتونو لپاره i915 ډرایور کې شامل د Intel Alderlake P چپس لپاره ملاتړ؛
    • د Hyper-V مجازی ګرافیک اډاپټر لپاره drm/hyperv ډرایور اضافه شوی؛
    • زیاته کړه simpledrm ګرافیک ډرایور چې د تولید لپاره د UEFI فرم ویئر یا BIOS لخوا چمتو شوي EFI-GOP یا VESA چوکاټ بفر کاروي. د ډرایور اصلي هدف دا دی چې د بوټ په لومړیو مرحلو کې د ګرافیکي محصول وړتیاوې چمتو کړي، مخکې له دې چې بشپړ DRM ډرایور وکارول شي. ډرایور د تجهیزاتو لپاره د لنډمهاله حل په توګه هم کارول کیدی شي چې لاهم اصلي DRM چلونکي نلري؛
    • زیاته کړه ټول په یو کمپیوټر کې ملاتړ Raspberry Pi 400;
    • د ډیل لپټاپونو کې شامل د کیمرې او مایکروفون هارډویر سویچونو ملاتړ کولو لپاره د ډیل-wmi- محرمیت چلونکی اضافه شوی؛
    • د لینووو لپټاپونو لپاره زیاته کړه د sysfs /sys/class/firmware-attributes/ له لارې د BIOS پیرامیټونو بدلولو لپاره د WMI انٹرفیس؛
    • پراخ شوی د USB4 انٹرفیس سره د وسیلو لپاره ملاتړ؛
    • زیاته کړه د غږ کارتونو او کوډیکونو لپاره ملاتړ د املوجیک SM1 TOACODEC، Intel AlderLake-M، NXP i.MX8، NXP TFA1، TDF9897، Rockchip RK817، Qualcomm Quinary MI2 او Texas Instruments TAS2505. په HP او ASUS لپټاپونو کې د آډیو ملاتړ ښه شوی. زیاته کړه د ځنډ کمولو لپاره پیچونه مخکې له دې چې آډیو د USB انٹرفیس سره په وسیلو کې غږول پیل کړي.

سرچینه – opennet.ru

سرچینه: linux.org.ru