Mối quan hệ giữa Unix, Linux, Ubuntu, Debian và Android là gì?


61

Mối quan hệ giữa Unix, Linux, Ubuntu và Debian là gì?

Tôi nghi ngờ rằng tất cả chúng đều là các Hệ điều hành dựa trên nhau - tương tự như cách Windows dựa trên DOS. Sự nghi ngờ của tôi có đúng không? Các hệ điều hành này có cùng loại mối quan hệ với nhau như Windows có với DOS không? Chúng có liên quan đến DOS hay Windows không?


4
Khm, windows không dựa trên DOS nữa. Nếu tôi nhớ lại phiên bản cuối cùng chạy trên DOS là Windows 3.11.
Ajasja

12
Rất tiếc, xấu của tôi: theo windows.microsoft.com/en-us/windows/history#T1=era5 Geek trivia: Windows 98 is the last version based on MS‑DOS.
Ajasja

10
@Ajasja Windows Me cũng dựa trên DOS. Lưu ý rằng phiên bản Windows không dựa trên DOS đầu tiên, Windows NT 3.1, đã được phát hành vào năm 1993.
ntoskrnl

10
Ok folks, điều DOS / Windows đã được xử lý thường xuyên đủ. Câu hỏi này là về Linux và Unix.
slhck

2
Android cũng sử dụng nhân Linux.
XUÂN

Câu trả lời:


50

Unix là một Hệ điều hành được phát triển bắt đầu từ năm 1969. Ban đầu nó được thiết kế để trở thành trạm phát triển chứ không phải nền tảng ứng dụng, nhưng, khi sự phát triển tiến triển và các nhà cung cấp khác nhau đã tham gia, Unix đã được thêm vào.

Unix ban đầu được viết bằng cách lắp ráp, nhưng sau đó được phát triển thành C.

Liên quan đến những cái khác, nhân Linux giống như Unix.

Linux là một hạt nhân giống Unix. Nó ban đầu được phát triển bởi Linus Torvalds trong những năm 1990. Hạt nhân này đã được sử dụng trong các bản phát hành phần mềm ban đầu của Phong trào phần mềm miễn phí để biên dịch một Hệ điều hành mới. Hạt nhân chịu trách nhiệm quản lý tài nguyên hệ thống và phân bổ chúng cho các ứng dụng.

Lưu ý ở đây mặc dù nhiều bản phát hành của nó được gọi là 'Linux', đây là một khía cạnh cụ thể tạo nên Hệ điều hành cùng với trình soạn thảo văn bản, trình biên dịch, trình gỡ lỗi, v.v. và không phải là Hệ điều hành.

Debian là một trong những hình thức của Hệ điều hành này được phát hành vào đầu những năm 1990 và là một trong những phiên bản Linux phổ biến nhất hiện nay.

Ubuntu là một Hệ điều hành khác được phát hành năm 2004 và dựa trên Hệ điều hành Debian. Nó rất phổ biến vì dễ học mà không cần sử dụng thiết bị đầu cuối.

  • Linux: Kernel (Vẫn đang được phát triển)
  • Debian: Hệ điều hành sớm cho Ubuntu (Vẫn đang trong quá trình phát triển)
  • Ubuntu: Hệ điều hành mới hơn dựa trên Debian (Vẫn đang trong quá trình phát triển)
  • Unix: Một hệ điều hành cũ mà nhân Linux dựa trên

Đọc: Hạt nhân Linux
Đọc Debian
Đọc Ubuntu
Đọc: Unix

Nếu bạn thực sự quan tâm đến việc tìm hiểu lịch sử đằng sau tất cả những điều này, tôi khuyên bạn nên xem một bộ phim có tên Revolution OS, đi sâu vào lịch sử đằng sau sự phát triển của phong trào phần mềm miễn phí này.


7
Linux không "dựa trên Minix" một cách có ý nghĩa, ngoại trừ việc Linus đã nhìn thấy nguồn Minix trước khi anh ta bắt đầu xem liệu anh ta có thể tự mình làm một cái gì đó như thế không. Không có phả hệ mã từ Minix trong Linux.
Henning Makholm

27
Linux cũng không dựa trên Unix. Không có mã từ Unix được sử dụng trong Linux. Debian không phải là "hệ điều hành ban đầu", nó hiện đại như Ubuntu và vẫn đang được phát triển tích cực. Trình soạn thảo văn bản, trình biên dịch và trình gỡ lỗi không phải là một phần của HĐH! Chúng là những ứng dụng chạy trên nó. Ồ, và không có thứ gì như Debian Unix !
terdon

3
@terdon | Tôi không nói bất kỳ mã nào từ Unix đã được sử dụng trong Linux. Vấn đề là nó giống như Unix. Mặc dù tôi đã không đặt nó tốt. Tôi sẽ chỉnh sửa cho phù hợp. Ý tôi là Debian sớm liên quan đến Ubuntu. Như trong đó có ngày phát hành sớm hơn. Tôi hoàn toàn nhận thức được cả hai vẫn đang trong quá trình phát triển rất tích cực. Tôi không biết bit của bạn về Debian Unix đang nói về cái gì. Debian Unix là gì?
Matthew Williams

9
@kostix Vậy, theo định nghĩa đó, WoW trở thành một phần của HĐH Windows sau khi được cài đặt? Tôi khá chắc chắn rằng dòng này gần với những gì terdon mô tả.
Izkata

