Sự khác biệt giữa GNU và Unix

Hầu hết chúng ta đang sử dụng các Hệ điều hành Windows và điều tốt là chúng tôi ít nhất biết về các hệ điều hành khác như Unix, Linux, v.v. Điều này không có nghĩa là HĐH duy nhất được sử dụng trên toàn thế giới là Windows nhưng những người khác cũng có một phần lớn hơn trong việc sử dụng. Dù chúng ta có thể sử dụng HĐH nào thì chức năng cuối cũng giống như sử dụng máy tính để thực hiện các tác vụ của chúng ta dễ dàng hơn. Trước khi chúng ta chuyển sang sự khác biệt giữa GNU và Unix, chúng ta cũng hãy tìm hiểu các khái niệm cốt lõi liên quan đến bất kỳ hệ điều hành nào theo thuật ngữ của giáo dân.

GNU là gì?

Thuật ngữ GNU là viết tắt của 'GNU's chứ không phải Unix'. Hầu hết mọi người nghĩ rằng GNU Linux giống như của Unix nhưng họ thì không. GNU Linux là một Dự án nguồn mở và nó được bắt nguồn bằng cách tuân theo kiến ​​trúc giống Unix. Mặc dù nó có nguồn gốc từ Unix, nhưng không có cách nào điều chỉnh mã nguồn của người tiền nhiệm. Ngoài ra, GNU Linux là một Nguồn mở và bạn có thể sử dụng mã nguồn miễn phí. Tôi cũng nên đề cập đến việc cấp phép cho GNU này và dự án GNU được cấp phép theo GPL - Giấy phép Công cộng Chung. Bạn có thể tự hỏi tại sao GNU không được sử dụng như vậy và nó luôn đi kèm với sự kết hợp Linux? Để trả lời câu hỏi, tôi nên nói rằng GNU chỉ là mã nguồn hoặc phần mềm được phát triển theo GPL. Do đó, nó là một mã nguồn mở và bất kỳ ai cũng có thể sử dụng nó theo nhu cầu của họ. Nhưng nó không thể được sử dụng như nó đòi hỏi một hệ điều hành để giải thích cho máy tính. Với mục đích đó, nó được kết hợp với Hạt nhân mã nguồn mở giống như Unix, Linux. Hai kết hợp này được gọi phổ biến là GNU / Linux hoặc chỉ Linux hoặc ít thường xuyên hơn là GNU.

Kiến trúc GNU Linux:

Bây giờ chúng ta hãy xem các thành phần khác nhau của kiến ​​trúc GNU Linux.

Lớp Phần cứng là lớp trong cùng và nó bao gồm các thiết bị ngoại vi như CPU, RAM, Đĩa cứng, v.v ... Thành phần tiếp theo tương tác trực tiếp với Phần cứng là Kernel. Nó tạo thành thành phần cốt lõi của bất kỳ hệ điều hành nào và chịu trách nhiệm cung cấp dịch vụ cho các lớp trên từ các lớp thấp hơn. Cái tiếp theo là Shell và chịu trách nhiệm phiên dịch các lệnh của người dùng theo các chức năng của kernel. Với Shell đã có, chúng ta không nhầm lẫn về sự phức tạp liên quan đến kernel. Chỉ cần tưởng tượng tình huống mà bạn cần đưa ra các lệnh bằng chữ số nhị phân là máy tính chỉ hiểu điều đó! Thật là bận rộn phải không? Đó là nơi Shell cho phép chúng ta đưa ra các lệnh bằng ngôn ngữ của chúng ta chứ không phải ở dạng máy dễ hiểu. Lớp ngoài cùng là tập hợp các chương trình tiện ích và chúng tôi gọi nó là Ứng dụng. Các chương trình này được thiết kế để thực hiện một số tác vụ nhất định như in, biên dịch, v.v. chúng tôi cũng có thể nói rằng các tiện ích này là các thành phần ngay lập tức mà chúng tôi tương tác với máy tính và đến lượt nó, sự tương tác đi sâu hơn vào các lớp khác.

Logo GNU:

Logo của dự án GNU ban đầu được thiết kế bởi Etienne Suvasa và sau đó đã được thay đổi bởi Aurelio Heckert. Tại đây bạn có thể thấy logo mới nhất của GNU và nó được phát hành bởi Tổ chức phần mềm miễn phí vào năm 2013.

Logo Linux thường được sử dụng như dưới đây. Nó được gọi là Thục.

Unix là gì?

Nó là một hệ điều hành đa nhiệm và đa người dùng và được phát triển tại Bell Labs bởi Ken Thompson và Dennis Ritchie. Kể từ khi ra đời, hệ điều hành Unix ngày càng hoàn thiện hơn. Nó tự hào là mô hình cho HĐH Linux và nó có ba thành phần chính - Kernel, Shell và các chương trình. Bây giờ bạn có thể liên kết kiến ​​trúc Unix với Linux mà chúng ta đã thấy ở trên và cả hai đều có chung một kiến ​​trúc.

Như chúng ta đã thảo luận trước đó, Kernel là thành phần trong cùng tương tác với phần cứng và thực hiện các chức năng như lưu trữ tệp, phân bổ không gian bộ nhớ, thời gian, v.v. Shell là Trình thông dịch dòng lệnh (CLI) để diễn giải các lệnh của chúng ta thành máy có thể đọc được hình thức. Chúng tôi có thể sửa đổi giao diện của Shell theo sự thuận tiện của chúng tôi. Các chương trình được lưu trữ dưới dạng tệp và được biểu thị bằng Mã định danh quy trình (PID) để phân biệt với tệp của dữ liệu. Dưới đây là logo của Unix và nó chỉ là một văn bản bằng văn bản.

