Phần mềm nguồn mở là gì?

Phần mềm nguồn mở (OSS) là phần mềm mà công chúng có thể xem và thay đổi mã nguồn, hoặc mở. Khi mã nguồn không thể xem và thay đổi được bởi công chúng, nó được coi là bị đóng hoặc sở hữu độc quyền.

Mã nguồn là phần lập trình hậu trường của phần mềm mà người dùng thường không nhìn vào. Mã nguồn đưa ra các hướng dẫn về cách phần mềm hoạt động và cách tất cả các tính năng khác nhau của phần mềm hoạt động.

Hình ảnh Getty / Scott-Cartwright

Người dùng được hưởng lợi như thế nào từ OSS

OSS cho phép các lập trình viên cộng tác để cải tiến phần mềm bằng cách tìm và sửa lỗi trong mã (sửa lỗi), cập nhật phần mềm để hoạt động với công nghệ mới và tạo ra các tính năng mới. Phương pháp cộng tác nhóm của các dự án mã nguồn mở mang lại lợi ích cho người dùng phần mềm vì lỗi được sửa nhanh hơn, các tính năng mới được bổ sung và phát hành thường xuyên hơn, phần mềm ổn định hơn với nhiều lập trình viên hơn để tìm lỗi trong mã và các bản cập nhật bảo mật được triển khai nhanh hơn hơn nhiều chương trình phần mềm độc quyền.

Hầu hết OSS sử dụng một số phiên bản hoặc biến thể của Giấy phép Công cộng GNU (GNU GPL hoặc GPL). Cách đơn giản nhất để nghĩ về GPL tương tự như ảnh trong miền công cộng. GPL và miền công cộng đều cho phép mọi người sửa đổi, cập nhật và sử dụng lại thứ gì đó theo cách họ cần. GPL cấp cho người lập trình và người dùng quyền truy cập và thay đổi mã nguồn, trong khi miền công cộng cấp cho người dùng quyền sử dụng và điều chỉnh ảnh. Phần GNU của GNU GPL đề cập đến giấy phép được tạo cho hệ điều hành GNU, một hệ điều hành miễn phí / mở đã và đang tiếp tục là một dự án quan trọng trong công nghệ nguồn mở. Sự khác biệt chính giữa GPL và miền công cộng đến từ một hạn chế của GPL; mọi thứ được thực hiện bằng cách sửa đổi mã GPL cần vẫn mở. Vì vậy, bạn không thể sửa đổi chương trình GPL và bán nó.

Một phần thưởng khác cho người dùng là PMNM nói chung là miễn phí, tuy nhiên, có thể có chi phí cho các tính năng bổ sung, chẳng hạn như hỗ trợ kỹ thuật, cho một số chương trình phần mềm.

Nguồn mở đến từ đâu?

Mặc dù khái niệm về mã hóa phần mềm cộng tác có nguồn gốc từ học viện những năm 1950-1960, nhưng đến những năm 1970 và 1980, các vấn đề như tranh chấp pháp lý đã khiến cho phương pháp hợp tác mở này dành cho mã hóa phần mềm mất dần đi. Phần mềm độc quyền tiếp quản thị trường phần mềm cho đến khi Richard Stallman thành lập Tổ chức Phần mềm Tự do (FSF) vào năm 1985, đưa phần mềm mở hoặc miễn phí trở lại vị trí hàng đầu. Khái niệm phần mềm miễn phí đề cập đến tự do, không phải chi phí. Phong trào xã hội đằng sau phần mềm miễn phí duy trì rằng người dùng phần mềm phải có quyền tự do xem, thay đổi, cập nhật, sửa chữa và thêm vào mã nguồn để đáp ứng nhu cầu của họ và được phép phân phối hoặc chia sẻ nó một cách tự do với người khác.

FSF đã đóng một vai trò hình thành trong phong trào phần mềm nguồn mở và tự do với Dự án GNU của họ. GNU là một hệ điều hành miễn phí (một tập hợp các chương trình và công cụ hướng dẫn một thiết bị hoặc máy tính cách hoạt động), thường được phát hành cùng với một tập hợp các công cụ, thư viện và ứng dụng có thể được gọi chung là một phiên bản hoặc một bản phân phối. GNU được ghép nối với một chương trình gọi là hạt nhân, chương trình này quản lý các tài nguyên khác nhau của máy tính hoặc thiết bị, bao gồm cả giao tiếp qua lại giữa các ứng dụng phần mềm và phần cứng. Nhân phổ biến nhất được ghép nối với GNU là nhân Linux, ban đầu được tạo ra bởi Linus Torvalds. Việc ghép nối hệ điều hành và hạt nhân này về mặt kỹ thuật được gọi là hệ điều hành GNU / Linux, mặc dù nó thường được gọi đơn giản là Linux.

