Hạt nhân
Sau hai tháng phát triển, Linus Torvalds tiết lộ bản phát hành hạt nhân Linux mới phiên bản 5.10, phiên bản đến với trạng thái của một chi nhánh có thời gian hỗ trợ dài, có các bản cập nhật sẽ được xuất bản trong ít nhất hai năm.
Những thay đổi đáng chú ý bao gồm phiên bản mới này bao gồm khả năng tương thích với cơ chế bảo vệ MemTag đối với hệ thống ARM64, tùy chọn gắn "nosymfollow", tối ưu hóa Ext4 đáng kể, Sửa lỗi XFS 2038, lệnh gọi hệ thống process_madvise mới, hỗ trợ AMD SEV được cải thiện thông qua mã hóa thanh ghi CPU, khả năng tạm dừng các chương trình BPF.
Phiên bản mới đã nhận được 17470 bản sửa lỗi từ 2062 nhà phát triển, Kích thước bản vá: 64MB (thay đổi ảnh hưởng đến 15101 tệp, thêm 891932 dòng mã, xóa 619716 dòng). Khoảng 42% của tất cả các thay đổi được giới thiệu trong 5.10 liên quan đến trình điều khiển thiết bị, khoảng 16% thay đổi liên quan đến cập nhật mã cụ thể cho kiến trúc phần cứng, 13% liên quan đến ngăn xếp mạng, 3% liên quan đến hệ thống tệp và 3% liên quan đến hệ thống con nhân nội bộ.
Tin tức chính trong Linux 5.10
Trong số những thay đổi chính xảy ra, chúng ta có thể thấy rằng đối với ext4, chế độ xác nhận nhanh đã được thêm vào (fast_commit), mà giảm đáng kể sự chậm trễ trong nhiều hoạt động tệp do tốc độ chuyển siêu dữ liệu vào đĩa nhanh hơn khi thực hiện lệnh gọi fsync (). Trong các trường hợp bình thường, chạy fsync () sẽ đồng bộ hóa một bộ siêu dữ liệu dự phòng. Trong chế độ fast_commit, chỉ siêu dữ liệu cần thiết để khôi phục hệ thống tệp trong trường hợp có sự cố được chuyển đến sổ đăng ký, tăng tốc các lệnh gọi tới fsync () và cải thiện hiệu suất của các hoạt động chủ động thao tác siêu dữ liệu.
Trong khi cho Btrfs bao gồm các tối ưu hóa hiệu suất quan trọng liên quan đến hoạt động fsync (). Việc giảm tranh chấp log mutex dẫn đến hiệu suất tăng 4% và độ trễ giảm 14% khi chạy điểm chuẩn dbench với 32 máy khách. Loại bỏ các cam kết bổ sung cho các liên kết và thay đổi tên đã tăng băng thông lên 6% và giảm độ trễ 30%. Hạn chế fsync chỉ chờ khi viết lại đã tăng hiệu suất lên 10-40%.
Bên cạnh đó, Việc triển khai Btrfs của I / O trực tiếp (direct io) đã được chuyển sang khuôn khổ iomap.
XFS thêm các thay đổi siêu dữ liệu inode để giải quyết các vấn đề tràn kiểu dữ liệu 32-bit time_t vào năm 2038. Đã thêm các thay đổi tương tự, chuyển phần tràn bộ đếm thời gian sang năm 2468, vào mã để tính thời gian hạn ngạch đĩa. Định dạng XFS V4 không được dùng nữa, người dùng nên cập nhật FS thành định dạng V5, nhưng có quá đủ thời gian để cập nhật vì hỗ trợ V4 sẽ vẫn còn cho đến năm 2030. XFS cũng đã thay đổi kích thước của btree đầu vào inode, cho phép dự phòng nhiều hơn kiểm tra và thời gian gắn kết nhanh hơn.
Đối với hệ thống con FUSE đã triển khai hỗ trợ hoạt động DAX để truy cập trực tiếp vào hệ thống tệp, bỏ qua bộ đệm trang mà không có thiết bị khóa cấp ứng dụng được sử dụng để tránh bộ đệm kép xâm phạm tổ chức truy cập chung vào hệ thống khách, thư mục và tệp. Virtiofs cũng hỗ trợ thêm tính năng gắn các phân vùng riêng biệt với các điểm gắn kết khác nhau trên hệ thống máy chủ.
Hệ thống tập tin F2FS thêm chế độ thu gom rác mới ATGC (Bộ sưu tập rác theo ngưỡng tuổi), cải tiến hỗ trợ cho các thiết bị NVMe được phân vùng và giải nén dữ liệu nén nhanh hơn.
Trong F2FS và Ext4, cách làm việc với tên tệp đã được thiết kế lại mà không tính đến các chữ viết hoa; Nó đã được quyết định để thống nhất việc triển khai các tên tệp không phân biệt chữ hoa chữ thường bằng cách chuyển mã liên quan đến một thư viện chung.
Một thay đổi quan trọng khác là giao diện I / O không đồng bộ io_uring bổ sung khả năng tạo các vòng bị hạn chế có thể được chia sẻ một cách an toàn bằng một quy trình không đáng tin cậy. Tính năng này cho phép ứng dụng cơ sở chỉ giới hạn quyền truy cập có chọn lọc vào các bộ mô tả của nó các tệp riêng lẻ để sử dụng trong các ứng dụng của bên thứ ba thông qua io_uring, cộng với cờ PIDFD_NONBLOCK đã được thêm vào lệnh gọi hệ thống pidfd_open () để tạo bộ mô tả tệp không khóa (tương tự như O_NONBLOCK cho pidfd).