9
OS X là hậu duệ Unix trực tiếp thông qua BSD, là HĐH Unix màu xanh thật (không giống như Linux không tuân theo Đặc tả UNIX đơn) thông qua sự phát triển từ NeXTStep phát triển từ BSD. Chỉ có hai triển khai gốc của Unix: BSD và System V cả hai đều quyết định trực tiếp từ mã gốc của AT & T Unix. Trên thực tế, OS X là một biến thể Unix đã được đăng ký (Apple đã chứng nhận nó với Thông số kỹ thuật Unix đơn) và do đó, họ được phép sử dụng nhãn hiệu "UNIX" khi tiếp thị OS X.
slebetman

71

Có một điều nữa bạn cần biết: GNU.

GNU là viết tắt của "GNU's Not Unix" và đây là một nỗ lực để tạo ra một phiên bản Unix độc lập, miễn phí, được phát triển bởi Tổ chức phần mềm miễn phí.

Họ đã đi rất xa, họ đã tạo ra một trình biên dịch C, một thư viện C, một trình liên kết, trình soạn thảo, trình bao, tất cả các lệnh bạn mong đợi trong một trình bao Unix điển hình, rất nhiều thứ. Nhưng hạt nhân (được gọi là "Hurd") vẫn chưa hoàn thành. Tất cả những thứ bên ngoài kernel (chạy như các tiến trình thuộc sở hữu của người dùng) được gọi chung là "vùng người dùng".

Khi Linus Torvalds tạo ra nhân Linux của mình, anh ta đã không tạo ra một vùng người dùng. Anh ta chỉ có một hạt nhân, nó cũng không phải là một hệ thống đầy đủ. Hóa ra là có thể biên dịch kernel của anh ấy và sử dụng nó trong vùng người dùng GNU (điều này có lẽ không tầm thường, nhưng tôi không ở đó và không biết).

Những người dùng HĐH thường gọi là "Linux" thực sự bắt đầu như là nhân Linux với vùng người dùng GNU và rất nhiều thứ khác đã được thêm vào kể từ đó. Kết quả là Tổ chức phần mềm miễn phí luôn khẳng định rằng nó phải được gọi là GNU / Linux.

Debian là một "bản phân phối" của Linux; họ đã làm tất cả công việc khó khăn để biên dịch tất cả các công cụ khác nhau mà bạn cần để tạo ra toàn bộ hệ thống Linux, biên dịch chúng và cung cấp chúng để tải xuống dưới dạng một loạt các đĩa mềm. Hoặc một đĩa CD, sau này. Những người khác cũng làm như vậy, ví dụ Slackware, Red Hat, v.v.

Nhiều bản phân phối khác sau đó đã được tạo ra, thường không phải từ đầu, mà lấy một bản phân phối hiện có làm điểm khởi đầu và thêm phần mềm bổ sung cho nó, hoặc tổ chức nó theo cách khác, hoặc bất cứ điều gì. Ubuntu đã dựa trên Debian theo cách này.


19
Bên ngoài FSF, hầu hết mọi người chỉ đảo mắt mỗi khi Stallman khăng khăng sử dụng GNU / Linux và tiếp tục chỉ sử dụng cái sau. Trong một số cách đó không thực sự công bằng; nhưng đó là thế giới thực.
Dan Neely

20
Họ có một điểm. Có lần tôi đã cài đặt một máy "Linux từ đầu" và khoảng 75 trong số 90 gói bạn cần để có một hệ thống đang chạy đến từ GNU. Tất nhiên, tôi cũng không bao giờ nói GNU / Linux, nhưng tôi nghĩ cần phải biết về GNU để tách Unix / Linux / Debian, v.v.
RemcoGerlich

4
Đồng thời, bất kỳ bản phân phối không tầm thường nào trong những ngày này sẽ bao gồm rất nhiều thứ không phải là một phần của GNU và hạt nhân Linux. Có ai thực sự muốn xâu chuỗi tất cả những cái đó thành một cái tên ít thực tế hơn các danh hiệu đầy đủ của các vị vua trị vì?
Dan Neely

13
Gọi nó là GNU / Linux có thể hữu ích, như một cách để phân biệt với Android Linux (vốn không có chút gì với người dùng GNU).
Đánh dấu

2
@Clearer Thuật ngữ "nguồn mở" có ý nghĩa tương tự như thuật ngữ "nguồn" - trong bối cảnh nó được sử dụng, điều đó có nghĩa là bạn có thể sử dụng nguồn để kiểm tra nhiều hơn. Tranh luận ngữ nghĩa theo cách này là vô nghĩa vì bản thân chúng ta có thể mở rộng điều này vô thời hạn và tất cả ngôn ngữ bị phá vỡ. Chúng tôi có một thuật ngữ riêng cho mã nguồn mà bạn chỉ có thể xem và đó là "nguồn chia sẻ". Đó là một thuật ngữ mới hơn bởi vì nó không có nhiều ý nghĩa cho đến gần đây. Nếu chúng ta sẽ tranh luận về ngữ nghĩa, tất cả phần mềm là nguồn mở do sự cần thiết vì bạn có thể đọc mã máy.
điện tử

16

" Unix " ban đầu là tên của một hệ điều hành cho PDP-11, được phát triển tại Bell Labs vào những năm 1970. Thiết kế của nó có ảnh hưởng vô cùng lớn, và nó đã được sao chép và thực hiện lại hàng chục lần.

Ngày nay, "Unix" là một thuật ngữ chung cho toàn bộ họ hệ điều hành, một số nhưng không phải tất cả đều được truyền trực tiếp từ hệ điều hành gốc đó; bất cứ điều gì có giao diện lập trình hệ thống chính tương thích với đặc tả API POSIX.1 đều có thể được gọi là triển khai Unix một cách hợp pháp - và có hàng tá trong số chúng. Việc liệt kê các hệ điều hành vẫn còn được sử dụng rộng rãi ngày nay KHÔNG phải là triển khai Unix:

  • các cửa sổ
  • Z / OS của IBM và người thân của họ, đã được phát triển liên tục từ trước năm 1970
  • một vài thứ được nhúng sâu giống như các thư viện thời gian chạy hơn là các hệ điều hành hoàn chỉnh