Vì nhiều lý do, bao gồm cả sự nhầm lẫn trên thị trường về ý nghĩa thực sự của thuật ngữ 'phần mềm miễn phí', thuật ngữ thay thế 'nguồn mở' đã trở thành thuật ngữ ưa thích cho phần mềm được tạo và duy trì bằng cách sử dụng phương pháp cộng tác công khai. Thuật ngữ 'nguồn mở' chính thức được thông qua tại hội nghị thượng đỉnh đặc biệt của các nhà lãnh đạo công nghệ vào tháng 1998 năm XNUMX, do nhà xuất bản công nghệ Tim O'Reilly tổ chức. Cuối tháng đó, Sáng kiến ​​Nguồn mở (OSI) được thành lập bởi Eric Raymond và Bruce Perens với tư cách là một tổ chức phi lợi nhuận chuyên thúc đẩy PMNM.

FSF tiếp tục là một nhóm vận động và hoạt động chuyên hỗ trợ các quyền tự do và quyền của người dùng liên quan đến việc sử dụng mã nguồn. Tuy nhiên, phần lớn ngành công nghệ sử dụng thuật ngữ "mã nguồn mở" cho các dự án và chương trình phần mềm cho phép công chúng truy cập vào mã nguồn.

commons.wikimedia.org

Phần mềm nguồn mở là một phần của cuộc sống hàng ngày

Các dự án mã nguồn mở là một phần trong cuộc sống hàng ngày của chúng ta. Bạn có thể đang đọc bài viết này trên điện thoại di động hoặc máy tính bảng của mình, và nếu vậy, bạn có thể đang sử dụng công nghệ nguồn mở ngay bây giờ. Hệ điều hành cho cả iPhone và Android ban đầu được tạo ra bằng cách sử dụng các khối xây dựng từ phần mềm, dự án và chương trình nguồn mở.

Nếu bạn đang đọc bài viết này trên máy tính xách tay hoặc máy tính để bàn của mình, bạn có đang sử dụng Chrome hay Firefox làm trình duyệt web không? Mozilla Firefox là một trình duyệt web mã nguồn mở. Google Chrome là một phiên bản sửa đổi của dự án trình duyệt mã nguồn mở có tên là Chromium - mặc dù Chromium được bắt đầu bởi các nhà phát triển của Google, những người tiếp tục đóng vai trò tích cực trong việc cập nhật và phát triển bổ sung, Google đã thêm lập trình và tính năng (một số trong số đó không mở nguồn) vào phần mềm cơ sở này để phát triển trình duyệt Google Chrome.

Trên thực tế, internet như chúng ta biết sẽ không tồn tại nếu không có PMNM. Những người tiên phong về công nghệ giúp xây dựng web trên toàn thế giới đã sử dụng công nghệ mã nguồn mở, chẳng hạn như hệ điều hành Linux và máy chủ web Apache để tạo ra mạng internet hiện đại của chúng ta. Máy chủ web Apache là các chương trình OSS xử lý yêu cầu đối với một trang web nhất định (ví dụ: nếu bạn nhấp vào liên kết của trang web bạn muốn truy cập) bằng cách tìm và đưa bạn đến trang web đó. Máy chủ web Apache là mã nguồn mở và được duy trì bởi các tình nguyện viên của nhà phát triển và các thành viên của tổ chức phi lợi nhuận có tên Apache Software Foundation.

Mã nguồn mở đang tái tạo và định hình lại công nghệ cũng như cuộc sống hàng ngày của chúng ta theo những cách mà chúng ta thường không nhận ra. Cộng đồng lập trình viên toàn cầu đóng góp vào các dự án nguồn mở tiếp tục phát triển định nghĩa về PMNM và làm tăng thêm giá trị mà nó mang lại cho xã hội của chúng ta.