- Phiên bản phát hành mới nhất của hệ điều hành Apple hiện là phiên bản tương thích UNIX™ mới nhất đã được xác thực chính thức trong danh sách của Open Group, nhưng có thể không hoàn toàn giống với điều bạn nghĩ
- macOS không sử dụng mã nguồn của AT&T. "Unix" không còn mang ý nghĩa đó nữa kể từ khi Novell mua lại UNIX từ Bell Labs vào năm 1993
- Lưu ý: OS X đã được chứng nhận là UNIX từ 16 năm trước
Chứng nhận UNIX™ có ý nghĩa gì
- Không liên quan đến mã nguồn. Hơn 30 năm nay vẫn vậy
- Chứng nhận UNIX™ hiện nay có nghĩa là "tương thích POSIX"
- POSIX là một đặc tả tương thích và bộ kiểm thử, trong đó các công cụ phù hợp phải nằm đúng vị trí
- Hệ điều hành máy tính lớn z/OS của IBM cũng có trong danh sách này
Định nghĩa của một hệ điều hành giống Unix
- Nó phải trông như Unix, hoạt động như Unix, và các chương trình viết cho Unix phải có thể được chuyển sang mà không cần sửa đổi lớn
- Phần lõi của macOS đáp ứng điều này khá đầy đủ. Nó sử dụng nhân XNU và không gian người dùng chủ yếu bắt nguồn từ mã BSD
- XNU dựa trên nhân Mach, đồng thời cũng có một "máy chủ Unix" lớn bên trong nhân bắt nguồn từ mã BSD
- Phần lớn không gian người dùng là mã nguồn mở và đến từ BSD
- Tầng GUI và các phần hiển thị bắt mắt mà người dùng nhìn thấy là độc quyền
Dự án Darwin của Apple
- Trước đây Apple từng cung cấp các lớp thấp hơn của hệ điều hành dưới dạng phiên bản độc lập thông qua một dự án mang tên Darwin
- Đã có nhiều bản phân phối cố gắng hoàn thiện nó bằng cách sử dụng các thành phần từ những hệ điều hành FOSS khác như OpenDarwin, PureDarwin
- Dự án NextBSD đi theo hướng ngược lại: giữ lại nhân FreeBSD nhưng chỉnh sửa để có thể dùng mã cấp cao hơn của Apple như launchd
Quá trình tiến hóa của macOS
- Cuối năm 1996, Apple công bố mua lại NeXT Computer, và đến tháng 10 năm 1997 đã phát hành bản xem trước của hệ điều hành thế hệ tiếp theo là Rhapsody
- Rhapsody gần như giống hệt NeXTstep 5
- Năm 1999, nó trở thành Mac OS X Server 1.0, rồi phát triển thành Mac OS X 1.0 vào năm 2000
- Từ 10.8 Mountain Lion, tên được rút gọn thành OS X, và từ 10.12 Sierra thì thành macOS
- Tuy vậy, đây vẫn là một hệ điều hành còn tương đồng đến mức có thể nhận ra với NeXTstep 0.8 mà Steve Jobs từng trình diễn vào năm 1988
Ý kiến của GN⁺
- Việc macOS nhận chứng nhận UNIX có vẻ không mang nhiều ý nghĩa lớn. Với đa số người dùng, có lẽ sẽ không có tác động thực tế nào
- Tuy nhiên, việc Darwin, nền tảng làm nên macOS, là mã nguồn mở vẫn là một điểm đáng chú ý. Điều này giúp các nhà phát triển hiểu rõ hơn cách macOS hoạt động bên trong
- Tính tương thích POSIX vẫn đóng vai trò quan trọng trong việc bảo đảm khả năng chuyển đổi giữa các hệ điều hành, nhưng việc tuân thủ các tiêu chuẩn mới nhất dường như không còn là ưu tiên nữa
- Nhìn vào quá trình tiến hóa từ NeXTSTEP đến macOS, có thể thấy đổi mới về giao diện người dùng và trải nghiệm lập trình viên quan trọng đến mức nào đối với thành công của một hệ điều hành
- Cuối cùng, có lẽ điều quan trọng hơn bản thân chứng nhận UNIX là việc macOS thân thiện với nhà phát triển, dễ sử dụng và có hệ sinh thái mạnh. Tuy vậy, chứng nhận UNIX vẫn mang ý nghĩa biểu tượng cho thấy nền tảng vững chắc của macOS
1 bình luận
Ý kiến trên Hacker News
Unix, nhưng BSD hiện đại thì không. Chúng cùng xuất phát từ một codebase, nên khá khó hiểu vì sao lại như vậypoll()trên thiết bị đầu cuối hay không là điều quan trọngselect()lẫnpoll()select(), còn trên các hệ thống khác thì dùngpoll()poll()poll()của macOS không hỗ trợ thiết bịpoll()vàppoll()phải hỗ trợ nhiều loại thiết bịxdg-openvàopen,systemdvàlaunchd,sed -ivàsed -i ''pipe2, vì vẫn còn khoảng cách lớn về mức độ tương thích Unix