Một hệ điều hành phù hợp POSIX tối thiểu


8

Đối với mục đích giáo dục, tôi muốn bắt đầu với một cơ sở tuân thủ POSIX, bao gồm cả trình bao, các tiện ích cơ bản và trình biên dịch ANSI C, sau đó xem loại môi trường nào tôi có thể xây dựng bằng cách đặt các gói với nhau.

Tuy nhiên, hầu hết các hệ điều hành tuân thủ POSIX tối thiểu mà tôi gặp đều dường như được nhúng và / hoặc độc quyền. Có bất kỳ hệ thống nguồn mở nào như vậy tôi có thể dễ dàng chạy trong Virtualbox không?

Tôi đã tìm kiếm một chút về việc xây dựng một môi trường như vậy từ đầu , nhưng có vẻ như rất nhiều công việc chỉ đơn giản là có được một môi trường có thể khởi động / có thể sử dụng, ít hơn một môi trường tuân thủ POSIX. Tôi có thể thử sức mình trong việc xây dựng HĐH POSIX một ngày nào đó, nhưng trước tiên tôi muốn hiểu biết về máy tính hơn một chút.

Ghi chú:

Tôi nghĩ rằng tôi đã nghe thấy ở đâu đó rằng Linux không hoàn toàn tuân thủ POSIX, nhưng miễn là tôi có thể biên dịch và xây dựng một số công cụ nguồn mở phổ biến và thiết yếu hơn (như wget và w3m), tôi sẽ rất vui, dù nó có hay không đã sử dụng nhân Linux. Tương tự như vậy đối với các thành phần cơ bản khác mà tôi tưởng tượng có thể đi kèm với hệ điều hành (ví dụ: glibc)


Khi bạn thấy một vấn đề với quyền sở hữu độc quyền, tôi không thấy vấn đề ở đâu, vì việc sở hữu độc quyền không cản trở sự tuân thủ POSIX. Bạn có muốn nói đến thương mại thế giới không?
Hibou57

Câu trả lời:


10

POSIX không xác định một hệ điều hành hoàn chỉnh, vì vậy bất kỳ hệ điều hành POSIX-compliant sẽ có lệnh mà không phải là trong POSIX (như init, mkfs, passwd, ...). Nhưng các hệ điều hành khác nhau có các phần mở rộng khác nhau và các công cụ GNU (được tìm thấy trên các hệ thống Linux không nhúng) có rất nhiều.

BusyBox là một bộ công cụ dòng lệnh dành cho các hệ thống nhúng Linux. Nó chứa hầu hết các tiện ích và tùy chọn được ủy quyền bởi POSIX (chưa hoàn tất nhưng đã hoàn thành). Bạn có thể tạo một hệ thống Linux đang chạy với bộ tải khởi động, nhân Linux, BusyBox và Dropbear nếu bạn muốn đăng nhập qua SSH. Thêm Gcc nếu bạn muốn phát triển trên hệ thống tối thiểu.

Nếu bạn muốn bắt đầu từ một bản phân phối đầy đủ nhưng nhỏ, hãy xem MINIX 3 . Đây là một hệ thống unix nhỏ dành cho các hệ thống nhúng và để giảng dạy.

Nếu bạn muốn một hệ thống dễ mở rộng hơn, hãy xem OpenBSD . OpenBSD tập trung vào bảo mật và bảo thủ về các tính năng, nhưng hệ thống cốt lõi bao gồm các thành phần chính như Perl và Apache.


Tôi tin rằng TCC gần với ANSI C / ISO C99 hơn GCC, điều này sẽ làm cho nó trở thành một lựa chọn tốt hơn cho trình biên dịch C trong môi trường POSIX nghiêm ngặt tránh các tính năng không phù hợp.
Hibou57
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.