(Ngoài ra còn có một loạt các nguyên mẫu nghiên cứu thử nghiệm đang cố gắng vượt ra ngoài thiết kế Unix, nhưng chúng không đủ điều kiện là "sử dụng rộng rãi", than ôi.)

" Linux " là tên chung của một triển khai Unix. Nó đã xuất hiện từ những năm 1990 và là một trong năm triển khai được sử dụng phổ biến nhất hiện nay - có thể là # 1 hoặc # 2, tùy thuộc vào cách bạn đếm những thứ này.

Linux khác thường ở chỗ kernel, thư viện C, trình biên dịch, tập hợp các tiện ích "shell" cơ bản, v.v ... đều được phát triển bởi các nhóm người khác nhau; hơn nữa, có nhiều hơn một sự lựa chọn cho hầu hết các phần đó. Ai đó phải chọn một bộ các mảnh và đặt chúng lại với nhau và đảm bảo chúng hoạt động đúng cách kết hợp. Rằng ai đó (thường là một nhóm người, ngày nay) theo truyền thống được gọi là nhà phân phối Linux và đầu ra của họ là một bản phân phối . DebianUbuntu là bản phân phối của Linux; chúng từng có liên quan cực kỳ chặt chẽ nhưng từ đó đã chuyển hướng khá nhiều.

(Về mặt kỹ thuật, tên Linux đề cập cụ thể đến hạt nhân, và nó muốn được một chút lạ để gọi một hệ điều hành Linux nếu bạn không sử dụng hạt nhân đó, nhưng có những người giữ mọi thứ khác và trao đổi ra hạt nhân, ví dụ như Debian kFreeBSD .)

(Chú thích cho trẻ em: tất cả sự bóng bẩy về sự khác biệt tốt trong bài đăng này là 100% có chủ ý.)


Có thể đáng để nói rằng Ubuntu bắt đầu như (và vẫn là) một dẫn xuất của Debian. Khác hơn thế, câu trả lời tuyệt vời!
Thane Brimhall

Tôi thích câu trả lời này tốt nhất!
Niko Bellic

Ý bạn là "Linux" là tên chung của một triển khai Unix? Tôi nghĩ họ chia sẻ không có mã?
Koray Tugay

@KorayTugay Chia sẻ mã với bản gốc lịch sử không còn là một tiêu chí thú vị nữa, vì gần như tất cả các mã đó đã được thay thế. Theo như tôi quan tâm, bất cứ điều gì có giao diện lập trình hệ thống chính phù hợp với POSIX.1 là việc triển khai Unix bất kể mã đến từ đâu. Nó phải là giao diện lập trình hệ thống chính , mặc dù; các lớp tương thích (mà cả Windows và z / OS đều có) không được tính.
zwol

7

UNIX và Linux không liên quan đến DOS hay Windows.

DOS là sự phát triển vượt bậc của hệ điều hành CP / M 8 bit phổ biến vào cuối thập niên 70 / đầu thập niên 80.

Windows NT (trong đó XP, Vista, 7 và 8 dựa trên) được Microsoft phát triển mới bắt đầu từ năm 1993 và mượn rất nhiều khái niệm và ý tưởng từ VAX VMS. Windows NT được phát triển để trở thành một hệ điều hành an toàn "thực tế", hiện đại, đa người dùng, đa tác vụ.

Windows 3.1, 95, 98 và ME có khá nhiều ý tưởng / thực thi của DOS về đa tác vụ (không phải nhiều người dùng hoặc bảo mật).

