Linux 6.5 內核新增了一個非常令人興奮的功能:初始基礎架構已實現基於範圍的資源管理。

英特爾的 Peter Zijlstra 一直致力於開發這種基於範圍的資源管理代碼,初始基礎架構已為 Linux 6.5 做好準備。開發人員現在將能夠利用此功能,並在即將發布的版本中將其用於各個領域。

內核基於範圍的資源管理基於 Linux 內核的新 __cleanup() 宏,該宏包含 GCC 和 LLVM Clang“cleanup”屬性。編譯器“cleanup”屬性允許定義當變量超出範圍時要調用的函數,並且編譯器將確保正確釋放內存以避免內存洩漏。 Zijlstra 將這種支持作為其內核鎖和指針保護代碼的一部分。

此拉取請求 今天在美國獨立日合併添加了基於範圍的資源管理基礎設施。但它留給未來的合併窗口(或者嘗試在本週仍然擠入 Linux 6.5,儘管不太可能)來實際轉換現有代碼以利用這個 __cleanup() 基礎設施。

Categories: IT Info