Sơ lược đôi nét về phần mềm mã nguồn mở

sơ lược đôi nét về phần mềm mã nguồn mở

Khi tìm kiếm phần mềm hàng đầu trong ngành, mọi người thường luôn tìm hiểu về những phần mềm miễn phí trước. Tại Việt Nam nhiều doanh nghiệp vừa và nhỏ chưa có tiềm lực kinh tế để chi trả cho những phần mềm “sịn sò“. Giờ đây doanh nghiệp đã tìm thấy công cụ phần mềm đáp ứng nhu cầu kinh doanh của mình và “tất cả đều miễn phí”. Một phần mềm miễn phí và đang hot nhất hiện nay đó là phần mềm mã nguồn mở đang được sử dụng rộng rãi và phát triển mạnh mẽ tại Việt Nam. Vậy phần mềm mã nguồn mở là gì? Lựa chọn và tìm kiếm như thế nào? Hãy tìm hiểu nó qua bài viết dưới đây

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

Phần mềm mã nguồn mở là phần mềm được thiết kế để có thể truy cập công khai, bất cứ ai cũng có thể xem, sửa đổi và nâng cao mà họ thấy phù hợp. Người dùng cũng có khả năng tạo ra nhiều bản sao của phần mềm gốc nếu họ muốn. Bất cứ ai cũng có thể sử dụng phần mềm cho bất kỳ mục đích nào; không có phí cấp phép hoặc các hạn chế khác trên phần mềm.

Một số phần mềm có mã nguồn mà chỉ người hoặc nhóm đã tạo ra nó và duy trì quyền kiểm soát độc quyền đối với nó. Mọi người gọi loại phần mềm này là “phần mềm độc quyền” hoặc “nguồn đóng”. Chỉ các tác giả gốc của phần mềm độc quyền mới có thể sao chép, kiểm tra và thay đổi phần mềm đó một cách hợp pháp. Đối với phần mềm mã nguồn mở, người dùng cũng phải chấp nhận các điều khoản giấy phép khi họ muốn sử dụng, nhưng các điều khoản pháp lý của giấy phép mã nguồn mở khác biệt đáng kể so với các giấy phép độc quyền.

//Đọc thêm : So sánh phần mềm mã nguồn đóng và phần mềm mã nguồn mở

2. Lịch sử phát triển phần mềm mã nguồn mở

Thuật ngữ Mã nguồn mở, mặc dù phổ biến hiện nay – chỉ được định nghĩa là một thuật ngữ thực tế kể từ khi nó ra đời vào cuối những năm 70 và đầu thập niên 80. Phong trào phần mềm nguồn mở xuất phát từ một cuộc cách mạng thay đổi hoàn toàn cách thức phát triển phần mềm – dẫn đến phương pháp phát triển phần mềm được cộng đồng chấp nhận  và được sử dụng rộng rãi trong 40 năm qua.

Ban đầu, các lập trình viên không thể đưa ra một cái tên hay cho một ý tưởng bất thường. Phần mềm luôn được phát triển nội bộ  bởi các công ty và tập đoàn. Tuy nhiên, phương pháp mã nguồn mở nhanh chóng trở thành  phương pháp thiết kế và phát triển phần mềm được sử dụng rộng rãi nhất, cho chúng ta nhiều giải pháp phần mềm phổ biến và ổn định. Văn bản này cung cấp tổng quan về lịch sử của phần mềm mã nguồn mở 

Năm 1971, Richard Stallman, một kỹ sư phần mềm trẻ từ Harvard, đã tham gia Phòng thí nghiệm trí tuệ nhân tạo MIT trong nỗ lực đóng góp cho sự phát triển của các nền tảng điện toán. Chỉ phục vụ trong vai trò này trong một vài năm, phần mềm độc quyền đã chiếm lĩnh thị trường phần mềm với nhiều nhà phát triển MIT tài năng gia nhập các công ty công nghệ tư nhân. Đến đầu những năm 80, Phòng thí nghiệm AI của MIT nơi Stallman làm việc đã tuyệt chủng khi mất hầu hết các nhà phát triển tài năng của mình vào thị trường phần mềm tư nhân đang bùng nổ.

19