Về UNIX, Linux, v.v.:

  • UNIX là một kernel / API / hệ điều hành đã có từ những năm 70.

    • Một hạt nhân cung cấp một nền tảng cho các chương trình chạy, trong trường hợp Unix, nó cho phép nhiều chương trình chạy trên một máy tính và nhiều người dùng truy cập vào nó. Một hạt nhân tự chạy không có chương trình, chúng phải được phát triển và cung cấp riêng.

    • API là một cách tiêu chuẩn để các chương trình nói chuyện với kernel. Đó là một phần của hạt nhân.

    • Một hệ điều hành là một kernel cộng với các chương trình tiện ích phổ biến để quản lý và quản trị hệ thống. Chương trình tiện ích chung cho UNIX bao gồm các chương trình cơ bản mà quản lý dịch vụ và thông tin đăng nhập ( init), một vỏ cho phép bạn nhập lệnh ( sh, bash), và các lệnh quản lý tập tin cơ bản như cp, ls, mvvv

  • Linux là một hạt nhân giống như UNIX được phát hành theo GPL, lúc đầu hoạt động trên phần cứng PC, nhưng bây giờ hoạt động trên hầu hết mọi thứ với CPU (nếu bạn được phép chạy nó).

    • GPL là giấy phép cho biết bất kỳ ai sửa đổi / cải tiến Linux và xuất bản các sửa đổi của họ, được yêu cầu để cung cấp các sửa đổi đó cho công chúng và cho phép những người khác làm điều tương tự.

    • Linux triển khai API UNIX, vì vậy các chương trình UNIX có thể chạy thường không được sửa đổi nếu chúng được biên dịch lại (điều này dễ hơn nhiều so với viết lại từ đầu) - vì chúng sử dụng API UNIX, nên chúng không quan tâm nếu chúng thực sự nói chuyện với Linux hoặc UNIX hoặc một cái gì đó khác, miễn là API làm điều tương tự.

  • Debian là một bản phân phối Linux. Nó bắt đầu vào năm 1993 và là một trong những bản phân phối lâu đời nhất. Các bản phân phối Linux thường cung cấp:

    • một nhân Linux,
    • chương trình tiện ích cơ bản,
    • một trình cài đặt để bạn có thể cài đặt Linux trên hệ thống của bạn,
    • trình quản lý gói (cộng với định dạng cho gói - sử dụng Debian .deb)
    • kho lưu trữ các gói

      Vì vậy, bạn có thể cài đặt bản phân phối, cài đặt và chạy môi trường Linux cơ bản, sau đó gọi các gói từ kho lưu trữ của bản phân phối, sử dụng trình quản lý gói, khi bạn cần phần mềm. Nó khác với Windows nơi phần mềm truyền thống đã được phân phối trên đĩa CD và nhiều năm trôi qua giữa các phiên bản và bản cập nhật. Phần mềm trong kho thường được cập nhật thường xuyên và người quản lý gói xử lý tải xuống và áp dụng mọi cập nhật.

    • Debian cũng nghiêm ngặt về việc chỉ phát hành phần mềm nguồn mở, nghĩa là những thứ yêu cầu phần mềm độc quyền để chạy, như thẻ video hiện đại hoặc chipset Wi-Fi, sẽ không hoạt động tối ưu (hoặc hoàn toàn) với Debian "ngoài luồng".

    • Debian thường tạo các phiên bản mới một cách chậm chạp và quan tâm đến sự ổn định hơn các tính năng mới. Điều này làm cho Debian trở thành một yêu thích cho các máy chủ có phần cứng tương đối tĩnh và độ ổn định của phần mềm là quan trọng.

  • Ubuntu là một "nhánh" của Debian

    • Debian cho phép người khác tạo các bản phân phối dựa trên nó, sử dụng các công cụ quản lý gói của nó. Làm điều này được gọi là "forking."

    • Ngoài nhãn hiệu và giao diện cụ thể của Ubuntu, Ubuntu còn bổ sung thêm các kho lưu trữ dành riêng cho Ubuntu có chứa phần mềm mới hơn và mới hơn. Ubuntu "dễ hiểu hơn" so với Debian - nó được tạo ra để thân thiện và hữu ích hơn từ quan điểm phi kỹ thuật hoặc phi UNIX. Đó là tất cả về các tính năng mới và phần cứng làm việc ra khỏi hộp.

    • Hầu hết các phần mềm hoạt động trên Debian sẽ hoạt động trên Ubuntu. Một cách khác có thể là một chút vấn đề vì phần mềm của Debian thường cũ hơn. Bạn có thể chạy vào một số thành phần cơ bản cần cập nhật để chạy công cụ Ubuntu, nhưng không thể cập nhật vì không có phiên bản mới hơn trong kho repo Debian. Bạn có thể cập nhật chúng theo cách thủ công, nhưng sau đó có thể yêu cầu các thành phần khác được cập nhật, v.v.

    • Nên lưu ý rằng Debian ngày nay rất thân thiện và biết về phần cứng hiện đại hơn trước.


Windows NT không được phát triển mới vào năm 1993. NT chỉ đơn giản là một bản sao được đổi thương hiệu của OS / 2 3.0 với Trình quản lý trình bày được thay thế bởi Windows GDI.
Carey Gregory

Điểm tốt. Tôi đã không xem xét hệ điều hành / 2. Không phải khả năng tương thích OS / 2 trong NT đã được triển khai như một hệ thống con (như API Win32 và API POSIX trên API NT gốc)?
LawrenceC

1
NT không chính xác có khả năng tương thích OS / 2 vì đó OS / 2. Ngoài các quy ước đặt tên UI và API, ban đầu chúng là cùng một cơ sở mã chính xác. Ví dụ: trong phiên dòng lệnh khi xảy ra lỗi, văn bản thông báo lỗi bạn nhận được trên NT và OS / 2 giống hệt nhau. Họ dần dần xa nhau, nhưng tất cả các khái niệm cơ bản được triển khai trong NT cho đến ngày nay ban đầu là một phần của thiết kế OS / 2.
Carey Gregory

6

Unix = một đặc tả hệ điều hành thương mại

Linux = bản sao Unix miễn phí (chỉ nhân)

Debian = bản phân phối Linux (Linux + các thứ khác)

Ubuntu = Debian phân phối lại (Debian làm cho người dùng cuối thân thiện hơn)


4

"Unix" là nhãn hiệu cho một hệ điều hành được lấy cảm hứng từ hệ điều hành cổ điển những năm 1960 có tên "Multics"; "Unix" là một trò chơi chữ có nghĩa là nó giống như Multics, nhưng không phức tạp lắm. ( Lưu ý cá nhân: Vào cuối năm 1980, tôi đã làm việc trên một hậu duệ thương mại hóa của Multics đó là không . Một loại Unix) Phát triển của Unix bắt đầu vào năm 1969 trên một DEC PDP-7, và chuyển đến một PDP-11 vào năm 1970. Trong Năm 1972, nó được viết lại bằng C; đến thời điểm đó nó đã được viết bằng ngôn ngữ lắp ráp. (Ngôn ngữ lắp ráp DEC tương đối thân thiện với lập trình viên, nhưng nó vẫn là ngôn ngữ lắp ráp.) Nó vẫn chủ yếu là một dự án nghiên cứu của Bell Labs thông qua cái gọi là "Phiên bản 7", được phát hành năm 1979.

