Chính xác thì chúng ta muốn nói gì khi nói rằng chúng ta đang sử dụng Linux?


9

Tôi đã trải qua một bài viết về GNU, một cái gì đó như dưới đây

Thực sự có một Linux, và những người này đang sử dụng nó, nhưng nó chỉ là một phần của hệ thống họ sử dụng. Linux là hạt nhân: chương trình trong hệ thống phân bổ tài nguyên của máy cho các chương trình khác mà bạn chạy. Hạt nhân là một phần thiết yếu của một hệ điều hành, nhưng bản thân nó vô dụng; nó chỉ có thể hoạt động trong bối cảnh của một hệ điều hành hoàn chỉnh. Linux thường được sử dụng kết hợp với hệ điều hành GNU: toàn bộ hệ thống về cơ bản là GNU với Linux được thêm vào, hoặc GNU / Linux. Tất cả các bản phân phối được gọi là Linux Linux Các bản phân phối thực sự của GNU / Linux.

Tôi luôn nghĩ Linux là kernel và Hệ điều hành nhưng có vẻ như Linux = Linux kernel và GNU OS.

Ai đó có thể chỉ ra chức năng chính xác của từng thuật ngữ "Linux" mà chúng ta sử dụng trong cuộc sống hàng ngày. Ngoài ra, theo wiki, thiết kế của GNU giống Unix nhưng khác với Unix bởi phần mềm miễn phí và không chứa mã Unix. Tôi nghĩ Unix là mã nguồn mở. Phải không?


2
Nhân Linux giống như một động cơ: rất quan trọng để chiếc xe hoạt động, nhưng gần như vô dụng.
evilsoup

Câu trả lời:


7

Tôi tin rằng bit mà bạn đề cập đến được trình bày ở đây trên trang web của Tổ chức phần mềm miễn phí (FSF):

Theo FSF, sự tranh chấp của họ là Linux chỉ là một hạt nhân. Một hệ thống có thể sử dụng bao gồm một Kernel + các công cụ như ls, find, vỏ, vv Vì vậy khi đề cập đến toàn bộ hệ thống, nó nên được gọi là GNU / Linux, vì các công cụ khác cùng với Kernel Linux tạo nên một hoàn chỉnh hệ thống có thể sử dụng. Họ thậm chí còn tiếp tục nói về Hạt nhân Unix của FSF, Hurd , đưa ra lập luận rằng Hurd và Linux về cơ bản là các Hạt nhân có thể hoán đổi cho hệ thống GNU / X.

Tôi thấy toàn bộ cuộc tranh luận mệt mỏi và nghĩ rằng có những điều tốt hơn để làm với thời gian của chúng tôi. Tên chỉ là một cái tên và thực tế là mọi người coi một hệ thống bao gồm phần mềm GNU + Linux Kernel + phần mềm không phải GNU khác là Linux hoặc GNU / Linux là một vấn đề của hương vị và thực sự không quan trọng trong sơ đồ lớn của nhiều thứ. Trong thực tế, tôi nghĩ rằng tranh luận sẽ làm tổn hại nhiều hơn đến Linux và GNU / Linux bằng cách phá vỡ cộng đồng và gây nhầm lẫn cho công chúng về việc mỗi thứ thực sự là gì.

Đối với nhiều hơn bạn từng muốn biết về chủ đề này, hãy xem Wikipedia được nêu rõ có tiêu đề: Tranh cãi về đặt tên GNU / Linux .

Tất cả Unixes nguồn mở?

Theo hiểu biết của tôi, không phải tất cả các Unix đều là nguồn mở. Hầu hết các chức năng trong Unix được chỉ định sao cho mọi thứ hoạt động như thế nào, nhưng việc triển khai cụ thể của chức năng này là hoặc không mở tùy thuộc vào phân phối của nó.

Ví dụ, cho đến gần đây Solaris, một Unix, không được coi là nguồn mở. Chỉ khi các thành phần cốt lõi được phát hành của Sun microsystem vào dự án OpenSolaris, thì ít nhất các thành phần của Solaris mới trở thành nguồn mở.