Hình ảnh về Richard Stallman

Stallman, vô cùng hỗn loạn vì tư nhân hóa ngành công nghiệp đã làm những gì một anh hùng của bất kỳ câu chuyện hay nào sẽ làm. Tham gia sâu vào lĩnh vực này, anh nhận thức rõ ràng khách hàng đang cần và muốn phần mềm họ có thể tự sửa và gỡ lỗi. Phần lớn phần mềm trong khoảng thời gian này được nhà phát triển kiểm soát toàn bộ – nơi quyền người dùng cá nhân đã bị xóa hoàn toàn. Đứng trước vấn đề, điều mà Phòng thí nghiệm AI của MIT đã thất bại trong việc kết hợp vào các chiến lược phát triển phần mềm của mình.

Dựa trên phân tích của mình, Stallman bắt đầu Dự án GNU của mình vào năm 1984. Bắt đầu với một trình biên dịch có tên là GCC và một vài hệ điều hành – Stallman tin rằng Dự án GNU là bước đệm chính cho sự phát triển của cộng đồng phần mềm miễn phí.

Theo Stallman, ‘phần mềm có nghĩa là miễn phí nhưng về khả năng truy cập và không phải giá cả.’ Vì vậy, vào năm 1985, Quỹ Phần mềm Tự do (FSF) đã được thành lập. Theo chính sách của FSF, phần mềm được coi là miễn phí nếu người dùng có quyền tự do:

  • Chạy phần mềm theo ý muốn
  • Sửa đổi phần mềm cho phù hợp với nhu cầu của họ
  • Cập nhật các bản sao, miễn phí hoặc mã thông báo
  • Phân phối các phiên bản sửa đổi, vì lợi ích của người dùng trong cộng đồng

Mục tiêu của FSF là sao chép hệ điều hành UNIX theo cách mà một hệ thống mới sẽ cho phép người dùng có toàn quyền kiểm soát nó. Vào đầu những năm 90, do sáng kiến ​​của Stallman, đã có sự tăng trưởng mạnh mẽ về số lượng các nhà phát triển đã sử dụng GNU và nhiều người trong số họ đã cung cấp hỗ trợ trong việc sửa các lỗi mà họ sẽ phát hiện. Stallman cũng bắt đầu kết hợp mã nguồn của các lập trình viên khác vào GNU. Đồng thời, để đảm bảo bảo vệ IP cho phần mềm của mình, Stallman đã phát triển khái niệm copyleft.

Theo truyền thống, phần mềm được bảo vệ bằng các điều khoản bản quyền và cấp phép, đóng mã nguồn để ngăn không cho nó bị sửa đổi. Stallman đã tạo ra khái niệm copyleft, đó là một chương trình có bản quyền đầu tiên, sau đó, các điều khoản phân phối bổ sung được thêm vào. Mọi người đều được trao quyền hợp pháp để sử dụng, phân phối lại hoặc sửa đổi mã của chương trình mà không thay đổi các điều khoản phân phối. Khái niệm copyleft làm cho mã nguồn được liên kết hợp pháp với quyền tự do sử dụng

3. Các loại giấy phép mã nguồn mở (Open Source – Licenses )

BSD 3 (Berkeley Software Distribution)

  • Ngày phát hành: 22/07/1999
  • Đặc điểm: Giấy phép BSD ( Berkeley Software Distribution License ) có thể nói là lâu đời nhất trong các giấy phép nguồn mở, nó đã và đang tồn tại ở một số dạng kể từ những năm 1980.
  • Giấy phép BSD 3-Clause “New” or “Revised” license là bản sửa đổi của giấy phép BSD cũ đã loại bỏ một số điều khoản mà người ta cho rằng phi thực tế .
  • Nội dung : Xem chi tiết tại: https://opensource.org/licenses/BSD-3-Clause
  • Điều khoản của giấy phép mã nguồn mở: Tái phân phối và sử dụng ở dạng mã nguồn và nhị phân , có hoặc không có sửa đổi mã nguồn

BSD 2-Clause (Berkeley Software Distribution)

  • Ngày phát hành: 04/1999
  • Giấy phép BSD 2-Clause “Simplified” or “FreeBSD” license về cơ bản giống với giấy phép BSD 3-Clause
  • Nội dung: Xem chi tiết tại: https://opensource.org/licenses/BSD-2-Clause

