Tóm tắt nhanh
- Unix bắt đầu tại Bell Labs năm 1969; Linux là nhân hệ điều hành được Linus Torvalds phát hành lần đầu năm 1991.
- Linux không phải hậu duệ mã nguồn của Unix AT&T, mà là một triển khai Unix-like độc lập.
- UNIX là nhãn hiệu và chứng nhận gắn với tiêu chuẩn Single UNIX Specification của The Open Group.
- POSIX giúp phần mềm dễ chuyển giữa các hệ thống, nhưng tương thích POSIX không tự động biến Linux thành UNIX được chứng nhận.
Câu hỏi “Linux khác Unix chỗ nào?” thường xuất hiện vì hai hệ thống có nhiều lệnh và cách vận hành giống nhau. Điểm mấu chốt là Unix vừa chỉ một dòng hệ điều hành có lịch sử từ Bell Labs, vừa gắn với nhãn hiệu và chứng nhận; Linux trước hết là tên một nhân mã nguồn mở, được xây dựng theo hướng tương thích Unix.
Unix có lịch sử lâu hơn, Linux được viết độc lập

Unix hình thành tại Bell Labs từ năm 1969, với Ken Thompson, Dennis Ritchie và các đồng nghiệp. Đến năm 1973, phần lớn hệ điều hành được viết lại bằng C, giúp Unix dễ chuyển sang các nền tảng phần cứng khác hơn. AT&T sau đó cấp phép Unix cho nhiều tổ chức, tạo ra các nhánh thương mại và học thuật.
Linux xuất hiện muộn hơn. Linus Torvalds phát hành phiên bản đầu tiên của nhân Linux năm 1991 theo giấy phép GPLv2. README của dự án mô tả Linux là một nhân nguyên khối, tự do và mã nguồn mở, có tính chất Unix-like. Linux không lấy mã nguồn Unix AT&T làm nền; sự tương đồng nằm ở thiết kế và giao diện quen thuộc, không phải quan hệ kế thừa mã nguồn.
Linux là nhân; một bản phân phối ghép nhiều thành phần
Gọi Linux là toàn bộ hệ điều hành thường là cách nói tắt. Chính xác hơn, Linux là kernel: lớp quản lý phần cứng, tài nguyên và cung cấp dịch vụ nền cho phần mềm. Để tạo thành hệ điều hành người dùng có thể cài đặt, kernel được kết hợp với thư viện, tiện ích dòng lệnh, trình quản lý tiến trình và các thành phần khác; nhiều bản phân phối sử dụng công cụ từ dự án GNU.
Vì vậy, Ubuntu, Debian hay các bản phân phối máy chủ không đồng nhất với kernel Linux đơn lẻ. Mỗi bản phân phối chọn và tích hợp thành phần theo mục tiêu riêng. Cách gọi “GNU/Linux” nhấn mạnh quan hệ giữa kernel Linux và nhiều công cụ GNU, còn trong giao tiếp phổ biến, “Linux” thường được dùng để chỉ cả hệ thống hoàn chỉnh.
Unix-like không đồng nghĩa với chứng nhận UNIX
The Open Group sở hữu nhãn hiệu UNIX và các đặc tả nền tảng của tổ chức này tạo cơ sở cho chứng nhận. Một hệ thống chỉ được gọi là UNIX theo nghĩa chứng nhận khi đáp ứng đầy đủ Single UNIX Specification (SUS) và được chứng nhận tương ứng. “Unix-like” là cách mô tả rộng hơn cho hệ thống có thiết kế hoặc giao diện tương tự Unix; Linux thường được xếp vào nhóm này.
POSIX là một chuẩn giao diện hệ điều hành, môi trường, shell và tiện ích phổ biến. The Open Group nêu rõ POSIX hỗ trợ khả năng chuyển ứng dụng ở mức mã nguồn, đồng thời các đặc tả nền tảng của họ là cơ sở cho chứng nhận UNIX. Hai khái niệm có liên hệ nhưng không thể thay thế nhau: tuân thủ một phần hoặc nhiều phần POSIX không tự động trao chứng nhận UNIX.
Khác biệt này cũng giải thích vì sao một hệ điều hành có thể rất giống Unix trong cách dùng mà không mang nhãn UNIX được chứng nhận. Tên gọi “Unix-like” nói về họ đặc tính kỹ thuật; chứng nhận UNIX là một điều kiện cụ thể liên quan đến tiêu chuẩn và quy trình đánh giá.
Chọn Linux hay Unix tùy hệ thống cần vận hành
Linux phổ biến trong máy chủ, điện toán đám mây và thiết bị Android; khả năng tùy biến cùng hệ sinh thái phân phối rộng khiến nó phù hợp từ máy tính cá nhân đến hạ tầng quy mô lớn. Trong khi đó, các hệ thống UNIX thương mại như AIX, HP-UX hay Solaris vẫn hiện diện ở một số môi trường doanh nghiệp cần nền tảng và dịch vụ hỗ trợ chuyên biệt. Không nên suy ra mọi ngân hàng hay nhà mạng đều chạy Unix, cũng không thể khẳng định mọi máy chủ hiện đại đều dùng Linux.
Với người học hoặc quản trị hệ thống, khác biệt thực tế thường nằm ở bản phân phối, công cụ, mức hỗ trợ và yêu cầu tương thích ứng dụng, hơn là tranh luận tên gọi. Nếu phần mềm cần chạy trên nhiều nền tảng kiểu Unix, POSIX là điểm tham chiếu hữu ích; nếu hợp đồng hoặc sản phẩm đòi hỏi UNIX được chứng nhận, cần kiểm tra đúng phiên bản và chứng nhận thay vì chỉ dựa vào giao diện lệnh.
Linux gần Unix về triết lý và giao diện, nhưng được phát triển độc lập và có mô hình giấy phép khác. Còn “UNIX” trong ngữ cảnh chứng nhận không phải nhãn chung cho mọi hệ thống có shell và lệnh quen thuộc.
Nguồn tham khảo: The Open Group Base Specifications; Linux Kernel README; Unix