Lịch sử Unix

Tôi không có nghĩa là một chuyên gia về chủ đề này, vì vậy tôi khuyên bạn nên xem trang Unix Unix để biết thêm về chủ đề này.

Lịch sử Linux

Hãy xem sơ đồ Unix Lineage để biết thêm về các Unix được coi là nguồn mở, hỗn hợp hoặc nguồn đóng.

  ss của lịch sử

Tôi cũng thấy Dự án Dòng thời gian phân phối GNU / Linux hữu ích khi có cuộc trò chuyện này.

ss của dòng thời gian linux


2
Không có UNIX là nguồn mở và Linux không phải là Unix. Không giống như FreeBSD, là hậu duệ trực tiếp và từng chứa mã ATT UNIX, Linux không có kết nối trực tiếp và chỉ giống như Unix. OSX là UNIX.
Cướp

1
@Rob FreeBSD không còn chứa mã ATT: đó là những gì làm cho nó miễn phí. Nó không có ít nhiều yêu cầu đối với tên Unix so với Linux hoặc MINIX hoặc OSF / 1.
Gilles 'SO- ngừng trở nên xấu xa'

1
@Rob - vui lòng tham khảo trang web. Tôi chắc chắn rằng bạn không có ý kiến ​​cho rằng nghe có vẻ như là một kẻ troll, nhưng ít nhất là một chút 8 -). Toàn bộ là Linux, một cuộc tranh luận về Unix đã được đề cập ở đây. Vui lòng xem chủ đề này: unix.stackexchange.com/questions/4091/is-linux-a-unix . Tôi thấy rằng tranh luận mệt mỏi. Nó giống như tranh luận về cách phát âm cà chua.
slm

@Gilles Làm thế nào là bất cứ điều gì tôi nói không đúng sự thật? Tại sao bạn cảm thấy cần phải bình luận về nó?
Cướp