GNU General Public License ( GPL )

  • Giấy phép GNU hiện đang có 2 phiên bản được sử dụng phổ biến là GPL-2.0 và GPL-3.0.
  • Phiên bản mới nhất ( GPL-3.0 ) phát hành ngày 29-06-2007 .
  • Nội dung license: https://www.gnu.org/licenses/gpl-3.0.html
    • Quyền lợi khi sử dụng phần mềm áp dụng giấy phép GPL :
    • Được sao chép và phân phối chương trình, được yêu cầu trả phí cho việc phân phối đó .
    • Được thay đổi chương trình để sử dụng cho mục đích cá nhân .
    • Được phân phối bản đã được thay đổi đó .

GNU Library General Public License ( LGPL )

  • Phiên bản mới nhất phát hành năm 2007
  • LGPL là một phiên bản sửa đổi của GPL .
  • Giấy phép này thường bị hạn chế đối với các thư viện phần mềm.
  • Cung cấp sự bảo vệ ít hơn so với GPL.
  • Điều này cho phép các chương trình không phải là Open source có thể truy cập hoặc liên kết tới các thư viện nguồn mở mà không phải công khai mã nguồn như giấy phép GPL .

MIT License

  • Được phát bởi Massachusetts Institute of Technology ( MIT ) .
  • Nội dung License:Xem chi tiết tại đây:  https://opensource.org/licenses/MIT
  • Giấy phép MIT là loại giấy phép cho phép sử dụng mã nguồn tự do nhất , nó có thể kết hợp với các mã nguồn khác và đảm bảo tương thích theo điều kiện của mọi loại giấy phép khác .
  • Với giấy phép MIT bạn có thể sử dụng , sao chép , sửa đổi , hợp nhất , xuất bản , phân phối và/hoặc bán các bản sao của phần mềm mà không vi phạm bản quyền. Bạn chỉ cần tuân thủ điều kiện duy nhất sau:
  • Thông báo bản quyền và thông báo cho phép của phần mềm gốc sử dụng giấy phép MIT sẽ phải bao gồm trong tất cả các bản sao hoặc phần quan trọng của phần mềm .

Mozilla Public License 2.0 ( MPL )

  • Giấy phép MPL 2.0 là một giấy phép phần mềm tự do của Qũy Mozilla
  • Phát hành : 03/01/2012
  • MPL là sự kết hợp giữa giấy phép BSD có chỉnh sửa và giấy phép GNU .
  • MPL yêu cầu việc công bố mã nguồn của mọi thay đổi được đưa ra công chúng .

Giấy phép nguồn tiêu chuẩn công nghiệp Sun 1.2 (SISSL)

  • SISSL là giấy phép mã nguồn theo chuẩn của Sun.
  • Nội dung : Xem chi tiết tại: https://opensource.org/licenses/sisslpl
  • Đối với phần mềm có áp dụng giấy phép này, mã nguồn gốc được công bố theo một phiên bản nào đó của giấy phép , người sử dụng sẽ luôn phải sử dụng mã gốc đó theo các điều khoản của phiên bản đó
  • Không ai có quyền chỉnh sửa các điều khoản áp dụng cho mã nguồn gốc

-> Tóm lại

GPL: Khi sử dụng và phân phối bắt buộc phải sử dụng giấy phép GPL, không được phép đóng mã nguồn và thay đổi giấy phép

LGPL: Là giấy phép “tự do” ít ràng buộc hơn, là giấy phép sửa đổi của GPL, được sử dụng cho một số thư viện phần mềm

MPL: Là sự dung hòa giữa BSD và GPL . MPL cho phép dùng MPL software để tạo ra một sản phẩm khác. Tuy nhiên nếu thay đổi MPL software thì phải được đưa miễn phí lên Internet.

BSD:  là giấy phép tự do “ít ràng buộc” hơn , các giấy phép kiểu BSD để những sản phẩm phái sinh được tái phân phối như phần mềm thương mại.

  • Khi sửa đổi phải đưa mã nguồn ra thành mã nguồn mở

