Fuchsia OS đang làm việc để hỗ trợ chạy các chương trình Linux chưa được sửa đổi

Nhà phát triển của Google phát hành một vài ngày trước kế hoạch triển khai cơ chế chạy các chương trình chưa sửa đổi được biên dịch cho Linux trên Hệ điều hành Hoa vân anh.

Để chạy các chương trình Linux trong không gian người dùng, nó được lên kế hoạch cung cấp một lớp "starnix" để hỗ trợ Linux ABI. Trong lớp đã phát triển, các giao diện hệ thống nhân Linux được triển khai trong một trình điều khiển được khởi chạy như một quy trình cho hệ điều hành Fuchsia, chạy trong không gian người dùng và chuyển các yêu cầu từ các chương trình Linux thành các lệnh gọi đến các hệ thống con Fuchsia tương ứng.

Người ta quan sát thấy rằnge trong quá trình phát triển dự án, nhiều hệ thống con của Fuchsia sẽ phải được sửa đổi để triển khai tất cả các giao diện hệ thống có sẵn trong Linux. Kiến trúc của starnix phần lớn giống với kiến ​​trúc của hệ thống con Windows dành cho Linux sử dụng Windows để dịch các lệnh gọi hệ thống Linux sang các lệnh gọi hệ thống Windows.

Nó được lên kế hoạch triển khai mã starnix trong Rust để giảm thiểu các vectơ có thể có lỗ hổngs có thể được sử dụng để nâng cao các đặc quyền của một quy trình Linux lên quy trình starnix.

Để đảm bảo an ninh tại starnix, các cơ chế bảo vệ Fuchsia tiêu chuẩn sẽ được sử dụng bất cứ khi nào có thể.

Ví dụ: khi truy cập các dịch vụ hệ thống như hệ thống tệp, ngăn xếp mạng hoặc hệ thống con đồ họa, starnix sẽ chỉ dịch các yêu cầu, chuyển đổi ABI của Linux sang ABI của hệ thống Fuchsia, cho phép các hạn chế tương tự như chúng được áp dụng cho các quy trình Fuchsia thông thường.

Điều này cũng sẽ thực hiện các cơ chế ủy quyền dành riêng cho Linux, ví dụ, xác định các tình huống mà một quy trình Linux có quyền chấm dứt quy trình khác.

Các nhà phát triển Fuchsia đã phát triển hỗ trợ khởi chạy các ứng dụng Linux trong quá khứ, nhưng họ đã thử nghiệm một triển khai hoạt động tương tự với cách tổ chức khởi chạy ứng dụng Linux trên Chrome OS.

Để tương thích với Linux, Fuchsia đã cung cấp thư viện Machina, cho phép các chương trình Linux chạy trong một máy ảo biệt lập đặc biệt được tạo ra bằng cách sử dụng trình siêu giám sát dựa trên hạt nhân Zircon và các thông số kỹ thuật của Virtio.

Việc sử dụng ảo hóa không bị loại trừ, vì việc triển khai đầy đủ giao diện hệ thống Linux không phải là một nhiệm vụ tầm thường.

Ngoài áo choàng starnix, có thể tạo một cơ chế để chạy các tệp thực thi linux bằng cách sử dụng nhân linux chạy trong một máy ảo riêng biệt. Phương pháp này được coi là dễ thực hiện nhất nhưng cũng tốn nhiều tài nguyên nhất.

Tại một thời điểm, Microsoft bắt đầu phát triển lớp tương thích Linux của mình từ trình biên dịch, nhưng cuối cùng chuyển sang sử dụng nhân Linux gốc trên Hệ thống con Windows dành cho Linux 2.

Bên cạnh đó, Fuchsia đã cung cấp lớp tương thích POSIX Lite chạy trên hệ thống Fuchsia ABI. POSIX Lite cho phép bạn chạy một số chương trình Linux, nhưng yêu cầu biên dịch lại mã ứng dụng và trong một số trường hợp, sửa đổi mã nguồn.

Một trong những vấn đề với POSIX Lite là việc triển khai không đầy đủ tất cả các chức năng của POSIX, bao gồm các lệnh gọi thay đổi trạng thái toàn cầu của các quy trình (ví dụ: hàm kill), trái ngược với các khái niệm bảo mật trong Fuchsia, vốn cấm thay đổi trạng thái toàn cầu của các quy trình. Bày tỏ.

Việc sử dụng POSIX Lite là hợp lý trong quá trình chuyển các ứng dụng đang mởs, nhưng nó không giải quyết được các vấn đề với việc khởi chạy các chương trình không có quyền truy cập vào mã (ví dụ: không thể đạt được khả năng tương thích với các ứng dụng Android có chứa các chèn gốc đã biên dịch).

Chúng ta hãy nhớ rằng trong khuôn khổ dự án Fuchsia, Google đang phát triển một hệ điều hành phổ quát có khả năng hoạt động trên mọi loại thiết bị, từ máy trạm và điện thoại thông minh đến công nghệ nhúng và tiêu dùng. Sự phát triển dựa trên kinh nghiệm tạo nền tảng Android và có tính đến những thiếu sót trong lĩnh vực mở rộng quy mô và bảo mật.

Hệ thống dựa trên kênh vi mô Zircon, dựa trên sự phát triển của dự án LK, được mở rộng để sử dụng cho nhiều loại thiết bị khác nhau, bao gồm cả điện thoại thông minh và máy tính cá nhân.

Fuente: https://fuchsia.googlesource.com


Để 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.