@slm Tôi chỉ trả lời bình luận của bạn rằng "Không phải tất cả các Unix đều là nguồn mở" và sự thật là không có Unix nào là nguồn mở. UNIX là một tên thương mại, xác nhận và chứng nhận. Điều đó cũng có nghĩa là có sự tuân thủ POSIX đối với một mức độ Linux và các hệ thống khác không thể xác nhận (nhưng OSX có thể). Tôi không tranh luận bất cứ điều gì ngoại trừ UNIX là UNIX và Linux không phải là UNIX mà bài viết của bạn dường như muốn nói, iirc. (Tôi không biết về chủ đề trước, hoặc bất kỳ chủ đề nào khác.
Rob

3

Thông thường, cái mà chúng ta thường gọi là Hệ điều hành, là sự kết hợp của phần mềm liên quan đến kernel , công việc của họ là quản lý tài nguyên của máy và một số ứng dụng chạy trên kernel, được gọi là userland (phần này chứa trình duyệt, trình biên dịch, trình đọc pdf, bất cứ thứ gì không phải là kernel, hoặc trình điều khiển, hoặc có thể là trình ảo hóa vm).

Phần còn lại của câu hỏi này không thể được trả lời mà không có bối cảnh lịch sử. Richard Stallman đã công bố Dự án GNU vào ngày 27 tháng 9 năm 1983. Mục đích là cung cấp phần mềm cần thiết để phát triển một hệ điều hành UNIX giống như (và vùng người dùng đi kèm) dưới dạng phần mềm miễn phí . Đến năm 1992, Dự án GNU đã hoàn thành gần như tất cả các phần thiết yếu cho phần mềm của họ - ngoại trừ một phần: nhân. Đồng thời, Linus Torvalds đã phát hành kernel Linux (phiên bản 0.12) của mình dưới dạng phần mềm miễn phí, được cấp phép theo giấy phép GPL . Vì vậy, lần đầu tiên, có thể chạy một máy tính bao gồm (gần như) hoàn toàn bằng phần mềm miễn phí.

Linux (như đã đề cập) là một hạt nhân , và mặc dù đó là nền tảng cơ bản của phần mềm cho phép bạn sử dụng máy tính của mình, nhưng nó không hữu dụng lắm. Bạn nên ghép nối nó với một số loại ứng dụng (userland) để nó chạy. Đó là những gì phân phối GNU / Linux như Debian hoặc Ubuntu và tương tự.

Điều đáng nói là một hạt nhân vừa quan trọng vừa không quan trọng. Cho phép tôi giải thích. Hầu hết mọi người sử dụng máy tính đều quen với vùng người dùng hơn là kernel. Hạt nhân hầu hết trong suốt và hầu hết mọi người sẽ sử dụng một hạt nhân khác có cùng vùng người dùng và thậm chí có thể không nhận thấy sự khác biệt (tất nhiên trừ khi họ phụ thuộc vào một tính năng được cung cấp bởi một hạt nhân cụ thể).

Do đó, khi bạn sử dụng Linux , bạn thực sự đang sử dụng một hệ điều hành GNU; đó là nhân Linux và vùng người dùng GNU (Gnome, Bộ sưu tập trình biên dịch GNU, trình gỡ lỗi GNU, GNU Coreutils, GNU binutils, v.v.). Đó là lý do tại sao FSF khăng khăng gọi nó là GNU / Linux (theo tôi, là một yêu cầu công bằng).

Tất nhiên, bạn có thể sử dụng Linux mà không cần vùng người dùng GNU (gợi ý: Android, Busybox ) và dĩ nhiên sử dụng vùng người dùng GNU trên các hạt nhân khác (kfreebsd, Hurd, v.v.).

Đối với Unix là mã nguồn mở và tương tự, đó là một câu hỏi có thể liên quan đến khá nhiều tranh luận. Tuy nhiên, bạn có thể tìm thấy một số thông tin hữu ích ở đây


2

Hạt nhân linux là một chương trình đóng góp các chức năng sau cho HĐH:

   hình ảnh bản đồ hạt nhân linux

liên kết ban đầu đến hình ảnh: http://www.makelinux.net/kernel_map/

Nhân là điều cần thiết và trên hết bạn có các tiện ích và tất cả phần còn lại của phần mềm đóng gói. Sự khác biệt giữa hệ điều hành đầy đủ và nhân bằng với phần còn lại của phần mềm và cách các bộ duy trì phân phối kết hợp với nhau.

Những người bảo trì đó không nhất thiết phải tạo ra tất cả phần mềm bổ sung đó, đôi khi họ lắp ráp và sửa đổi nó và kết hợp tất cả lại với nhau để cung cấp trải nghiệm Linux cho hầu hết mọi người ngày nay - họ thêm "hương vị" để nói và thường có dòng dõi cho các bản phân phối rất thành lập như Debian và Redhat, v.v. Điều này là, một tỷ lệ đáng kể các tiện ích và phần mềm ban đầu được đóng gói trong các bản phân phối linux bao gồm phần mềm được điều chỉnh từ dự án GNU. Rất nhiều phần mềm được dự án GNU kết hợp với nhau bằng cách sử dụng tài nguyên của họ trước khi hạt nhân linux thậm chí được phát minh. Và nó miễn phí và rất nhiều phần mềm đó đã giúp xây dựng mức độ phổ biến của linux vì cả hai đều là phần mềm nguồn mở và miễn phí được liên kết bởi giấy phép GPL. Framwework libc, Bàn làm việc Gnome và trình biên dịch gcc là những ví dụ về phần mềm được duy trì GNU.

Nó chắc chắn không tầm thường và thừa nhận nó không nên mang tính chính trị nhưng có những người có tiếng nói ở cả hai phía và có một cuộc tranh luận. Dù là ứng dụng thực tế nào, việc biết thêm về lịch sử của phần mềm trong các bản phân phối mà chúng tôi sử dụng và người tạo ra nó là một nỗ lực hợp lệ.


Bạn có thể cung cấp một liên kết đến hình ảnh gốc?
heinrich5991

1
@ heinrich5991 - Tôi đã thêm liên kết đến bản gốc.
slm
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.