BSD: Không cần

GPL, LGPL, MPL: Yêu cầu

  • Khi sử dụng phải đưa mã nguồn ra thành mã nguồn mở

BSD, LGPL, MPL: Không

GPL: Có

4. Ưu điểm phần mềm mã nguồn mở

Giải pháp hiệu quả chi phí

Hầu hết các phần mềm mã nguồn mở là miễn phí để sử dụng. Trong trường hợp các sản phẩm của bên thứ ba có liên quan, chẳng hạn như plugin, có thể có một chi phí nhỏ phát sinh. Tuy nhiên, phần mềm nguồn mở có nghĩa là cho bất kỳ ai tải xuống và làm theo ý họ, ở một mức độ nào đó dựa trên cấp phép. Với ngân sách eo hẹp đối với nhiều người, nguồn mở có thể là giải pháp giúp kéo dài đô la CNTT của bạn.

Nhiều lựa chọn

 Việc sử dụng các chương trình nguồn mở hỗ trợ một phong trào tin vào phần mềm với độ tin cậy cao hơn, linh hoạt hơn, chi phí thấp hơn và không có nhà cung cấp khóa nào.

Mã nguồn có thể truy cập 

 Người dùng được cấp quyền truy cập vào mã nguồn của chương trình hoặc được hướng đến nơi họ có thể lấy nó để nghiên cứu.

Tính năng luôn được cải thiện.

Bởi vì bất kỳ ai cũng có thể làm việc trên phần mềm nguồn mở, các cộng đồng hình thành xung quanh nhu cầu khắc phục sự cố hoặc cập nhật sản phẩm. Mọi người có thể thêm các tính năng, ngăn chặn lỗi và cải thiện nó theo những cách khác, thường mà không cần phải xin phép chính thức.

Chất lượng phần mềm

Mã nguồn mở thường có chất lượng cao hơn. Một phần mềm mã nguồn mở được tạo bởi một nhóm các nhà phát triển có thể có chất lượng thấp hơn so với phần mềm được phát triển bởi hàng ngàn nhà phát triển từ khắp nơi trên thế giới có kinh nghiệm trong các công nghệ, ngành công nghiệp và dự án khác nhau. Và các lỗi trong phần mềm nguồn mở được xác định rất nhanh vì mã liên tục được nhiều nhà phát triển xem xét.

Sử dụng trên toàn thế giới 

Bởi vì nhiều chương trình nguồn mở được sử dụng nhiều trên toàn thế giới, chúng có sẵn nhiều hỗ trợ trực tuyến hơn một số chương trình phần mềm miễn phí Có thể thấy trào lưu mã nguồn mở là một trong những yếu tố quan trọng nhất thúc đẩy sự phát triển công nghệ với tốc độ chóng mặt như chúng ta đã và đang chứng kiến qua từng năm, từng thập kỷ. Mọi thắc mắc chúng tôi xin ghi nhận qua hotline: 0984 449 549. Để biết thêm chi tiết bạn có thể liên hệ Entrust Consulting để được tư vấn hiệu quả nhất tại Đây. Chúng tôi xin cảm ơn các độc giả đã đọc bài viết này

Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on pinterest
Pinterest

VỀ ENTRUST

Entrust Consulting là công ty tiên phong trong lĩnh vực tư vấn về chuyển đổi kỹ thuật số và là chuyên gia về triển khai hệ thống ERP cho các doanh nghiệp vừa và lớn tại Việt Nam. 100% không phụ thuộc vào các đơn vị cung cấp giải pháp phần mềm, Entrust cung cấp cách tiếp cận công nghệ từ trên xuống và cách ứng dụng công nghệ từ dưới lên, giúp khách hàng chuyển đổi con người và quy trình kết hợp với công nghệ để đạt được mục tiêu chuyển đổi kinh doanh. Các dịch vụ của Entrust bao gồm: Chiến lược kỹ thuật số, Lãnh đạo số, Văn hóa dữ liệu, Quản trị thay đổi, Đánh giá công nghệ, Lựa chọn ERP, Đàm phán hợp đồng ERP, Triển khai ERP, Đào tạo, Tư vấn công nghệ…

Close Menu