Trên đường đi, khoảng năm 1977, một chi nhánh thay thế đã phát triển: "BSD" (Phân phối phần mềm Berkeley). AT & T đã cấp phép một phiên bản thương mại của chi nhánh, "System III", vào năm 1982, và sau đó là "System V" vào năm 1983. Sau đó, có một loạt các cuộc đấu tranh hợp pháp giữa AT & T và Berkeley, làm tổn thương cả hai, cho đến khi vụ kiện cuối cùng được giải quyết.

Một phần để đối phó với các trận chiến trên System V và BSD, hai dự án mới đã bắt đầu: Minix (của Andrew Tanenbaum, nhân rộng các tính năng chính của hạt nhân gia đình Unix hiện tại, với thiết kế vi nhân) và dự án GNU (sao chép hầu hết về các phần không phải hạt nhân quan trọng của Unix hiện có), cả hai đều có mã hoàn toàn mới tránh được các rắc rối pháp lý giữa System V và BSD. Những nỗ lực tiêu chuẩn hóa đã cố gắng giải quyết sự khác biệt giữa hai nhánh chính; kết quả chính là POSIX.

Năm 1991 - lấy cảm hứng từ Minix, các nhánh Unix cũ hơn và sự thiếu tiến bộ trên nhân GNU - Linus Torvalds đã tạo ra Linux. Đó cũng là tất cả các mã mới và được trả về loại nhân cũ của Unix chứ không phải là loại nhân vi mô loại Minix.

Năm 1997, Apple tiếp quản Nextstep dựa trên BSD và cuối cùng phát triển nó thành một hệ điều hành Mac mới và điều chỉnh nó cho các thiết bị khác của Apple.

Linux tồn tại trong một loạt các bản phân phối , đó là các gói bao gồm nhân Linux và các tiện ích các loại. Debian là một bản phân phối của Linux và nó đã phân nhánh thành một nhóm các bản phân phối. Ubuntu là một bản phân phối là một phần của gia đình Debian và đến lượt nó được phân nhánh thành một họ phân phối.


Windows và DOS có một lịch sử rất khác nhau. Vào khoảng năm 1963, DEC đã chế tạo PDP-6, có một hệ điều hành có tên Monitor. Khi họ chế tạo PDP-10, họ đặt tên cho hệ điều hành là "TOPS-10". Gary Kildall đã viết một hệ điều hành cho máy tính gia đình Intel 8080 và đặt tên là "CP / M"; nó được lấy cảm hứng từ TOPS-10. CP / M lấy cảm hứng từ "86-DOS", được Tim Paterson viết cho các máy 8086 gia đình (sử dụng hệ thống tập tin 8 bit "độc lập BASIC-86" 8 bit của CP), bởi vì CP / M-86, phần tiếp theo của gia đình 8086 cho CP / M, đã bị trì hoãn.

IBM muốn cấp phép CP / M-86 cho máy 8088 đầu tiên của mình, nhưng đã có vấn đề với thỏa thuận này. IBM đã nghe nói về 86-DOS và yêu cầu Microsoft lấy nó cho họ. Microsoft đã cấp phép cho nó (và sau đó đã mua nó) và cấp phép cho IBM là "PC-DOS" - và cấp phép cho người khác là "MS-DOS".

Một thời gian sau, lấy cảm hứng từ Visi On (được lấy cảm hứng từ Xerox Star, được biết đến như là nguồn cảm hứng cho Lisa và Macintosh của Apple), Microsoft đã phát triển Windows như một tiện ích bổ sung cho MS-DOS. Các phiên bản ban đầu không thành công lắm, nhưng cuối cùng Windows 3.0 cũng đủ tốt để thành công về mặt thương mại. Một số phiên bản mới hơn (3.1, 3.11, 95, 98 và ME) đều chạy trên DOS, nhưng Microsoft nhận ra rằng DOS đang kìm hãm tiến trình trên Windows. Gần cuối, phần lớn nhánh của Windows là 32 bit, nhưng nó vẫn phụ thuộc vào DOS 16 bit.

Trong nỗ lực khắc phục những hạn chế của DOS, Microsoft đã làm việc với IBM trên OS / 2, có nghĩa là "DOS tốt hơn DOS và Windows tốt hơn Windows". Các phiên bản ban đầu không tốt lắm, tuy nhiên, cuối cùng IBM và Microsoft đã kết thúc sự phát triển chung. IBM đã tiếp quản nó và cuối cùng đã tạo ra một hệ điều hành / 2 khá tốt.

Trong khi đó, DEC đã tạo ra loạt máy tính VAX để thay thế dòng PDP-11 và hệ điều hành VMS để chạy trên nó. Nó đã chia sẻ một số lịch sử với hệ điều hành TOPS-10, nhưng chúng không tương thích với nhau.

Để chống lại khả năng xảy ra sự cố với OS / 2, Microsoft đã thuê một nhóm các nhà phát triển VMS hàng đầu (và một số nhà nghiên cứu vi nhân) để xây dựng một Windows 32 bit mới, từ đầu. Sâu xa hơn, nó giống như một sự thích ứng vi nhân với các tính năng tốt nhất của VMS. Trên cùng, nó trông giống như Windows. Bản phát hành đầu tiên của Windows 32 bit là "Windows NT 3.1", tiếp theo là Windows NT 3.5, 3.51 và 4.0, sau đó là Windows 2000 (không có "NT"), XP (Windows 64 bit đầu tiên), Vista, 7 , 8 và 8.1.