Sự khác biệt giữa GNU và Unix:

  • Gốc:

GNU là phần mềm được phát triển bởi Richard Stallman và anh ta là một hacker từ MIT AI Lab. Ông đã thất vọng bởi các chương trình nguồn đóng luôn có bản quyền và không có sẵn để nghiên cứu hoặc sử dụng thêm. Các hệ điều hành Unix và Mã đóng khác được cung cấp sẵn trên thị trường mà không để mã nguồn ra ngoài. Đây là một sự thất vọng lớn đối với Mr.Richard Stallman và kết quả của sự thất vọng đó là GNU - một phần mềm Nguồn mở để truy cập Kernel. UNIX ban đầu được phát triển bởi Ken Thompson và Dennis Ritchie cho các phòng thí nghiệm Bell và nó được đặt tên là AT & T UNIX.

Tự hoạt động (có / không có Kernel):

Mặc dù GNU đã được triển khai, phần mềm cần Kernel để tương tác với phần cứng. Việc sử dụng Unix và Dự án nguồn mở đã sử dụng kiến ​​trúc Kernel giống Unix để hỗ trợ GNU. Vì vậy, chúng ta có thể nói rằng GNU tự nó không thể hoạt động và nó cần Kernel. Do đó, Kernel of Unix đã được bắt chước và Kernel mới được thiết kế. Kernel giống Unix cùng với GNU thường được gọi là GNU / Linux hoặc đơn giản là Linux. Bản thân phần mềm GNU không thể chạy khi Kernel bị thiếu. Nhưng UNIX được tạo ra từ Shell cũng như Kernel và do đó nó có thể tự hoạt động.

  • Mã nguồn:

Từ các cuộc thảo luận trước đây của chúng tôi, rõ ràng mã nguồn của GNU được cung cấp miễn phí cho công chúng và nó được gọi là mã nguồn mở. Nhưng mã nguồn của hoạt động Unix không thể được xem vì nó là mã nguồn đóng.

  • Logo:

Chúng tôi đã bắt gặp logo của họ trong các cuộc thảo luận ở trên và để chúng tôi hiểu ý chính của những gì chúng tôi đã thấy trước đó.

GNU sử dụng biểu tượng của Chim cánh cụt hoặc Gnu là linh dương đen. UNIX chỉ sử dụng một văn bản đơn giản của tên của nó làm logo.

  • Cấp phép:

GNU được Quỹ Phần mềm Tự do hỗ trợ và được cấp phép theo Giấy phép Công cộng Chung (GPL). Nó được cung cấp miễn phí cho công chúng và mã nguồn có thể được thay đổi theo yêu cầu của chúng tôi. Nhưng giấy phép của UNIX thường được ghi chú là Nhãn hiệu của Phòng thí nghiệm Bell, Nhãn hiệu của Phòng thí nghiệm Bell của AT & T hoặc Nhãn hiệu của X / Open.

  • Shell của họ và hạt nhân:

Các hạt nhân của GNU / Linux và UNIX giống nhau hơn và chỉ có sự khác biệt trong Shell. Cả hai hạt nhân đều giống nhau nhưng chúng có mã nguồn riêng là GNU / Linux sử dụng mã nguồn mở trong khi UNIX sử dụng mã nguồn đóng. Chúng ta thậm chí có thể nói rằng GNU / Linux và UNIX chỉ khác nhau trong Shell của chúng khi chúng chia sẻ Kernel chung được phát triển ban đầu là AT & T UNIX.

Đó là tất cả về sự khác biệt của chúng và chúng ta hãy xem xét dưới dạng bảng.

S.Không Sự khác biệt trong GNU / Linux UNIX
1. Gốc Nó được phát triển bởi Richard Stallman và anh ta là một hacker từ MIT AI Lab. Nó được phát triển bởi Ken Thompson và Dennis Ritchie cho phòng thí nghiệm Bell.
2. Ban đầu được đặt tên là GNU và đó là tên được đặt cho Phần mềm đã phát triển. Được đặt tên là AT & T UNIX khi nó được phát triển tại Bell Labs.
3. Tự hoạt động Bản thân phần mềm (Shell) không thể hoạt động vì nó cần Kernel để tương tác với phần cứng. UNIX bao gồm cả Shell và Kernel và có thể tự hoạt động.
4. Dựa vao? Phần mềm GNU chỉ là Shell dựa trên bất kỳ Kernel nào và đúng, Kernel UNIX đã được triển khai. Nó không dựa vào bất kỳ HĐH nào khác, nó có các thành phần riêng.
5. Mã nguồn Mã nguồn GNU có sẵn miễn phí cho công chúng. Chúng tôi có thể sửa đổi mã theo yêu cầu của chúng tôi. Mã nguồn UNIX không có sẵn cho công chúng.
6. Logo GNU sử dụng biểu tượng của Chim cánh cụt hoặc Gnu là linh dương bóng tối. Nó sử dụng một văn bản đơn giản của tên của nó làm logo.

7. Cấp phép Nó được cấp phép theo Giấy phép Công cộng (GPL). Giấy phép của UNIX thường được ghi chú là Nhãn hiệu của Phòng thí nghiệm Bell, Nhãn hiệu của Phòng thí nghiệm Bell của AT & T hoặc Nhãn hiệu của X / Open.

số 8. Vỏ và hạt nhân Nó có Shell riêng, GNU, nhưng nó sử dụng Kernel giống như UNIX. Nó có Shell và thành phần Kernel riêng.

Hy vọng bài viết đã giúp bạn! Nếu bạn vẫn cảm thấy thiếu thứ gì đó, vui lòng cho chúng tôi biết.