Redox, một hệ điều hành được viết bằng ngôn ngữ lập trình Rust

Hệ điều hành khử oxy

Sau một năm phát triển, sự ra mắt của phiên bản mới của hệ điều hành Redox 0.5 đã được công bố, cái nào Trọng tâm chính của nó là sự phát triển của nó là sử dụng ngôn ngữ Rust và khái niệm microkernel.

Diễn biến của dự án được phân phối theo giấy phép MIT miễn phí. Để thử nghiệm trong VirtualBox hoặc QEMU, các hình ảnh khởi động cụ thể được cung cấp cho từng loại này.

Môi trường người dùng Redox dựa trên Orbital GUI chạy trên Wayland. Netsurf được sử dụng như một trình duyệt web.

Giới thiệu về khử oxy

Hệ điều hành sử dụng khái niệm kênh vi mô, nơi chỉ cung cấp sự tương tác giữa các quy trình và quản lý tài nguyên ở cấp hạt nhân và tất cả các chức năng khác được chuyển sang các thư viện có thể được sử dụng bởi cả tác nhân nhân và tác nhân người dùng.

Tất cả bộ điều khiển chạy trong không gian người dùng trong hộp cát sandbox. Để tương thích với các ứng dụng hiện có, một lớp POSIX đặc biệt được cung cấp cho phép bạn chạy nhiều chương trình mà không cần chuyển.

Oxi hóa khử được phát triển theo triết lý Unix, vay mượn một số ý tưởng từ SeL4, Minix và Plan 9.

Hệ thống sử dụng nguyên tắc "mọi thứ là một URL".

Ví dụ: URL "log: //" có thể được sử dụng để ghi nhật ký, tương tác giữa các quy trình "bus: //", tương tác mạng "tcp: //", v.v.

Các mô-đun có thể được triển khai dưới dạng trình điều khiển, phần mở rộng hạt nhân và tác nhân người dùng có thể đăng ký trình xử lý URL của chúng, ví dụ: bạn có thể viết một mô-đun để truy cập các cổng I / O và liên kết nó với URL "port_io: / /", Sau mà bạn có thể sử dụng để truy cập cổng 60 thông qua việc mở url "port_io: // 60".

Dự án cũng đang phát triển trình quản lý lô của riêng mình, một tập hợp các tiện ích tiêu chuẩn (binutils, coreutils, netutils, extrautils), lệnh shell "ion", trình soạn thảo văn bản natri giống vod, ngăn xếp mạng và hệ thống tệp TFS được phát triển trên cơ sở ý tưởng của ZFS. ).

asus-eepc-900

Cấu hình được đặt bằng ngôn ngữ Toml. Hệ thống hiện hỗ trợ sử dụng trên bộ vi xử lý x86_64 với cạc đồ họa tương thích VBE (nvidia, intel, amd), ổ AHCI và cạc mạng dựa trên chip E1000 hoặc RTL8168.

Tính mới chính của Redox 0.5

Việc phát hành phiên bản mới của Redox 0.05 đi kèm với một số đổi mới mà chúng ta có thể làm nổi bật trong trường hợp đầu tiên là chính thư viện C chuẩn Relibc, được viết bằng Rust.

Relibc được định vị như một bản triển khai di động của thư viện tiêu chuẩn C, tuân thủ POSIX và có khả năng hoạt động không chỉ trên Redox mà còn trên các bản phân phối dựa trên Linux.

Trước đây trên Redox, ngã ba của thư viện newlib từ dự án Cygwin Nó được sử dụng như một thư viện tiêu chuẩn, nhưng nó không được thiết kế riêng cho các nhà phát triển về bảo mật và đa nền tảng. Ở giai đoạn phát triển hiện tại, Relibc đã vượt trội hơn nhiều so với chức năng newlib.

Ngoài điều này trong Redox 0.5 bootloader-coreboot và bootloader-efi mới đã được chuẩn bị cho coreboot và EFI, trên cơ sở đó hình ảnh khởi động được hình thành.

Các thư viện để làm việc với EFI được viết bằng Rust và mã khởi động (tải trọng cho coreboot) trong Rust. Bộ sạc có thể được sử dụng riêng biệt với Redox và trong các dự án khác.

Hệ thống quản lý sự kiện đã được thiết kế lại để cung cấp hỗ trợ chính xác cho việc chọn và bỏ phiếu cuộc gọi.

Trong số các tin tức khác có thể được đánh dấu trong thông báo về phiên bản mới này, chúng tôi tìm thấy:

  • Hỗ trợ đầy đủ cho các chức năng ánh xạ bộ nhớ (mmap) đã được triển khai.
  • Hỗ trợ cho Pthreads đã được thêm vào và các cuộc gọi hệ thống bổ sung được đề xuất để xử lý tín hiệu.
  • Cải thiện hỗ trợ LLVM, cho phép lắp ráp gỉc và Mesa (c llvmpipe).
  • Do việc chuyển đổi sang thư viện hệ thống mới, hỗ trợ cho nhiều ứng dụng mới đã đạt được.
  • Tổng cộng có 62 gói mới đã được thêm vào.

Để cài đặt trong Redox đã có các gói sẵn sàng để sử dụng với các thư viện SDL2, ffmpeg, cairo, gstreamer, pcre, glman, libiconv, libsodium và gettext, một tập hợp các trình biên dịch, một triển khai OpenGL, một ứng dụng OpenGL, Vcckv Mesa, trình giả lập scummvm, doscites và phong tục, và một ứng dụng OpenGL trong tập hợp của nó. Nukem 3D), openttd và FreeDoom.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.