Một chủ đề thú vị gắn kết các con đường phát triển hầu hết không liên kết với nhau là DEC. Rất nhiều lịch sử Unix ban đầu được gắn liền với DEC PDP-7, PDP-11 và VAX. DEC PDP-6 và PDP-10 đã truyền cảm hứng cho một số tiền sử DOS. Và các cựu chiến binh của nhóm VAX-VMS của DEC đã xây dựng cốt lõi của gia đình Windows NT.


Viết đúng chính tả là "Linus Torvalds". Ngoài ra, theo cuốn sách "Chỉ để giải trí", Torvalds không biết nhiều về dự án GNU cho đến khi anh phát hành Linux và mọi người ở Usenet khuyến khích anh đặt nó dưới GPL! Ông không bao giờ có ý định viết kernel GNU! (điều này cũng sẽ làm cho các nhà phát triển Hurd buồn)
Josef

Cảm ơn đã sửa lỗi chính tả. Ngay cả khi tôi có hơn 700 từ khác đúng, vẫn hơi xấu hổ khi hiểu sai. Việc làm rõ hạt nhân GNU là hữu ích; mặc dù Torvalds không có ý định viết kernel GNU, anh ta cũng nói rằng anh ta sẽ không viết Linux nếu hạt nhân GNU tồn tại - hoặc nếu các nhà xuất bản của Tanenbaum cho phép anh ta mở Minix nguồn mở. (Torvalds cũng cho biết một mục tiêu là tìm hiểu thêm về 386; hạt nhân là một dự án tốt cho loại điều đó.)
Steve

Tôi có thể chỉ ra một số điều sai với điều này. 86-DOS (ban đầu là QĐOS) được phát triển độc lập như một biện pháp ngăn chặn cho sự phát triển 8086 khi không có CP / M-86 nào được phát hành từ DRI. Quan hệ đối tác giữa IBM và Microsoft đã tan vỡ trước khi phát hành Windows 3.0 vào năm 1990 (Windows 3.0 là phiên bản cất cánh). Mac được ra mắt vào năm 1984, phát triển Windows được lấy cảm hứng từ bản demo Visi On năm 1982 và Windows 1.0 được phát hành vào năm 1985; so sánh với Apple Lisa. Hệ điều hành / 2 1.x không tệ cho những gì họ đã có; kiến trúc là phong nha, phần mềm bản địa là một vấn đề khác. Và như vậy.
CVn

@Michael Kjorling: Thỏa thuận phát triển chung giữa Microsoft và IBM đã tồn tại ít nhất là qua bản phát hành OS / 2 1.3 tháng 12 năm 1990; Windows 3.0 được phát hành vào tháng 5 năm 1990, vì vậy mặc dù cả hai bên đều không hài lòng với JDA vào thời điểm đó, nhưng đó là (tốt nhất tôi có thể nói) vẫn còn hiệu lực. Tôi đã tìm kiếm các bài báo cổ cho thấy sự giải thể trước đó của JDA, nhưng tôi không tìm thấy gì. Tôi sẽ xem xét các điểm khác sau và xem xét lại nếu thích hợp.
Steve

3

Tôi nghi ngờ họ là tất cả các hệ điều hành

Chúng là hoặc tất cả các hệ điều hành. Ngày nay Unix là một nhãn hiệu và không phải là một hệ điều hành.

điều đó có thể dựa vào nhau

Bằng cách này hay cách khác, điều này là đúng. Nhóm thứ hai về cơ bản dựa trên việc triển khai lại nhiều ý tưởng xuất phát từ Unix. Không có mã Unix trong Linux (mặc dù đây là chủ đề của vụ kiện kéo dài mà cuối cùng đã thất bại).

tương tự như cách Windows dựa trên DOS.

Tôi nghi ngờ không có bất kỳ mã PC-DOS nào trong Windows 8, thậm chí có thể không nhằm mục đích tương thích. Có một sự tiến triển rõ ràng từ DOS sang Windows 8 mặc dù. Đây không phải là trường hợp thực sự với Unix và Linux.

Đây có phải là cùng một loại mối quan hệ?

Không thực sự, Quyền sở hữu và sự phát triển của Unix và Linux rõ ràng tách biệt.

Linux là một nhân hệ điều hành ban đầu được phát triển hoàn toàn bởi Linus Torvalds. Nó được dự định giống một chút với Unix và đã thu hút nhiều ý tưởng từ Unix. Torvalds đã không bắt đầu với bất kỳ mã Unix nào làm cơ sở.

Để tạo ra một hệ điều hành có thể sử dụng, bạn đáng chú ý thêm vào nhân Linux một bộ công cụ "GNU" được phát triển độc lập bởi FSF. Ngày nay, bạn cũng thêm một hoặc nhiều hệ thống con cạnh tranh (ví dụ: trình quản lý máy tính để bàn Gnome hoặc KDE). Mỗi trong số này được gọi là "phân phối".

Có rất nhiều bản phân phối như vậy, mỗi bản có sự lựa chọn đặc trưng riêng.

Một số bản phân phối về cơ bản là các hình thức sửa đổi của các bản phân phối khác. Thông thường, một phân phối được gọi là phân phối ngược dòng. Các bản phát hành của phân phối xuôi dòng phụ thuộc vào một mức độ lớn vào các bản phát hành mới của phân phối ngược dòng.

Ubuntu là một bản phân phối hạ lưu của Debian. Một trong đó Ubuntu thêm rất nhiều giá trị (so với một số mối quan hệ khác như CentOS và RedHat có lẽ)


2

