UNIX là gì?
Câu trả lời ngắn: UNIX là một đặc điểm kỹ thuật / tiêu chuẩn hiện nay.
Tại thời điểm viết bài, để trích dẫn các nguồn chính thức , "UNIX® là nhãn hiệu đã đăng ký của Nhóm mở", công ty trong số nhiều thứ cung cấp chứng nhận UNIX :
"UNIX®, một tiêu chuẩn mở được sở hữu và quản lý bởi Open Group, là người tạo ra các công nghệ chính và giảm tổng chi phí sở hữu, tăng tính linh hoạt, ổn định và khả năng tương tác trong môi trường không đồng nhất cho phép kinh doanh và đổi mới thị trường trên toàn cầu . "
Cùng một trang nêu cụ thể đặc điểm kỹ thuật xác định UNIX:
Phiên bản mới nhất của tiêu chuẩn chứng nhận là UNIX V7, phù hợp với Thông số kỹ thuật UNIX đơn Phiên bản 4, 2013
Chi tiết về những thông số kỹ thuật có thể được tìm thấy ở đây . Thật kỳ lạ, tiêu chuẩn mới nhất được liệt kê trên trang web của họ là UNIX 03 và để trích dẫn một nguồn khác , "UNIX® 03 - nhãn hiệu cho các hệ thống tuân thủ phiên bản 3 của Thông số kỹ thuật UNIX đơn".
Để trích dẫn trang Giới thiệu với sự nhấn mạnh của riêng tôi in đậm:
Sự thành công của cách tiếp cận UNIX đã dẫn đến một số lượng lớn các hệ điều hành có giao diện giống nhau, thường khác nhau về khả năng tương thích và khả năng tương tác. Để giải quyết vấn đề này, các nhà cung cấp và người dùng đã kết hợp với nhau trong những năm 1980 để tạo ra tiêu chuẩn POSIX® và sau đó là Đặc tả UNIX đơn .
Vì vậy, điều này gợi ý (hoặc ít nhất là như vậy là giải thích của tôi), là khi một hệ điều hành phù hợp với những tiêu chuẩn POSIX và Single UNIX Thông số kỹ thuật, nó là tương thích trong hành vi với Unix như một hệ điều hành mà đã từng tồn tại một thời điểm nào trong lịch sử. Xin lưu ý rằng điều này không đề cập đến sự hiện diện của bất kỳ dấu vết nào của mã nguồn Unix gốc, cũng như không đề cập đến kernel theo bất kỳ cách nào (điều này sẽ trở nên quan trọng sau này).
Đối với AT & T và System V Unix được phát triển bởi Ritchie và Thompson, ngày nay chúng ta có thể nói nó đã không còn tồn tại. Dựa trên các nguồn trên, có vẻ như UNIX ngày nay không phải là HĐH cụ thể, mà là một tiêu chuẩn bắt nguồn từ sự khái quát hóa tốt nhất có thể cho cách các hệ điều hành trong gia đình Unix hoạt động.
MacOS X đứng ở đâu trong thế giới * nix?
Trong một định nghĩa rất cụ thể, macOS phiên bản 10.13 High Sierra trên phần cứng dựa trên Intel tuân thủ tiêu chuẩn UNIX 03 và để trích dẫn chứng chỉ pdf , "Apple Inc. đã ký Thỏa thuận cấp phép nhãn hiệu với X / Open Company Limited." Lưu ý bên lề: Tôi ngần ngại đặt câu hỏi về ý nghĩa của macOS 10.13 đối với phần cứng không phải của Intel, nhưng xem xét phần cứng được đề cập cho các HĐH khác, phần cứng rất quan trọng. Ví dụ: "Hewlett Packard Enterprise: HP-UX 11i V3 Phát hành B.11.31 trở lên trên Máy chủ HP 9000 với Kiến trúc chính xác" (từ trang đăng ký ).
Hãy trở lại phần trước của câu trả lời của tôi. Do phiên bản đặc biệt này của HĐH tuân thủ tiêu chuẩn tương thích và tương thích, điều đó có nghĩa là HĐH này càng gần với hành vi và triển khai hệ thống càng tốt với Unix gốc như một Hệ điều hành. Ít nhất, nó sẽ gần gũi trong hành vi và môi trường. Càng tiến gần đến cấp độ hệ thống và cấp độ kernel, khu vực sẽ càng cụ thể và bóng bẩy hơn, nhưng ít nhất các cơ chế và hành vi cơ bản có trong Unix nên có trong một HĐH nhằm tương thích. macOS X nên rất gần với mục tiêu đó.
Phân phối là gì?
Để trích dẫn Wikipedia :
Một bản phân phối Linux (thường được viết tắt là distro) là một hệ điều hành được tạo từ bộ sưu tập phần mềm, dựa trên nhân Linux và thường là hệ thống quản lý gói.
Chúng ta hãy nhớ rằng Linux như trong Linux Kernel được coi là phần mềm có thể phân phối được , với các sửa đổi hoặc ít nhất là phù hợp với GPL v2 . Nếu chúng tôi xem xét trình quản lý gói và kernel, Ubuntu và Red Hat là bản phân phối có ý nghĩa. macOS X có một kernel khác với Unix AT & T ban đầu - do đó, việc gọi macOS X là một bản phân phối Unix không có ý nghĩa gì. Mọi người đề xuất rằng nhân macOS X dựa trên FreeBSD, nhưng để trích dẫn FreeBSD Wiki :
Hạt nhân XNU được sử dụng trên OS X bao gồm một vài hệ thống con từ (phiên bản cũ hơn) FreeBSD, nhưng chủ yếu là một triển khai độc lập
Một số người gọi nhầm hạt nhân OS X là Darwin. Để trích dẫn Hướng dẫn lập trình hạt nhân của Apple :
Hạt nhân, cùng với các phần cốt lõi khác của OS X được gọi chung là Darwin. Darwin là một hệ điều hành hoàn chỉnh dựa trên nhiều công nghệ tương tự làm nền tảng cho OS X.
Và để trích dẫn cùng một trang:
Công nghệ Darwin dựa trên các công nghệ BSD, Mach 3.0 và Apple.
Dựa trên tất cả mọi thứ ở trên, chúng tôi có thể tự tin nói rằng, OS X không phải là một bản phân phối , theo nghĩa phân phối Linux. Tương tự, các HĐH được đề cập khác đều tuân thủ POSIX và được chứng nhận hệ thống Unix, nhưng một lần nữa chúng khác nhau về hạt nhân và các biến thể của các cuộc gọi hệ thống cơ bản (đó là lý do tại sao có sách về lập trình hệ thống Solaris và nó là một chủ đề đáng giá). Do đó, chúng không phải là bản phân phối theo nghĩa phân phối Linux - một cốt lõi chung với các biến thể của các tiện ích. Trong trường hợp của Linux, bạn thấy các cuốn sách về lập trình hệ thống Linux hoặc lập trình nhân Linux, không phải lập trình hệ thống cụ thể để phân phối, bởi vì không có gì cụ thể về hệ thống về một phân phối cụ thể.
Xác nhận những gì chúng ta thấy ở đây có thể được tìm thấy trong tài liệu chính thức. Chẳng hạn, bài viết trên Wikipedia của IBM đã đề cập đến sự khác biệt giữa các loại hệ điều hành UNIX và các trạng thái phân phối Linux (nhấn mạnh thêm):
Hầu hết các biến thể UNIX hiện đại được biết đến ngày nay là phiên bản được cấp phép của một trong các phiên bản UNIX gốc . Sun's Solaris, HP-UX của Hewlett-Packard và AIX® của IBM đều là những hương vị của UNIX có các yếu tố và nền tảng độc đáo của riêng họ .
Nói cách khác, chúng dựa trên cùng một nền tảng, nhưng chúng không chia sẻ chính xác cùng một thứ theo nghĩa các bản phân phối Linux chia sẻ kernel.
Cân nhắc
Lưu ý rằng phân phối từ dường như được sử dụng chủ yếu khi tham chiếu các hệ điều hành có nhân Linux ở lõi. Ví dụ, loại Hệ điều hành BSD: có GhostBSD , dựa trên nhân và sử dụng một số tiện ích của FreeBSD , nhưng tôi chưa bao giờ thấy nó được gọi là bản phân phối BSD; mỗi hệ điều hành BSD chỉ đề cập đến những gì nó dựa trên và thông thường một hệ điều hành được đề cập như một hệ điều hành theo đúng nghĩa của nó. Chắc chắn, BSD là viết tắt của Berkeley Software Distribution, nhưng ... đó là nó.
Để trích dẫn câu trả lời này trên trang web của chúng tôi để trả lời cho câu hỏi liệu các phiên bản BSD khác nhau có sử dụng cùng một hạt nhân không:
Không, mặc dù có những điểm tương đồng do các dĩa lịch sử. Mỗi dự án phát triển riêng biệt.
Chúng không phải là bản phân phối theo nghĩa phân phối Linux. Xem xét thông báo bản quyền từ tài liệu này :
Các phần của sản phẩm này có thể được lấy từ các hệ thống BSD UNIX® và Berkeley 4.3
Ghi chú
Cuối cùng:
- macOS X có thể được gọi là HĐH giống Unix, hệ thống giống Unix, triển khai Unix, HĐH tuân thủ POSIX khi bạn muốn liên kết nó với Unix AT & T ban đầu;
- "Phiên bản Unix" sẽ không phải là thuật ngữ thích hợp vì macOS X khác rất nhiều so với Unix & AT gốc, và như đã đề cập trước đây không còn Unix theo nghĩa phần mềm, và giờ đây nó là một tiêu chuẩn công nghiệp hơn;
- Có lẽ từ "phân phối" chỉ phù hợp với thế giới Linux.
- Vấn đề thực sự là bạn (người đọc) và tôi có quá nhiều thời gian để tranh luận về chủ đề mà luật sư nên tranh luận. Có lẽ chúng ta nên giống như Linux Torvald và sử dụng thuật ngữ và HĐH chỉ cho phép chúng ta tiếp tục với cuộc sống và làm những điều chúng ta quan tâm một cách trung thực và cần phải quan tâm.