Trong một bài viết kỹ thuật dài, Ikey doherty (được biết đến với các dự án hàng đầu như Solus và đóng góp cho Clear Linux) phác thảo triết lý và kiến trúc của AerynOS, dự án mới này nhằm mục đích xem xét lại cách thức hoạt động của hệ điều hành trong thời đại cơ sở hạ tầng dưới dạng mã.
Và không chỉ là một bản phân phối khác trong hệ sinh thái Linux, AerynOS tự giới thiệu mình là một sự tái hiện sâu sắc của hệ điều hành hiện đại.
Từ phân phối đến cơ sở hạ tầng
AerynOS được sinh ra từ một câu hỏi khiêu khích: "Sẽ thế nào nếu hệ điều hành hoạt động giống như một cơ sở hạ tầng hiện đại?". Câu trả lời là một nền tảng được xây dựng từ đầu, không áp dụng các quy ước cũ của các bản phân phối truyền thống và thay vì thay đổi các hệ thống hiện có, AerynOS bắt đầu từ một nền tảng sạch, tận dụng các kinh nghiệm trước đây và đưa ra các quyết định kiến trúc cấp tiến để đảm bảo tính nhất quán, khả năng đảo ngược và tính đơn giản về mặt cấu trúc.
Ikey Doherty đề cập trong bài viết của mình rằng Một trong những quyết định nổi bật nhất là việc áp dụng chuỗi công cụ LLVM thay vì GNU truyền thống, sử dụng libc++ và trình biên dịch-rt theo mặc định. Sự lựa chọn này không chỉ dựa trên sở thích về phong cách mà còn dựa trên chiến lược. để chẩn đoán tốt hơn và tính di động cao hơn. Bất chấp bản nâng cấp này, AerynOS vẫn cam kết sử dụng glibc làm thư viện chuẩn, lựa chọn glibc thay vì musl vì hiệu suất vượt trội khi xử lý nhiều luồng và các ứng dụng đòi hỏi khắt khe.
Ngoài ra, người ta còn đề cập đến một Một trong những khái niệm cốt lõi của AerynOS là “vô trạng thái”: Không có gói nào có thể cài đặt tệp bên ngoài /usr. Sự phân định nghiêm ngặt này tách biệt không gian người dùng (/etc, /var) khỏi không gian hệ thống, loại bỏ xung đột khi hợp nhất và tạo điều kiện nâng cấp sạch. Ý tưởng này có nguồn gốc từ Clear Linux, nhằm áp dụng các mặc định hợp lý và tránh sự phức tạp không cần thiết mà các hệ thống linh hoạt hơn thường gây ra.
Cập nhật nguyên tử và có thể đảo ngược
AerynOS sử dụng một hệ thống quản lý gói hoàn toàn mới, được gọi là Moss, thực hiện các giao dịch nguyên tử. Mỗi bản cập nhật sẽ tạo một cây /usr mới bằng cách sử dụng các liên kết cứng từ kho lưu trữ đã loại bỏ trùng lặp và được hoán đổi với cây hiện tại một cách nguyên tử bằng cách sử dụng lệnh renameat2(). Cơ chế này đảm bảo rằng các bản cập nhật được hoàn tất đầy đủ hoặc không được áp dụng, tránh các trạng thái trung gian.
Việc quản lý giày cũng phá vỡ truyền thống. Nhờ các công cụ như blsforme và disks-rs, AerynOS tạo dòng lệnh kernel một cách động bằng cách đọc trực tiếp các siêu khối của hệ thống tập tin, loại bỏ nhu cầu sử dụng root=. Ngoài ra, mỗi lõi được liên kết với giao dịch cụ thể của nó, tạo điều kiện khôi phục hệ thống từ menu khởi động và cho phép xây dựng lại môi trường khởi động từ đầu trong trường hợp mất ESP.
Định dạng .stone: một cách mới để đóng gói phần mềm
Một thành phần quan trọng khác là .stone format, một gói nhị phân hiện đại Được thiết kế với phiên bản độc lập và hiệu quả cao. Mỗi tệp .stone chứa:
- Nội dung không trùng lặp của các tập tin gói
- Chỉ số băm (XXH128, có kế hoạch di chuyển sang Blake3)
- Bản đồ hệ thống tập tin mục tiêu
- Siêu dữ liệu được nhập như tên, phiên bản, khả năng, v.v.
Thay vì cài đặt các tập tin trực tiếp, The .stone được lưu trữ trong một Kho lưu trữ có thể định địa chỉ nội dung (CAS) và được biên soạn như một phần của giao dịch. Cách tiếp cận này không chỉ cải thiện hiệu suất mà còn cho phép dễ dàng khôi phục lại bất kỳ thay đổi nào.
Hệ thống quản lý gói không tuân theo mô hình mệnh lệnh truyền thống. Các nhà phát triển tin rằng các lệnh cài đặt trực tiếp "gây ra nhiều lỗi hơn là giải quyết được". Thay vào đó, mỗi giao dịch sẽ tạo ra một đồ thị hệ thống mới, mở đường cho một mô hình khai báo trong tương lai tương tự như Nix hoặc Gentoo, trong đó trạng thái mong muốn của hệ thống được mô tả thay vì thực thi các lệnh thay đổi.
AerynOS có bất biến không?
Mặc dù thường được mô tả là một hệ thống bất biến, nhưng chính những người sáng tạo ra nó cũng khẳng định rằng điều này không hoàn toàn đúng. Hệ thống không chặn quyền truy cập chỉ đọcvà trong khi các giao dịch thay thế cây /usr, Tính bất biến hoàn toàn vẫn chưa được triển khai. Mục tiêu dài hạn là đạt được điều này mà không cần khởi động lại, bằng cách tận dụng các công nghệ như overlayfs và erofs.
Mặc dù đang trong giai đoạn alpha, AerynOS đã có sẵn ISO, hỗ trợ GNOME, tương thích với Steam, NVIDIA, Flatpak và được nhiều người dùng đánh giá cao về tính ổn định và hiệu suất. Hệ thống này đã hoạt động đủ tốt để có thể thử nghiệm trong các tình huống thực tế, mặc dù vẫn đang trong quá trình phát triển.
Fuente: https://aerynos.com