Linux mỗi se chỉ là hạt nhân.
Bạn có thể so sánh nhân Linux với nhân Windows.
Sự khác biệt lớn nhất là, Linux sử dụng hạt nhân nguyên khối thuần túy trong đó Windows sử dụng hạt nhân lai .
Nhưng cả hai đều là hạt nhân và người bình thường không thể làm việc chỉ với kernel, vì kernel không nhằm mục đích cho chúng ta người dùng truy cập vào chức năng, mà là giải quyết các tác vụ cần thiết để cung cấp quyền truy cập vào chức năng của chúng ta.

Debian và Ubuntu là hương vị của các bản phân phối. Phân phối là tất cả mọi thứ chạy ON / AROUND kernel. Và vì kernel không thể thực hiện công cụ, bạn sẽ cần một số ứng dụng cơ bản, để nâng Linux trở thành một hệ điều hành hoàn chỉnh. Vì vậy, một số nhu cầu cơ bản mà một bản phân phối cung cấp là:

  • khả năng quản lý thư viện và ứng dụng,
  • quản lý các ứng dụng khởi động,
  • xử lý các giao thức dịch vụ,
  • và một GUI

Không có cái nào trong số này là cần thiết, nhưng cần có chức năng đầy đủ của HĐH "thông thường" như những gì Windows hoặc MAC OS cung cấp.

Ngoài ra Debian là một trong những tổ tiên của phân phối. Đây là một bản phân phối mà rất nhiều bản phân phối phụ thuộc vào / phát triển từ đó. Giống như Ubuntu chẳng hạn.
Bây giờ, tại sao nhiều người sử dụng Ubuntu thay vì Debian?
Bởi vì Debian đi kèm với càng ít phần mềm được cài đặt sẵn càng tốt, nhưng càng nhiều càng cần thiết để chạy một hệ điều hành đầy đủ. (Trường hợp này không có GUI vì chủ yếu được sử dụng trên Máy chủ). Kết quả là, hệ điều hành rất ổn định và lắt léo.
Bây giờ "đa số" mọi người sẽ cần một GUI và có thể muốn nghe nhạc của họ trên PC và máy tính xách tay của họ, truy cập internet, v.v. Với Debian, điều đó sẽ không hoạt động nếu không đầu tư thời gian vào việc cài đặt GUI, trình điều khiển dịch vụ và định cấu hình những cái này và cái kia. Và đây là nơi Ubuntu xuất hiện. Ubuntu cung cấp tất cả sự ổn định mà Deiban cung cấp và bổ sung rất nhiều chức năng cần thiết cho việc sử dụng hàng ngày tại nhà.

Windows không có những động lực này. Tuy nhiên, vẫn có phiên bản Windows mọi người sử dụng và phiên bản Máy chủ. Mà không đa dạng như hương vị Linux. Nhưng vẫn là một tùy chỉnh lớn cho các nhóm khách hàng VÀ ứng dụng hiện có.

Cả hai, DOS và thiết bị đầu cuối Linux đều được thực thi trên Kernel. Nhưng chúng cũng có thể được "mô phỏng" trong HĐH. Trong HĐH, các trình giả lập này không làm gì khác hơn là truyền các lệnh đến kernel. Kernel sau đó loại bỏ thông tin được các trình giả lập nhặt và in trong các thiết bị đầu cuối.

PS: Tôi cố ý nói GUI là cần thiết cho một hệ điều hành đầy đủ và Debian là tiền thân để dễ hiểu hơn. Tôi biết rằng những trạng thái này về mặt kỹ thuật không hoàn toàn đúng. Chỉ cần một thông tin nhỏ để giữ cho các mọt sách khó quay quá nhanh trong khi đọc này :)


Bạn có thể chọn cài đặt GUI khi cài đặt Debian. Tôi mất chưa đến một giờ để có được Gnome và wifi hoạt động trên máy tính xách tay của tôi, tại thời điểm đó bạn có các ứng dụng mặc định tương đương với Ubuntu. Công bằng mà nói, nếu bạn sợ dòng lệnh và không muốn học, Ubuntu là lựa chọn tốt hơn.
Gordon Gustafson

1

Unix là một lớp các hệ điều hành dựa trên cùng một lý thuyết và tất cả đều tương tự nhau đến mức hầu hết mọi người không thể nhận ra sự khác biệt. Lịch sử khá phức tạp và liên quan đến Berkley (BSD) và AT & T (SysV) và một tiêu chuẩn gọi là POSIX.

Linux là một loại Unix, mặc dù những người theo chủ nghĩa thuần túy sẽ nói với bạn rằng Linux chỉ là "hạt nhân" phần cấp thấp nhất. Phần còn lại của HĐH được làm bằng các công cụ tương thích Unix từ Hiệp hội phần mềm GNU và các nơi khác. Cùng với nhau, điều này tạo ra GNU / Unix.

Debian là một bản phân phối chung của Linux. Mỗi bản phân phối đều có các công cụ quản lý gói riêng, tập hợp các gói mặc định được cài đặt sẵn và có thể khác nhau về các dịch vụ được cài đặt sẵn và thậm chí cả các tệp cấu hình và các tệp đó được sử dụng.

Ubuntu dựa trên Debian. Họ sử dụng Debian ổn định mới nhất và thêm các ứng dụng Desktop, công cụ quản lý phần mềm và những thứ khác để làm cho nó trở nên độc đáo. Có nhiều bản phân phối khác của Linux. Hầu hết đều dựa trên Debian hoặc dựa trên Redhat, mặc dù cũng có các hệ thống dựa trên Slackware và Gentoo. Mỗi trong số 4 cơ sở này được xây dựng bởi các phân phối khác. Ví dụ: tôi đang chạy Hệ điều hành cơ bản ngay bây giờ, dựa trên Ubuntu dựa trên Debian, phiên bản Linux, là một hương vị của Unix. Hiểu rồi?

