Điều tra UNIX và Linux về các chức năng, môi trường, khả năng sử dụng, và trong đó có những lĩnh vực mà UNIX và Linux khác nhau nhưng cũng có một số lĩnh vực là khá khác nhau. Nhiều người đề cập đến Linux như một hệ điều hành UNIXlike. Nó là một hệ điều hành mã nguồn mở có nhiều nguyên tắc và lý tưởng giống như UNIX, nhưng nó không phải là một hệ điều hành thực sự UNIX như Solaris, AIX, HPUX,…. Bài bài tập lớn bao gồm các khía cạnh khác nhau, từ các yếu tố kỹ thuật cốt lõi, chẳng hạn như nhân HĐH và hỗ trợ hệ thống tập tin, các công cụ ứng dụng sẵn có, và sự khác biệt trong cách quản lý chúng.
Trang 1ĐẠI HỌC MỎ ĐỊA CHẤT KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN Môn: Nguyên lý hệ điều hành
Đề bài: so sánh hai hệ điều hành Unix và Linux
1. Nguyễn Văn Khôi Nguyễn Thị Hữu Phương
2. Phạm Văn Hoàn
3. Trần Quang Huy
Lớp Tin Kinh tế - K56
Trang 2Phân công công việc:
- Khôi: Giới thiệu Unix và Linux, Khác biệt kỹ thuật, kiến trúc phần cứng, the
Open Group và Single UNIX Specification.
- Huy: Nhân HĐH, quản trị hệ thống, hỗ trợ hệ thống tập tin
- Hoàn: Ứng dụng có sẵn, Hỗ trợ, tính mở, Dự án GNU và giấy phép GPL
MỞ ĐẦU
Điều tra UNIX và Linux về các chức năng, môi trường, khả năng sử dụng, và trong đó có những lĩnh vực mà UNIX và Linux khác nhau nhưng cũng có một số lĩnh vực
là khá khác nhau Nhiều người đề cập đến Linux như một hệ điều hành UNIX-like Nó là một hệ điều hành mã nguồn mở có nhiều nguyên tắc và lý tưởng giống như UNIX, nhưng
nó không phải là một hệ điều hành thực sự UNIX như Solaris, AIX, HP-UX,… Bài bài tập lớn bao gồm các khía cạnh khác nhau, từ các yếu tố kỹ thuật cốt lõi, chẳng hạn như nhân HĐH và hỗ trợ hệ thống tập tin, các công cụ ứng dụng sẵn có, và sự khác biệt trong cách quản lý chúng
SO SÁNH UNIX VÀ LINUX
1. Giới thiệu Unix và Linux.
-UNIX là một HĐH đa nhiệm, đa người dùng được phát triển vào năm 1969 bởi một nhóm nhân viên của công ty AT&T tại phòng thí nghiệm Bell Labs Qua nhiều năm,
nó đã được phát triển thành nhiều phiên bản sử dụng trên nhiều môi trường phần cứng khác nhau Hầu hết các phiên bản UNIX hiện nay đều là những biến thể của UNIX gốc
và được các nhà phát triển sửa đổi, viết lại hoặc thêm các tính năng, công nghệ riêng biệt Các phiên bản UNIX hiện nay có thể kể đến:
• Solaris (Sun/Oracle)
• Mac OS X (Apple)
Mỗi phiên bản UNIX có 1 đặc điểm riêng.Ví dụ: Solaris của Sun là UNIX, nhưng kết hợp nhiều công cụ và phần mở rộng được thiết kế để tận dụng tốt nhất của các máy trạm riêng của Sun và phần cứng máy chủ
-Linux là HĐH được phát triển bởi Linus Torvarlds tại trường đại học Helsinki (Phần Lan) vào năm 1991, lấy nguồn cảm hứng từ Minix, một hệ thống Unĩ nhỏ do Andy
Trang 3Tanenbaum thiết kế Linux được tạo ra với mục đích cung cấp cho người dùng 1 giải pháp phần mềm miễn phí thay thế cho UNIX Ngày nay Linux là một hệ thống 32-bits, multi-tasking, multi-user,…Nó hỗ trợ đủ loại chương trình khác nhau như X Windown, TCP/IP C/C++GNU \, thư điện tử, những công cụ với LateX hoặc những tiện ích cho văn phòng (ApplixWare, StartOffice) Được thiết kế dựa trên bộ xử lý của Intel và tận dụng được tất cả những chức năng của chúng Linux có thể chạy trên rất nhiều nền tảng khác nhau như x86 và x64 từ Intel/AMD trong khi UNIX chỉ chạy trên 1 hoặc 2 kiến trúc nhất định
Linux và UNIX có một nền tảng chung, nhưng cũng rất khác nhau như các công
cụ, tiện ích, và các sản phẩm phần mềm miễn phí Linux được phát triển như là lựa chọn thay thế miễn phí cho phiên bản có sẵn trên UNIX Linux thường cung cấp hỗ trợ cho nhiều tùy chọn và các ứng dụng khác nhau, nó chọn các chức năng tốt nhất (hoặc phổ biến nhất) từ môi trường phần mềm UNIX mà không cầm mô tả lại
Người quản trị hoặc người đã sử dụng Linux có thể thấy nó không thoải mái khi chuyển sang dùng một hệ thống UNIX thương mại Nhìn chung, nền tảng của bất kỳ hệ điều hành UNIX-như (công cụ, hệ thống tập tin bố trí, lập trình API) là khá chuẩn Tuy nhiên, một số chi tiết có sự khác biệt về hệ thống đáng kể Phần còn lại của bài viết này bao gồm các chi tiết của những khác biệt này
2. Khác biệt kỹ thuật
-Các hãng phát triển UNIX thường thường có những đối tượng khách hàng và nền tảng nhất định, và các phiên bản UNIX đều là HĐH thương mại và đươc bán với giá ko
hề rẻ chút nào Những HĐH này thường được phát triển có mục đích, có các tiêu chuẩn cho khách hàng và thống nhất giữa các phiên bản Khi một phiên bản UNIX mới được nâng cấp, khách hàng sẽ nhận được những thông tin chi tiết từ nhà phát triển về các tính năng, công nghệ mới được áp dụng, tính tương thích đối với các bản cũ hơn, v.v
-Sự phát triển của GNU/Linux mặt khác đa dạng hơn được phát triển bởi nhiều lập trình viên với nhiều bối cảnh khác nhau, và vì thế họ có những ý kiến, quan điểm và mục tiêu, trình độ khác nhau Trong cộng đồng Linux ko hề có một tiêu chuẩn chính xác nào về môi trường, công cụ lập trình cũng như khả năng đáp ứng của HĐH vì họ không
có một môi trường thủ nghiệm như Unix Dự án cơ sở (LSB) Linux đã được hình thành
để giảm bớt vấn đề này, nhưng nó đã không đáp ứng và giúp ích nhiều như mong đợi
Mỗi phiên bản mới của hệ điều hành UNIX đi kèm với một loạt các tính năng mới
và những thay đổi trong không gian Các lệnh, công cụ, và các yếu tố khác không thay đổi nhiều, và thường các đối số dòng lệnh và giao diện tương tự như các phiên bản
khác Trường hợp có thay đổi, nhà cung cấp UNIX thương mại thường cung cấp một lớp tương thích, hoặc khả năng chạy các phiên bản cũ hơn Đôi với Linux thì các công cụ và ứng dụng có thể được sử dụng trên các phiên bản mới của hệ điều hành mà không có một môi trường thử nghiệm nên nó dễ gắp phải các lỗi Vậy nên người dùng UNIX hay quản trị viên dễ dàng hơn nhiều trong việc cập nhật các phiên bản mới so với Linux
3. Kiến trúc phần cứng
Trang 4-Hầu hết các HĐH UNIX thương mại đều được lập trình để chạy trên một hoặc một nhóm kiến trúc phần cứng nhất định ví dụ HP-UX chạy trên hệ thống PA-RISC và Itanium, Solaris chạy trên SPARC và x86, Việc giới hạn phần cứng giúp những công ty bán UNIX có thể tối ưu HĐH của mình để chạy thật tốt trên một hệ thống phần cứng nào đó.UNIX có thể tối ưu hóa mã của họ cho các kiến trúc Họ có thể tận dụng lợi thế của tất
cả các tính năng Vì họ biết thiết bị hỗ trợ, trình điều khiển của họ có thể được tối ưu hóa tốt Họ cũng không bị hạn chế bởi những BIOS yếu của hầu hết các máy tính
- Trái lại, Linux vốn được thiết kế với mục đích cạnh tranh và thay thế UNIX nên Linux có thể chạy trên rất nhiều cấu trúc phần cứng với tính tương thích tốt, và số lượng các thiết bị gắn ngoài, thiết bị I/O được sử dụng hầu như không giới hạn Chính vì thế mà nhà phát triển Linux không thể xác định người dùng sử dụng loại phần cứng nào nên không thể tối ưu hóa HĐH cho phần cứng đó Một ví dụ là: quản lý bộ nhớ trên Linux Vì
nó đã được phát triển trên phần cứng x86, nó được sử dụng mô hình bộ nhớ phân
đoạn Nó thích nghi với chế độ sử dụng bộ nhớ phân trang theo thời gian, nhưng vẫn giữ lại một số yêu cầu bộ nhớ phân đoạn Điều này đã gây ra vấn đề cho các kiến trúc không
hỗ trợ bộ nhớ phân đoạn Đây không là vấn đề đối với các nhà cung cấp UNIX vì họ biết chính xác phần cứng mà khác hàng sủ dụng nên họ có thể tối ưu hóa HĐH cho phần cúng
đó
4. Nhân HĐH
Kernel là cốt lõi của bất kỳ hệ điều hành Mã nguồn không được phân phối tự do cho bất kỳ phiên bản thương mại của UNIX.Hoàn toàn ngược lại tồn tại cho Linux Như vậy, thủ tục lập và hạt nhân vá và trình điều khiển là rất khác nhau Với Linux và các hệ điều hành mã nguồn mở khác, một bản vá có thể được phát hành dưới dạng mã nguồn và người sử dụng có thể cài đặt nó, hoặc thậm chí kiểm tra và sửa đổi nó nếu muốn Các bản
vá này thường ko được kiểm tra kỹ bằng UNIX Vì không có một danh sách đầy đủ các ứng dụng và môi trường cần phải được thử nghiệm trên Linux, các nhà phát triển Linux phụ thuộc nhiều vào đánh giá của người sử dụng và các nhà phát triển khác để phát hiện lỗi
Các nhà cung cấp UNIX thương mại Kernel của họ chỉ phát hành dưới dạng nhị phân Một số phát hành Kernel như là một gói nguyên khối , trong khi những người khác
có thể tháo dỡ Kernel và nâng cấp chỉ là một mô-đun duy nhất Dù bằng cách nào, nó vẫn còn trong dạng nhị phân Nếu một bản cập nhật là cần thiết, người quản trị phải chờ đợi các nhà cung cấp phát hành các bản vá dưới dạng nhị phân, nhưng họ có thể được an toàn hơn khi biết rằng các nhà cung cấp đã thực hiện kiểm tra đầy đủ
Tất cả các phiên bản thương mại của UNIX đã tiến hóa để hỗ trợ một số loại Kernel theo môđun Trình điều khiển và một số tính năng có sẵn như là các thành phần riêng biệt và có thể được xếp, dỡ từ Kernel là cần thiết, khá cởi mở và linh hoạt như các
Trang 5kiến trúc mô-đun trong Linux Tuy nhiên, với sự linh hoạt và khả năng thích ứng của Linux đến thay đổi liên tục Các cơ sở mã Linux được thay đổi liên tục và các API có thể thay đổi ý thích của một nhà phát triển Khi một mô-đun hoặc trình điều khiển được viết cho một phiên bản thương mại của UNIX, mã làm việc lâu hơn là các điều khiển tương tự viết cho Linux
5. Hỗ trợ hệ thống tập tin
Một trong những lý do Linux đã trở thành một công cụ mạnh mẽ có khả năng tương thích rộng lớn của nó với hệ điều hành khác.Một trong những tính năng rõ ràng nhất là rất nhiều hệ thống tập tin có sẵn.+
Phiên bản mới nhất hỗ trợ thương mại của UNIX hai, hoặc có thể ba, các loại hệ thống vùng tập tin khác nhau Linux, tuy nhiên, hỗ trợ hầu hết tất cả các hệ thống tập tin hiện đang có sẵn trên bất kỳ hệ điều hành Bảng 1 cho thấy trong đó hệ thống tập tin được
hỗ trợ trong phiên bản của UNIX Bạn có thể gắn kết mỗi hệ thống tập tin trong Linux, mặc dù không phải tất cả trong số họ cho phép đầy đủ hỗ trợ đọc-ghi
Bảng 1 Hệ thống tập tin có tiêu chuẩn với phiên bản UNIX
Hầu hết các phiên bản Unix thương mại có ít nhất một số loại nhật ký hệ thống tập tin có sẵn Ví dụ, HP-UX sử dụng HFS như hệ thống tập tin tiêu chuẩn của nó, nhưng nó cũng hỗ trợ các hệ thống tập tin nhật ký Vxfs Solaris là tương tự với UFS và zfs Hệ thống tập tin nhật ký là một thành phần quan trọng của bất kỳ môi trường máy chủ doanh nghiệp Linux là cung cấp tương đối muộn hệ thống nhật ký tập tin, nhưng hiện nay có một số tùy chọn khác nhau, từ các cổng của hệ thống tập tin thương mại (xfs, JFS) đến Linux-only hệ thống tập tin gốc (ext3, reiserfs)
Trang 6Tính năng hệ thống tập tin khác bao gồm hỗ trợ hạn ngạch, danh sách kiểm soát truy cập tập tin, phản chiếu, ảnh chụp nhanh, và thay đổi kích thước Đây là những được
hỗ trợ trong một số hình thức khác nhau trên một số hệ thống tập tin Linux Hầu hết các tính năng này không được chuẩn hóa trên Linux Họ có thể làm việc một cách trên một hệ thống tập tin, nhưng phương pháp khác là cần thiết trên hệ thống tập tin khác Một số các tính năng này chỉ là không có sẵn trên một số hệ thống tập tin Linux, và một số yêu cầu
cụ bổ sung để cài đặt, chẳng hạn như một phiên bản nhất định của LVM hoặc phần mềm tấn công gói Lịch sử Linux đã khó đạt sự đồng thuận về giao diện lập trình và các công
cụ tiêu chuẩn, vì có rất nhiều hệ thống tập tin trình bày những tính năng rất khác nhau
Kể từ phiên bản thương mại của UNIX có một số lượng giới hạn hệ thống tập tin
để hỗ trợ, công cụ và phương pháp của họ được chuẩn hóa hơn Ví dụ, kể từ khi chỉ có một hệ thống tập tin chính trên Irix, chỉ có một phương pháp được sử dụng để thiết lập danh sách kiểm soát truy cập Điều này làm cho nó đơn giản hơn nhiều cho người dùng cuối cũng như hỗ trợ nhà cung cấp
6. Quản trị hệ thống
Mặc dù một số bản phân phối Linux đi kèm với một công cụ quản lý hệ thống tiêu chuẩn, chẳng hạn như YaST SUSE, có không phải là một tiêu chuẩn Linux toàn trên các công cụ để quản lý hệ thống Tập tin văn bản và các dòng lệnh công cụ có sẵn, nhưng chúng có lẽ tương đối cồng kềnh và đôi khi khó nhớ Mỗi phiên bản thương mại của UNIX có giao diện quản lý riêng của mình Từ giao diện này, các khía cạnh của toàn bộ
hệ thống có thể được điều chỉnh và thay đổi Một ví dụ này là Giám đốc Quản trị hệ thống (SAM) trên HP-UX
Từ bên trong SAM, có những mô-đun trong đó:
• Người dùng hoặc nhóm có thể được quản lý
• Tham số hạt nhân có thể được sửa đổi
• Mạng được cấu hình
• Đia được cấu hình và khởi tạo
• X cấu hình máy chủ có thể được thay đổi
Công cụ này là tốt bằng văn bản và kết hợp tốt với các tập tin văn bản back-end Không
có công cụ này cho Linux Thậm chí YaST SUSE là gần như không đầy đủ, hoặc tương thích
Một khía cạnh của UNIX và Linux xuất hiện là khác nhau cho hầu hết các phiên bản của UNIX và Linux là vị trí của các bản thảo khởi động hệ thống Luckily / sbin /
Trang 7init và / etc / inittab là tại các địa điểm tiêu chuẩn Nhưng ngoài ra, một số bản thảo được khởi động tại các địa điểm khác nhau Bảng 2 liệt kê các vị trí của các kịch bản khởi động
hệ thống khác nhau cho UNIX và Linux phân phối
Bảng 2 Vị trí của các bản thảo khởi động hệ thống trên các phiên bản Unix và Linux khác nhau
Bởi vì có nhiều bản phân phối khác nhau của Linux và số lượng gần như vô hạn của ứng dụng và phiên bản khác nhau, quản lý phần mềm trên Linux luôn luôn có một chút khó khăn Có một loạt các công cụ quản lý gói khác nhau có sẵn Các công cụ chính xác phụ thuộc vào bản phân phối Linux bạn đang sử dụng Kết quả nhầm lẫn hơn nữa từ các bản phân phối khác nhau bằng cách sử dụng Package Manager (RPM) định dạng tập tin, kéo thả, nhưng bê ngoài vẫn không tương thích Phân mảnh này đã dẫn đến vô số các lựa chọn khác nhau, và nó không phải là luôn luôn rõ ràng mà hệ thống đang được sử dụng trong một môi trường đặc biệt
Mặt khác, các nhà cung cấp UNIX sử dụng gói quản lý tiêu chuẩn Mặc dù có những ứng dụng khác nhau và các định dạng trong các biến thể UNIX thương mại khác nhau trong một phiên bản cụ thể, môi trường ứng dụng là phù hợp và ổn định Ví dụ, Solaris đã sử dụng các công cụ quản lý gói kể từ khi ra đời Nó sẽ như vậy, và rất có thể
Trang 8sẽ luôn luôn như vậy, các công cụ tương tự để xác định, thêm hoặc gỡ bỏ các gói trên Solaris
Nhắc lại rằng các nhà cung cấp UNIX thương mại cung cấp các phần cứng đi kèm với hệ điều hành của họ, họ có thể giới thiệu các tính năng phần cứng mà là khó khăn hơn nhiều cho Linux để bao gồm Ví dụ, phiên bản Linux gần đây đã cố gắng hỗ trợ các thành phần trao đổi nóng trong phần cứng (với sự thành công khác nhau) Phiên bản UNIX thương mại đã có các tính năng này trong nhiều năm Ngoài ra còn có giám sát phần cứng tốt hơn trên các phiên bản UNIX thương mại Các nhà cung cấp có thể viết trình điều khiển và móc vào hệ điều hành của họ có thể theo dõi sức khỏe phần cứng, chẳng hạn như lỗi bộ nhớ ECC hoặc các thông số cung cấp điện, hoặc bất cứ thành phần phần cứng khác Điều này loại hỗ trợ trên Linux là rất sớm
Phần cứng UNIX thương mại cũng có các tùy chọn khởi động đầu tiên xa tiên tiến hơn Trước khi khởi động hệ điều hành, có nhiều tùy chọn để quyết định làm thế nào để khởi động, kiểm tra sức khỏe hệ thống, hoặc thiết lập các thông số phần cứng.BIOS là tiêu chuẩn trong máy tính có ít, nếu có, của các tính năng này
7. Ứng dụng sẵn có
Hầu hết các ứng dụng cốt lõi đều giống nhau giữa UNIX và Linux Ví
dụ: cp, ls, vi, và cc là các lệnh có sẵn trong cả UNIX và Linux Các phiên bản Linux có
xu hướng dựa trên các phiên bản GNU của những công cụ này, nhưng các phiên bản UNIX hiện nay được dựa trên các công cụ UNIX ban đầu Các công cụ trên UNIX đã rất
ổn định và rất ít khi thay đổi Đây không phải là để nói rằng phiên bản thương mại của UNIX không có thể sử dụng những công cụ GNU Trong thực tế, nhiều nhà cung cấp UNIX thương mại bao gồm nhiều công cụ GNU trong cài đặt của họ, hoặc như tùy chọn miễn phí Một số chương trình miễn phí, chẳng hạn như emacs hay Perl, không có đối tác
tự do Hầu hết các nhà cung cấp cung cấp các gói như tiền biên dịch được hoặc cài đặt tự động hoặc có sẵn như là một thành phần tùy chọn
Mở ứng dụng mã nguồn và chức năng trên tất cả các bản phân phối Linux Có một lượng lớn các phần mềm miễn phí có sẵn cho Linux là hoàn toàn miễn phí Nhiều trong
số các ứng dụng này đã được chuyển hoặc có sẵn trong một số phiên bản thương mại của UNIX
Khi nói đến không tự do hoặc các ứng dụng mã nguồn đóng (CAD, tài chính, thiết
kế đồ họa).Trong khi một số nhà cung cấp phần mềm đã phát hành phiên bản của chương trình của họ cho Linux, phần lớn dường như trì hoãn việc phát hành của họ cho đến khi
áp dụng Linux đạt đến phiên bản hoàn thiện hơn
Mặt khác, phiên bản thương mại của UNIX có một lượng lớn hỗ trợ cho các ứng dụng cấp doanh nghiệp, chẳng hạn như Oracle hay SAP Trong vấn đề này LINUX còn thiếu, ứng dụng lớn hơn để được chứng nhận, trong khi phiên bản thương mại của UNIX không thay đổi rất nhiều từ phiên bản phát hành Linux có thể thay đổi rất nhanh không chỉ giữa các phân phối khác nhau, nhưng đôi khi giữa các phiên bản của cùng một nhà
Trang 9phân phối Điều này làm cho nó rất khó khăn cho các nhà cung cấp ứng dụng để hiểu chính xác môi trường, trong đó công cụ của họ sẽ được sử dụng
8. Hỗ trợ
Một trong những sự khác biệt rõ ràng nhất giữa Linux và UNIX là quan điểm chi phí Các nhà cung cấp UNIX thương mại tính phí một lượng đáng kể tiền để mua và sử dụng các phiên bản của họ về UNIX trên phần cứng tối ưu của họ.Mặt khác, bản phân phối Linux lại hoàn toàn miễn phí, nhưng tính tương đối thấp
Nếu một phiên bản thương mại của UNIX được mua thì các nhà cung cấp thường cung cấp hỗ trợ kỹ thuật để đảm bảo hệ thống hoạt động như mong đợi Hầu hết người dùng Linux không có sự đảm bảo của một công ty đứng đằng sau hệ thống của Linux Chúng phụ thuộc vào sự hỗ trợ của danh sách email, diễn đàn, và các nhóm người dùng Linux khác nhau Những công cụ hỗ trợ không chỉ giới hạn trong Linux Nhiều quản trị viên và người sử dụng phiên bản thương mại của UNIX tham gia vào các nhóm hỗ trợ miễn phí để tìm và cung cấp sự giúp đỡ Nhiều người thậm chí cho các nhóm hỗ trợ miễn phí có nhiều đáp ứng hơn so với hệ thống hỗ trợ các nhà cung cấp thương mại
9. Tính mở
UNIX là 1 HĐH đóng Có lẽ trái với quan điểm của 1 số người, cho rằng Linux
mở thì UNIX cũng là mở, nhưng thực ra nó là nguồn đóng Và câu hỏi đặt ra là: Nếu UNIX là nguồn đóng thì tại sao nhiều hãng lại có mã nguồn để phát triển riêng? Câu trả lời có lẽ khiến bạn càng bất ngờ Ban đầu, UNIX được phân phối cho các trường đại học
và những doanh nghiệp có nhu cầu, với đầy đủ mọi thứ từ mã nguồn đến các công cụ lập trình Nói cách khác, nếu UNIX là 1 chiếc xe thì khách hàng được cung cấp mọi thứ từ bản vẽ đến từng cái tua vít Cũng chính vì thế mà các trường học và công ty có thể chỉnh sửa, thậm chí viết lại cả HĐH
Linux mặt khác là 1 HĐH mã nguồn mở, người ta có thể tải, sử dụng, chỉnh sửa miển phí mà ko gặp trở ngại về luật bản quyền
10.The Open Group và Single UNIX Specification
Có lẽ bạn cảm thấy khó hiểu khi các phiên bản của UNIX hầu hết là nguồn đóng nhưng chúng lại được gọi chung là UNIX Vậy cái tên UNIX là mở hay sao? Nếu nghĩ vậy thì bạn đã lầm UNIX là một cái tên được đăng ký thương hiệu và được sở hữu bởi
Trang 10một tổ chức tài chính Mỹ gọi là Open Group.
Open Group đưa ra 1 tiêu chuẩn cho các HĐH máy tính gọi là Single UNIX
Specification (SUS), và những HĐH nào đạt được các yêu cầu của SUS thì mới được gọi
là UNIX, ko cần biết nó được xây dựng dựa trên cái gì (HĐH Mac OS X được phát triển dựa trên nền tảng BSD, vốn ko thoả mãn SUS, nhưng nó được viết lại và đạt yêu cầu nên được phép mang thương hiệu UNIX) Ngoài ra, những HĐH khác ko thoả mãn SUS sẽ
ko được mang thương hiệu UNIX và ko được gọi là based mà được gọi là UNIX-like (giống UNIX), điển hình là BSD, FreeBSD
Linux được Linus Torvalds viết trên 1 chiếc máy chạy HĐH MINIX, sau đó, nó được phát triển ngày càng hoàn thiện và có thể chạy độc lập với MINIX Mà MINIX vốn chỉ là HĐH UNIX-like, nên có thể thấy quan hệ bà con giữa UNIX và Linux hơi bị xa chứ ko gần như chúng ta tưởng
10. Dự án GNU và giấy phép GPL
GNU là chữ viết tắt của GNU’s not UNIX Đây là một dự án do Richard Stallman khởi xướng vào năm 1983 với mục đích tạo ra 1 hệ thống phần mềm có thể cạnh tranh và thay thế phần mềm UNIX Nhằm mục đích tạo ra phầm mềm miễn phí và tự do về các mặt như: người sử dụng được quyền chạy, sao chép, phân phối, nghiên cứu, thay đổi và cải thiện phần mềm đó Stallman cũng cho ban hành giấy phép GNU General Public License (GNU GPL) Giấy phép này yêu cầu nhà phân phối phần mềm phải kèm theo mã nguồn của phần mềm đó (mã nguồn mở), và mã nguồn Linux được phân phối tự do cũng
là vì lý do này
Tổng kết
UNIX và Linux về cơ bản cũng không khác nhau nhiều, việc một nhà phát triển hay một doanh nghiệp muốn chuyển hệ thống máy tính của họ từ UNIX sang Linux cũng không quá khó khăn mặc dù các hệ thống tập tin hoặc nhân HĐH có thể khác nhau Nhưng dù sao 2 người trông giống nhau ko có nghĩa họ là bà con với nhau Linux và UNIX không phải anh em mà còn là kẻ thù, ít nhất là về quan điểm của Linus Torvalds
và dự án GNU
TÀI LIỆU THAM KHẢO