Mac OS / X tương tự như Unix ở chỗ nó sử dụng một hạt nhân khác (Mach) cũng tương thích với Unix với một bộ gói phần mềm bên trên để làm cho nó tương thích (chủ yếu) với các hương vị BSD của Unix. Rất nhiều phần mềm dễ dàng chuyển từ Linux sang Mac vì khả năng tương thích BSD của Mac. Tuy nhiên, họ thay đổi các lớp trên của HĐH bằng GUI dựa trên hiển thị PDF và các bổ sung khác. Toàn bộ ban đầu được tạo ra là NeXT Step và Apple đã mua nó và cho nó một bản nâng cấp. Nó thuộc họ Unix.

Android sử dụng nhân Linux, nhưng phần còn lại của HĐH là do chính họ thiết kế, do đó, trong khi các mức thấp nhất của HĐH dựa trên Unix, phần còn lại thì không, và nó thường không được coi là hương vị Unix, mặc dù một số người cho rằng nó là một hương vị Linux. Bối rối chưa? Android không tuân thủ các tiêu chuẩn POSIX.

DOS / Windows hoàn toàn khác nhau. MS-DOS ban đầu là một cổng của CP / M từ 8080 đến 8086 (8080 là CPU 8 bit và tệp .COM là tệp thực thi 8 bit cho CP / M). Microsoft đã không viết nó, họ đã mua nó sau đó cấp phép cho IBM và các đối thủ cạnh tranh. Windows khởi đầu là API Apple cũ, ít nhiều bị đánh cắp một cách hợp pháp, đó là lý do tại sao nó sử dụng quy ước gọi Pascal. Windows 95 và Windows Me và một vài người khác vẫn sử dụng DOS trong nội bộ cho một số thứ (đã có những vụ kiện về việc này). Các phiên bản Windows mới hơn dựa trên API Win32 do IBM đồng sáng tác cho OS / 2. Microsoft đã thoát khỏi thỏa thuận OS / 2 và lấy mã với họ. Nhân Windows NT thường được sử dụng để chạy API Win32 hoàn toàn không sử dụng DOS và Microsoft thực sự đã mượn một số ý tưởng từ Unix ..


0
  • UNIX - Một hương vị cho Power PC trái ngược với 'Windows'.
  • Linux - Tập hợp con hương vị Unix - một hệ điều hành được phát minh theo Tổ chức phần mềm miễn phí và nó là "Miễn phí"
  • Debian - Một nền tảng đã phát minh ra Linux - cũng đã mời các cộng sự tham gia dưới sự bảo trợ của Tổ chức phần mềm miễn phí và đóng góp cho mọi thứ có thể tạo nên Linux hoàn chỉnh với nhiều công cụ và tiện ích và nhiều ứng dụng có thể được cài đặt trên hệ thống nói trên, bao gồm cả quản lý gói để hỗ trợ cài đặt và cấu hình của tất cả các ứng dụng đó.
  • Ubuntu - một phiên bản được trích xuất của Debian để bộ / phù hợp với môi trường Máy tính để bàn theo định dạng 'Cài đặt mặc định'. Hơn nữa, nó được mặc cho các chủ đề và tiện ích máy tính để bàn.

-1

UNIX là một hệ điều hành được tạo ra trong những năm 60 và 70. Máy tính là đắt tiền, và UNIX là đắt tiền. Đó không phải là một vấn đề. Chỉ có các công ty lớn, các trường đại học và chính phủ mới có máy tính và họ có tiền.

Nó đắt đến nỗi Linus Torvalds đã tạo ra một giải pháp thay thế: Linux , viết tắt của Linux Is Not Uni X. Ông muốn nó được mở và miễn phí. UNIX đã có bản quyền, vì vậy ông đã viết lại tất cả các mã cần thiết (với nhiều bàn tay trợ giúp) và yêu cầu tất cả các mã phải miễn phí, sử dụng giấy phép đặc biệt. Vì nó rẻ hơn rất nhiều, nhiều người bắt đầu sử dụng nó. Nó rẻ hơn UNIX, sớm có nhiều người dùng hơn, được sử dụng trên nhiều máy chủ hơn. Vì nó rẻ hơn và nhanh hơn Windows, nó cũng phổ biến hơn cho các máy chủ web giá rẻ.

Có hai bản phân phối chính: Debian / Ubuntu và Redhat / Centos. Bên cạnh đó có một số phân phối khác, nhưng chúng có thị trường chính.

Debian chủ yếu được sử dụng làm hệ điều hành máy chủ.

Ubuntu được tạo ra trên đó, nhưng sau đó với những người dùng bình thường - những người không biết cách sử dụng thiết bị đầu cuối, những người muốn một cái gì đó đơn giản hoạt động.

Cả RedhatCentos đều là các hệ thống máy chủ, như Debian. Cả hai đều có phiên bản dành cho máy tính để bàn (và cả debian), nhưng không thân thiện với người dùng như Ubuntu, cũng có hệ thống máy chủ, ngày càng trở nên phổ biến. Redhat là hệ điều hành được lựa chọn cho các công ty lớn, bởi vì họ cung cấp các hợp đồng hỗ trợ - đắt tiền nhưng đối với một số người không phải là vấn đề.


2
-1 linaa: Linux không phải là từ viết tắt. Ubuntu 'đơn giản hoạt động' ngụ ý rằng các bản phân phối khác không? Máy tính để bàn 'phiên bản'? Lựa chọn cài đặt ban đầu sang một bên, bạn thêm hoặc bớt các gói để làm cho hệ thống làm những gì bạn muốn.
mcalex
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.