OPENLAB-IMAGE PROCESSING
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Tìm hiểu về các giấy phép mã nguồn mở (Open Source License)

Go down

Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) Empty Tìm hiểu về các giấy phép mã nguồn mở (Open Source License)

Bài gửi by jackauk Fri Nov 03, 2017 12:30 am

Nguồn: https://thaiduynguyen.wordpress.com/2009/10/30/tim-hieu-ve-osl/

I. GIỚI THIỆU VỀ CÁC GIẤY PHÉP MÃ NGUỒN MỞ


Giấy phép mã nguồn mở: là các giấy phép bản quyền dành cho các phần mềm máy tính trong đó đặt ra các quy định buộc người sử dụng phần mềm đó phải tuân theo. Giấy phép mã nguồn mở được sử dụng cho các phần mềm nguồn mở.

Tính pháp lý của Giấy phép mã nguồn mở: Giấy phép mã nguồn mở vẫn duy trì xác nhận về bản quyền của tác giả gốc đối với phần mềm, tuy nhiên được đưa thêm các điều khoản để các hành vi phân phối, sửa đổi, sao chép… các phần mềm này trở thành hợp pháp. Vì vậy giấy phép này và các điều quy định trong nó có giá trị về mặt pháp lý (luật pháp được nhắc đến ở đây là luật của Hoa Kì)

Phân loại: Giấy phép mã nguồn mở có thể được chia thành 2 loại chính:

– Những giấy phép không quy định bất cứ sự hạn chế nào trong việc sử dụng mã nguồn (còn có thể gọi là các giấy phép không bảo hộ vì chúng không bảo vệ mã nguồn mở khỏi việc bị sử dụng trong các phần mềm không phải là mã nguồn mở)

Các giấy phép thuộc loại này: Apache Software License v.1.1, BSD License, Intel Open Source License for CDSA/CSSM Implementation, MIT License, Sun Industry Standards Source License, W3C Software Notice and License…

– Những giấy phép quy định các hạn chế trong việc sử dụng mã nguồn (còn có thể gọi là các giấy phép bảo hộ vì chúng đảm bảo rằng các mã nguồn mở khi được sử dụng trong bất cứ tình huống nào sẽ vẫn được công khai/miễn phí.)

Các giấy phép thuộc loại này: Apple Public Source License v.1.2, Common Public License v.1.0; GNU General Public License v.2.0, IBM Public License v.1.0, Mozilla Public License v.1.0 and v.1.1, Nokia Open Source License v.1.0a, Open Software License v.1.1, Python License; Python Software Foundation License v.2.1.1, Sun Public License v.1.0…

Người giữ bản quyền mã nguồn khi sử dụng loại giấy phép không bảo hộ sẽ giữ lại bản quyền của họ đối với mã nguồn, và cấp cho người được cấp bản quyền (có thể hiểu là người sử dụng sản phẩm, mã nguồn) tất cả các quyền thuộc về bản quyền của mã nguồn đó.

Người giữ bản quyền mã nguồn khi sử dụng loại giấy phép có bảo hộ giữ lại bản quyền của họ đối với mã nguồn, và cấp cho người được cấp bản quyền tất cả các quyền thuộc về bản quyền của mã nguồn đó, nhưng có ít nhất một điều kiện, thông thường là việc phân phối lại phần mềm/mã nguồn đó, dù đã được sửa đổi hay chưa, đều phải sử dụng cùng loại giấy phép ban đầu.

Người viết giấy phép: Giấy phép mã nguồn mở do một số công ty, tổ chức lập ra để quy định về trách nhiệm của người sử dụng đối với một phần mềm/mã nguồn mở. Hiện tại, công ty (tổ chức) OSI (Open Source Initiative) là người đưa ra định nghĩa về mã nguồn mở (OSD – Open Source Definition) được cộng đồng công nhận rộng rãi. Các giấy phép mã nguồn mở đa phần được xây dựng dựa trên OSD.
Quy trình thông qua một giấy phép mã nguồn mở tại OSI:

–        Cộng đồng thẩm định giấy phép sẽ thảo luận trong ít nhất 30 ngày.

–        Các ý kiến từ cộng đồng sẽ được tổng kết và đưa lên ban giám đốc OSI.

–        Ban giám đốc OSI sẽ đưa ra quyết định cuối cùng, hoặc yêu cầu các thông tin bổ sung, trong lần họp định kì tháng sau.

–        Cộng đồng thẩm định sẽ được thông báo về quyết định của ban giám đốc OSI. Nếu giấy phép đó được chấp thuận, nó sẽ được đưa lên website của OSI.

Chi tiết về quá trình thẩm định một giấy phép tại OSI, cùng các hướng dẫn dành cho những ai muốn tự soạn ra một giấy phép riêng của bản thân mà được OSI công nhận, có thể xem tại: http://www.opensource.org/approval

Mục đích sử dụng: Các giấy phép mã nguồn mở được sử dụng để đảm bảo rằng các phần mềm, mã nguồn có sử dụng giấy phép này luôn là mã nguồn mở, phù hợp với OSD.

Cách sử dụng giấy phép mã nguồn mở:
Đối với nhà phát hành phần mềm, để có thể sử dụng một giấy phép mã nguồn mở có sẵn vào trong phần mềm của mình thì thông thường cần phải thực hiện các công việc sau:

–        Đính kèm giấy phép vào trong phần mềm của mình (được hiểu là đưa nội dung bản giấy phép vào trong bộ cài đặt, hoặc vào một file văn bản đi kèm với các file của chương trình)

–        Điền các thông tin cần thiết vào trong giấy phép: mỗi giấy phép đều có hướng dẫn việc làm thế nào để sử dụng chúng, thông thường là điền tên tác giả, năm phát hành, công ty … vào trong các trường tương ứng được quy định sẵn của giấy phép.

II) CÁC LOẠI GIẤY PHÉP MÃ NGUỒN MỞ THÔNG DỤNG

Tuy đa dạng về số lượng nhưng nhìn chung mỗi loại giấy phép mã nguồn mở đều gồm 3 nội dung chính: quyền lợi; trách nhiệm khi sử dụng, phân phối lại hay chỉnh sửa chương trình; xử lí nếu vi phạm giấy phép.

1. Giấy phép GNU


Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) 719px-gnu_general_public_license_3_logo-svg2
a) Nhà phát hành:

GNU (GNU General Public License – Giấy phép công cộng GNU, còn được gọi là GNU GPL hay đơn giản là GPL) là giấy phép phần mềm tự do phổ biến nhất, ban đầu được thiết kê bới Richard Stallman, dành cho dự án GNU. Phiên bản 2 của giấy phép này được phát hành năm 1991, và phiên bản 3, phiên bản hiện tại, được phát hành năm 2007.

Nội dung toàn văn giấy phép GNU (phiên bản 3) tại link sau:

http://www.opensource.org/licenses/gpl-3.0.html

b) Nội dung chính:

Quyền lợi:

–        Quyền được sao chép và phân phối chương trình, quyền được yêu cầu trả phí cho việc phân phối đó.

–        Quyền được thay đổi chương trình để sử dụng cho mục đích cá nhân.

–        Quyền được phân phối bản đã được thay đổi đó.

Nghĩa vụ:

–        Khi sao chép và phân phối chương trình, phải đính kèm các thông báo về bản quyền gốc và không nhận bảo hành (trừ trường hợp có văn bản thêm về quy định bảo hành.)

–        Khi phân phối bản đã được thay đổi bởi bản thân, phải chú thích rõ đó là bản đã được thay đổi, các thành phần được thay đổi, và áp dụng giấy phép GNU cho bản đã được thay đổi đó.

–        Khi phát hành chương trình phải công khai mã nguồn của chương trình của nó, đồng thời phải công bố mã nguồn của chương trình trong tối thiểu 3 năm mà không được đòi một khoản phí nào từ những người yêu cầu mã nguồn trừ chi phí vận chuyển hay tương đương.

Xử lí vi phạm:

Người vi phạm giấy phép bị tước quyền sử dụng giấy phép GNU, tuy nhiên nếu B thừa hưởng giấy phép từ A, mà A vi phạm mà B không vi phạm thì B vẫn được giữ giấy phép GNU.

Ta có thể thấy giấy phép GNU có những điểm đáng chú ý sau:

–        Có đặc tính virus, bởi sức lây lan và kế thừa của nó. Một người nhận sản phẩm từ người mang giấy phép GNU thì ngay lập tức người đó cũng mang giấy phép GNU. Hệ quả là GNU là giấy phép phổ biến nhất, bởi mã nguồn luôn ở dạng công cộng cho phép ai cũng có thể tham gia ở bất kì thời điểm nào.

–        Tác giả gốc giữ bản quyền, và cho người dùng các quyền hợp pháp trong việc: sao chép, chỉnh sửa, phân phối sản phẩm. Mặc dù giấy phép GNU yêu cầu mã nguồn và chương trình phải được cung cấp miễn phí, song nó cho phép người phân phối có thể kinh doanh với sản phẩm nhờ đưa ra các chính sách về bảo hành, tính chi phí phân phối sản phẩm, đào tạo sử dụng …

Một số người lo ngại về vấn đề mã nguồn bị public tạo điều kiện cho hacker tìm ra lỗ hổng, song thực tế lại chứng minh ngược lại, càng cố che giấu mã nguồn thì lại càng bị tấn công nhiều hơn.


c) Các phần mềm sử dụng giấy phép GNU GPL nổi bật:

–        RedHat Enterprise Linux
Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) 619e5571b58f706373cc8c7036528098

–        Ubuntu
Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) Ubuntu-logo1-295x300

–        GIMP

–        Drupal, WordPress, Joomla…

2. Giấy phép BSD:

a) Nhà phát hành:

Giấy phép BSD (Berkeley Software Distribution License) là một giấy phép phần mềm tự do với các điều kiện rất đơn giản được sử dụng rộng rãi cho phần mềm máy tính. Ban đầu giấy phép BSD được thiết kế bởi Đại học California tại Berkeley năm 1980 cho dự án BSD (Berkeley Source Distribution).

b) Nội dung chính:

Quyền lợi:

Giấy phép BSD cho phép sử dụng và phân phối lại mã nguồn và sản phẩm, có hoặc không có sửa đổi, miễn là tuân thủ các yêu cầu sau:

Nghĩa vụ:

–        Phải giữ nguyên thông báo bản quyền của sản phẩm. Yêu cầu này nhằm đảm bảo một người dùng bất kì không thể tuyên bố anh ta đã viết ra một phần mềm nếu thực sự anh ta không viết ra nó.

–        Phải kèm theo 2 thông báo: Danh sách các điều kiện và từ chối trách nhiệm.

–        Không được sử dụng tên dự án hay tên nhà phân phối vào mục đích quảng bá bản thân nếu không được cho phép.

Như vậy, có thể thấy đặc điểm lớn nhất của BSD là nó cho phép các nhà phát triển phần mềm có thể thương mại hóa một cách thực sự các sản phẩm phần mềm có sử dụng mã nguồn mở dùng giấy phép BSD, tức kiếm tiền dựa trên mã nguồn của chương trình (chủ yếu là mã nguồn do họ viết thêm và giữ lại mã nguồn đã được sửa đổi đó cho bản thân mà không công bố) thay vì chỉ có thể kiếm tiền từ các hoạt động không trực tiếp gắn với phần mềm như bảo hành, phát hành, đào tạo hướng dẫn sử dụng … Ngoài ra, giấy phép BSD còn cho phép các nhà phát triển thay thế, bổ sung thêm các điều khoản vào trong giấy phép cho phù hợp với mình, hoặc thậm chí sử dụng một giấy phép khác.

c) Một số phần mềm sử dụng giấy phép BSD:

Một số lớn các dự án xây dựng phần mềm nguồn mở, bao gồm cả những phần mềm lớn, đã được cấp giấy phép dạng BSD. Ví dụ:
– Hệ thống Window Xfree86: nền tảng của hầu hết các giao diện với người sử dụng trong các hệ thống phần mềm nguồn mở.
– FreeBSD, NetBSD và OpenBSD: các biến thể của phiên bản Unix gốc được cấp giấy phép BSD, cả ba đều được sử dụng rộng rãi trên mạng Internet, đặc biệt là FreeBSD, chương trình điều hành Yahoo Mail và dịch vụ Hotmail.

Tích hợp mã nguồn được cấp phép theo chế độ giấy phép BSD vào các ứng dụng thương mại và việc khá đơn giản. Ngay Microsoft trước đây cũng đã từng sử dụng một số mã BSD trong phần kết nối mạng của mã nguồn Window. Nhiều công ty đưa cả phần mềm máy chủ Apache vào trong gói phần mềm thương mại mà họ cung cấp cho khách hàng.

3) Giấy phép MIT

a) Nhà phát hành:

MIT là một giấy phép phần mềm tự do được phát hành bởi Học viện Công nghệ Massachusetts (Massachusetts Institute of Technology – MIT), được hội đồng MIT X sử dụng.

Theo Tổ chức phần mềm tự do, giấy phép MIT nên được gọi chính xác hơn là giấy phép X11, do Học viện Massachusetts đã từng dùng nhiều loại giấy phép khác nữa, và do giấy phép này ban đầu được soạn thảo cho X Window System (dự án tạo giao diện đồ họa cho người dùng ở các máy tính kết nối mạng vào năm 1984).

b) Nội dung chính:

MIT là một giấy phép dạng “permissive”, nghĩa là nó cho phép tái sự dụng các phần mềm độc quyền nhưng với điều kiện giấy phép MIT đã được phân phối kèm phần mềm đó. Giấy phép MIT cũng tương thích GLP, nghĩa là GPL cho phép tổng hợp và tái phân phối các phần mềm sử dụng giấy phép MIT.

–        Các quyền lợi của người sử dụng giấy phép vẫn tương tự như ở giấy phép GNU. Tuy nhiên MIT loại bỏ thuộc tính virus khỏi giấy phép, tức không bắt buộc các chương trình sử dụng tài nguyên có dùng giấy phép MIT cũng phải sử dụng giấy phép MIT.

–        Giấy phép MIT không bắt buộc phải công khai mã nguồn.

–        Người sử dụng phải kèm theo giấy phép MIT vào bản chỉnh sửa của mình, tuy nhiên không bị bắt buộc phải sử dụng giấy phép MIT cho toàn bộ bản đó.

–        Giấy phép MIT cũng có thể được chỉnh sửa lại cho phù hợp với thực tế.

Ngoài ra, giấy phép MIT không cấm sử dụng tên của người giữ bản quyền vào mục đích quảng bá, và cũng không bắt buộc phải hiện danh sách tất cả những người từng tham gia thực hiện dự án trong phần About của chương trình.

c) Một số phần mềm sử dụng giấy phép MIT:

Các gói phần mềm sử dụng giấy phép MIT bao gồm Expat, PuTTY, Ruby on Rails, Lua 5.0 và X Window System.

Cũng có một số sản phẩm sử dụng chung giấy phép MIT với một giấy phép khác, mà nổi tiếng nhất là thư viện jQuery của JavaScript, sản phẩm này sử dụng cả giấy phép MIT và GNU.

Có thể xem danh sách chi tiết các sản phẩm sử dụng giấy phép MIT tại:

http://en.wikipedia.org/wiki/List_of_software_that_uses_the_MIT_License

4. Giấy phép Apache:

Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) 169px-asf-logo-svg

a) Nhà phát hành:

Giấy phép Apache là giấy phép mã nguồn mở được soạn ra bởi Tổ chức phần mềm Apache (ASF – Apache Software Foundation).

Tất cả mọi phần mềm do ASF phát hành đều mang giấy phép Apache. Những dự án không thuộc ASF nhưng vẫn mang giấy phép Apache, cho đến tháng 7 năm 2009 là vào khoảng 5000 dự án.

Phiên bản mới nhất của Apache là 2.0 http://www.apache.org/licenses/LICENSE-2.0

ASF và Tổ chức phần mềm tự do (FSF) đều công nhận giấy phép Apache 2.0 là một giấy phép phần mềm tự do, tương thích với phiên bản giấy phép GNU 3.0.

b) Nội dung chính:

–        Giống như các giấy phép mã nguồn mở khác, giấy phép Apache cho phép người dùng tự do sự dụng phần mềm với bất kì mục đích nào, tự do phân phối, tự do sửa đổi, tự do phân phối bản sửa đổi mình làm (đoạn 3 của giấy phép).

–        Giấy phép Apache không yêu cầu bản sửa đổi của phần mềm phải được phân phối dưới cùng giấy phép với bản gốc, cũng không yêu cầu bản sửa đổi phải được phân phối dưới dạng mã nguồn mở. Giấy phép Apache chỉ yêu cầu có một thông báo nhắc nhở người nhận rằng giấy phép Apache đã được sử dụng trong sản phẩm họ nhận được.

Như vậy, trái ngược với các giấy phép Copyleft, người nhận được những bản sửa đổi của chương trình mang giấy phép Apache cũng không nhất thiết phải nhận toàn bộ những quyền trên. Nói cách khác là họ có nhận được quyền sử dụng chương trình và mã nguồn theo cách họ muốn, kể cả việc giữ lại mã nguồn cho riêng mình (đoạn 4 của giấy phép).

Có hai file cần được đặt trong thư mục gốc khi phân phối chương trình:

–          LICENSE: bản copy của chính giấy phép MIT.

–          NOTICE: văn bản chú thích tên của các thư viện đã dùng, kèm tên người phát triển.

–        Trong mỗi tệp tin đã được cấp phép, bất kì thông tin về bản quyền và bằng sáng chế trong bản phân phối lại phải được giữ nguyên như ở bản gốc, và ở mỗi tệp tin đã được chỉnh sửa phải thêm vào ghi chú là đã được chỉnh sửa khi nào.

Giấy phép Apache không yêu cầu trích dẫn toàn bộ giấy phép vào sản phẩm hay tệp tin đính kèm bản phân phối, mà chỉ cần thêm phần thông báo có chứa đường link tới website chứa giấy phép (GNU 3.0 cũng đã áp dụng cách này). Khi đó, người dùng chỉ thấy thông báo ngắn gọn như sau:

Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
So với giấy phép BSD, Apache có nội dung chặt chẽ hơn trong các điều khoản và duy trì quyền sở hữu trí tuệ (BSD chỉ có 3 yêu cầu ngắn gọn trong giấy phép, trong khi Apache có tới 9 khoản mục lớn).

c) Các phần mềm sử dụng giấy phép Apache:

Mặc dù có nhiều phần mềm không phải do ASF phát hành cũng mang giấy phép Apache, song nổi tiếng và được sử dụng nhiều nhất vẫn là Apache Server, phần mềm giao tiếp dành cho máy chủ. Ngay từ khi ra đời Apache đã có thể cạnh tranh với chương trình máy chủ của Nescape, và tới nay thì Apache chiếm khoảng hơn 60% thị phần máy chủ thế giới.

Bên cạnh Apache Server, còn có những phần mềm khác sử dụng giấy phép Apache như:

Apache Cocoon — một chương trình nền cho ứng dụng web

XAMPP — gói ứng dụng web gồm Apache và MySQL

Apache Axis2 – Chương tình nền cho dịch vụ web (xử lí được cả ngôn ngữ Java & C)

5) Giấy phép Artistic:

a) Nhà phát hành:

Giấy phép Artistic do Larry Wall thuộc Tổ chức Perl (The Perl Foundation) viết. Giấy phép Artistic được sử dụng chủ yếu cho các gói phần mềm miễn phí và mã mở, điển hình nhất là trong việc hoàn thiện ngôn ngữ Perl và các module của CPAN (gói chứa hơn 18.000 module phần mềm viết bằng ngôn ngữ Perl).

Tuy nhiên việc xếp Artistic vào danh sách các giấy phép phần mềm lại từng gây ra nhiều tranh cãi. Tổ chức phần mềm tự do (FSF) đã chỉ trích giấy phép Artistic “quá mơ hồ, một số đoạn chỉ nhằm cho lợi ích của mình, và ý nghĩa không rõ ràng”. FSF cho rằng giấy phép này không thể sử dụng nếu đứng đơn lẻ được, nhưng vẫn chấp nhận giấy phép Artistic trở thành một trong hai giấy phép chính cho các dự án Perl.

Bản đầy đủ của giấy phép tại địa chỉ: http://www.opensource.org/licenses/artistic-license-2.0.php

b) Nội dung, đặc điểm chính:

Giấy phép Artistic có nhiều điểm khác so với các giấy phép đã nêu ở trên, cụ thể:

–        Quyền sử dụng và chỉnh sửa nhưng không được phân phối: người dùng được phép sử dụng bản đã sửa chữa vào bất kì mục đích nào, không giới hạn, miễn là không phát tán bản đã chỉnh sửa đó (khoản (1) của giấy phép).

–        Quyền phân phối bản chỉnh sửa dưới dạng mã nguồn, nếu bạn đảm bảo ít nhất một trong 4 điều sau:

–        Người giữ bản quyền của bản gốc biết được bản sửa đổi, vẫn dưới giấy phép trước đó, người giữ bản quyền có thể thêm các chỉnh sửa vào bản gốc (khoản mục 4a). Điều này đồng nghĩa với, người nắm bản quyền gốc đầu tiên có quyền quyết định nâng cấp sản phẩm của mình rộng rãi hay không.

–        Đảm bảo rằng việc cài đặt bản chỉnh sửa không ngăn cản người dùng cài đặt bản gốc của chương trình. Thêm vào đó, tên của bản chỉnh sửa phải khác với tên của bản gốc.

–        Cho phép bất kì ai nhận phiên bản chỉnh sửa, có quyền phân phối mã nguồn của bản chỉnh sửa theo giấy phép Artistic hoặc một giấy phép tương đương (điều 4 cii). Điều này đảm bảo quyền lợi của mọi người là như nhau.

Một vài điểm khác biệt của giấy phép Artistic:

Điểm khác biệt lớn trong giấy phép Artistic nằm ở điều (7) và điều ( 8 ) của giấy phép: Tập hợp và kết nối các gói.

–        Có thể tập hợp gói (gồm cả bản gốc và bản chỉnh sửa) với các gói khác và phân phối sản phẩm đã được tổng hợp này, miễn là đảm bảo không được thu phí cấp giấy phép cho gói. Bạn được phép thu phí cho việc phân phối, ngay cả thu phí cho những thành phần khác trong gói. Có thể ví dụ: bạn download một phần mềm A về, sửa chữa cải tiến nó thành phần mềm B, bạn có thể gói cả A, B với các phần mềm khác (cũng mang giấy phép này) thành một gói sản phẩm đồ sộ X, và thu phí phân phối gói X này.

–        Cho phép nối các bản gốc hoặc bản chỉnh sửa của nhiều sản phẩm khác nhau. Đưa cả gói (như trên) vào dự án lớn hơn, hoặc tạo nên một chương trình duy nhất, và phân phối chương trình đó hoàn toàn theo ý mình, miễn là sản phẩm kết quả không được ảnh hưởng tới các phần trong gói, và giao diện không phải là giao diện của gói.

Ví dụ: Sau khi bạn có gói X như ở trên, bạn có thể phát triển tiếp X thành Y, Y này phải là ứng dụng độc lập, không ảnh hưởng tới việc sử dụng A và B, và không mang giao diện cua A và B.

c) Một số phần mềm sử dụng giấy phép Artistic:

Được sử dụng cho bộ mô phỏng SNEeSe và FakeNES, Paros Proxy, JavaFBP toolkit và NcFTP.

Vấn đề tương thích giữa các giấy phép:

Sau khi xem xét một số giấy phép ở trên, ta thấy các giấy phép đều nhằm mục tiêu đảm bảo cho người dùng có quyền sử dụng, sửa chữa, tái phân phối sản phẩm gốc hoặc phân phối sản phẩm mình đã chỉnh sửa. Cho dù các điều khoản có khác nhau, nhưng đã là giấy phép phần mềm tự do thì lúc nào cũng hướng tới những mục đích này.

Tuy vậy, vẫn có những điểm khác biệt giữa các giấy phép, như việc người dùng sau khi sửa đổi một chương trình mã nguồn mở, có được giữ chương trình đó lại cho riêng mình không? Việc một chương trình mã nguồn mở cần thông báo danh sách tất cả mọi người từng tham gia vào dự án, hay chỉ đề tên người đầu tiên khởi xướng dự án? Việc nên hay không đem đặc tính “virus” của GNU vào tất cả các giấy phép khác? Việc sử dụng giấy phép “cứng” không cho phép sửa đổi hay dùng giấy phép “mềm” cho phép sửa đổi các điều khoản trong giấy phép?…

Nhiều yêu cầu khiến những người soạn thảo giấy phép phải họp nhau lại, và cổ gắng tìm ra một chuẩn chung cho giấy phép mã nguồn mở, hoặc chí ít, có thể tạo ra sự tương thích giữa các giấy phép.

Giấy phép GNU do Tổ chức phần mềm tự do phát hành thường được chọn để so sánh với các giấy phép khác. Hiển nhiên GNU cũng không phải hoàn thiện hoàn toàn nếu đem so sánh về mặt thương mại, nhưng nó thực sự là một giấy phép “mở” toàn diện.

Bảng so sánh một số giấy phép mã nguồn mở:


Giấy phépKhả năng một phần mềm/ thư viện mã nguồn đóng (A) liên kết với một phần mềm/ thư viện mang giấy phép mở tương ứngKhả năng kết hợp một phần mềm (A) với một phần mềm/ thư viện mang giấy phép mở tương ứng.Tái phân phối mã nguồn sau khi thay đổiKhả năng tương thích với GNU GPL
GPLKhông được (bởi phần mềm (A) nếu liên kết thì (A) sẽ bị coi như một sản phẩm phái sinh)Không được đối với phần mềm (A) có giấy phép không tương thích với GNU GPLChỉ khi nó (mã nguồn sau khi thay đổi) cũng mang giấy phép GNU
LGPL (Less GPL)Có (bởi phần mềm sử dụng một thư viện không bị coi là một sản phầm phái sinh từ thư viện đó)Được nhưng có vài giới hạn: phải cung cấp mã nguồn của thư viện LGPL đã phân phối kèm bản chỉnh sửa (nếu có), nếu cần sửa thư viện LGPL thì nên có sự đồng ý trước.Chỉ khi nó (mã nguồn sau khi thay đổi) cũng mang giấy phép LGPL hay GPL
Apache PublicCó (chừng nào tên “Apache” không được sử dụng trong tên của sản phẩm phái sinh)Không
Artistic 2.0Có (chừng nào chương trình con viết bằng C hoặc Perl và được nhúng vào)Cho phép nếu thỏa mãn ít nhất một trong các điều kiện đã nói ở mục Vb)
BSDChỉ khi bản chỉnh sửa của giấy phép BSD tương thích với GPL. Bản BSD gốc không tương thích do có điều khoản về ngăn quảng cáo.
GPL
MIT (X11)Không được (bởi phần mềm (A) nếu liên kết thì (A) sẽ bị coi như một sản phẩm phái sinh)Không được đối với phần mềm (A) có giấy phép không tương thích với GNU GPLChỉ khi nó (mã nguồn sau khi thay đổi) cũng mang giấy phép GNU
Sun PublicChỉ được phátKhông
Bản so sánh đầy đủ hơn gồm 15 loại giấy phép có thể tham khảo tại đại chỉ: http://developer.kde.org/documentation/licensing/licenses_summary.html

Chọn giấy phép phù hợp:

Hiện nay hai giấy phép GNU và BSD, theo thống kê, là hai giấy phép mã nguồn mở được sử dụng phổ biến nhất.

–        Với những sản phẩm có dung lượng nhỏ, sử dụng đơn giản, nhà phát hành có thể sử dụng giấy phép BSD cho sản phẩm đó, vì BSD không bắt buộc phải công khai mã nguồn, và hầu như không có người sử dụng nào muốn bỏ tiền ra để được bảo hành/đào tạo hướng dẫn sử dụng với một sản phẩm như vậy.

–        Ngược lại, với những sản phẩm lớn, phức tạp, nhà phát hành lúc này có thể quan tâm đến giấy phép GNU, và thu lợi nhuận từ việc bảo hành, phân phối, đào tạo hướng dẫn sử dụng.

–        Nếu nhà phát hành không quan tâm đến lợi nhuận, thì cả BSD và GNU đều tốt, và phần lớn mã nguồn trên trang web http://sourceforge.net/ mang giấy phép GNU.

III) Một số phần mềm mã nguồn mở

1. Drupal (sử dụng giấy phép GNU GPL v.2)

Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) Drupal_icon

Drupal là một hệ thống quản trị thông tin (Content Management System – CMS) mã nguồn mở, miễn phí, viết bằng PHP và được phát hành dưới dạng giấy phép GNU GPL v2.). Drupal giúp người sử dụng đơn giản hóa việc xây dựng một website, từ một blog cá nhân, đến trang web thương mại điện tử, hay các trang web giáo dục, phổ biến kiến thức …

Với sự có mặt của Drupal ở rất nhiều trang web nổi tiếng, đặc biệt với việc Nhà trắng (Hoa Kì) sử dụng Drupal làm nền tảng CMS cho trang web của mình, đã khẳng định chỗ đứng của Drupal:

–        Nhà trắng: http://www.whitehouse.gov/ (tháng 10/2009)

–        Fast Company: http://www.fastcompany.com/ – là một công ty kinh doanh/tạp chí công nghệ với website có trên 200,000 trang.

–        AOL sử dụng Drupal trong một vài dự án, như trang: http://corp.aol.com/

–        Yahoo cũng sử dụng Drupal trong một số sản phẩm, như: Yahoo!Research: http://research.yahoo.com/

–        Nhiều trường đại học cũng sử dụng Drupal để xây dựng website cho mình, vd như với Harvard có: http://harvardscience.harvard.edu/

–        NASA: http://appel.nasa.gov/

–        Nhiều nghệ sĩ nổi tiếng cũng sử dụng Drupal:

Jennifer Lopez: http://www.jenniferlopez.com/

Avril Lavigne: http://www.avrillavigne.com/

Britney Spears: http://www.britney.com/

–        Các tổ chức quốc tế:

Greenpeace UK: http://www.greenpeace.org.uk/

Liên hợp quốc có: End Poverty: http://endpoverty2015.org/ và Fight Hunger: http://www.fighthunger.org/

–        Ngoài ra còn các trang web nổi tiếng khác như : Eclipse: http://www.eclipse.org/, OSI: http://opensource.org/, Ubuntu: http://www.ubuntu.com/, Novell: http://www.novell.com/communities/

Trong khoảng thời gian từ tháng 5/2007 đến tháng 8/2009, số lượt tải Drupal tại drupal.org là hơn 1.4 triệu lần, tăng khoảng 125% so với năm trước đó. Drupal được đánh giá là nền tảng web CMS tốt nhất năm 2008. Drupal có hơn 550,000 tài khoản đăng kí trên trang chủ drupal.org, và khoảng 2000 thành viên đăng kí tài khoản cho nhà lập trình. Ngoài ra, Drupal còn hỗ trợ hơn 20 ngôn ngữ bởi các nhà phát triển đến từ khắp thế giới.

Ưu điểm của Drupal:

–        Đơn giản trong sử dụng và cập nhật thông tin: Drupal hỗ trợ việc cập nhật thông tin bằng một editor dạng WYSIWYG giống như soạn thảo văn bản thông thường trên máy tính.

–        Drupal miễn phí, và được hỗ trợ rộng rãi bởi một cộng đồng phát triển lớn, với nhiều plug-in miễn phí.

–        Drupal hoạt động ổn định và bảo mật cao, được nâng cấp liên tục bởi cộng đồng phát triển.

–        Dễ dàng thực hiện SEO (Search Engine Optimization): SEO là một trong những điểm mạnh nhất của Drupal, được tập trung phát triển từ những phiên bản đầu tiên.

–        Modul hóa, dễ dàng thêm các chức năng mới: blog, diễn đàn, thương mại điện tử, lịch …

2) GIMP (sử dụng giấy phép GNU GPL v3)
Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) Gimp_logo

Nhiều tạp chí CNTT quốc tế đánh giá GIMP (GNU Image Manipulation Program) là phần mềm miễn phí xuất sắc nhất trong lĩnh vực biên tập ảnh. Những tính năng rất mạnh của nó cho thấy nhận xét đó là có cơ sở, và GIMP được coi là có thể so sánh với Adobe Photoshop, phần mềm chỉnh sửa ảnh mạnh mẽ nhất hiện nay.

Với GIMP, bạn thực hiện được các tác vụ từ chỉnh sửa ảnh, ghép ảnh tới sáng tác. Bạn có thể sử dụng chương trình như một phần mềm vẽ đơn giản, một ứng dụng chỉnh sửa ảnh chất lượng cao, một hệ thống kết xuất ảnh hàng loạt hay một tiện ích chuyển đổi định dạng ảnh…

GIMP có khả năng tương thích rất cao với các plugin của những phần mềm khác. Giao diện cao cấp của chương trình cho phép tất cả mọi thứ, từ những tác vụ đơn giản nhất tới những quy trình chỉnh sửa hình ảnh phức tạp đều có thể được lập trình dễ dàng.

Cộng đồng sử dụng và phát triển GIMP có số lượng tương đối lớn, bao gồm từ việc sử dụng và tạo ra các tài nguyên để sử dụng với GIMP – như trên DeviantArt.com, trang web dành cho cộng đồng thiết kế và đồ họa lớn trên internet – cho đến việc phát triển các sản phẩm mới dựa trên GIMP, theo giấy phép GNU GPL như:

–          GIMP Visual Studio: là một phiên bản GIMP được biên dịch bằng bộ biên dịch của Microsoft, cho phép các nhà lập trình phát triển GIMP bằng Microsoft Visual Studio.

–          GIMP.app, osx-gimp, Seahorse: là các bản dành cho Mac OS X.

–          GIMP Portable: Phiên bản portable của GIMP, chỉ chạy được trong Windows XP hoặc các HĐH mới hơn của Microsoft.

–          GIMP Paint Studio: chủ yếu hướng đến giới nghệ sĩ và thiết kế đồ họa.

–          GIMP Animation Package: dùng để tạo ảnh/video chuyển động.

So sánh với Adobe Photoshop

GIMP có khả năng thực hiện các nhiệm vụ về chỉnh sửa, biên tập ảnh cơ bản và một số các nhiệm vụ cao cấp khác, chỉ kém Photoshop ở một số mặt:

–          Không hỗ trợ cho hệ thống khớp màu Pantone.

–          Chưa xử lý được ảnh 16bit màu.

–          Ít plug-in hơn

–          Hạn chế trong chỉnh Gamma

–          Hạn chế trong việc quản lý màu thông qua LittleCMS

3) CakePHP (sử dụng giấy phép MIT)

Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) Cake-logo

CakePHP là một framework miễn phí, mã nguồn mở, dùng để tạo ra các ứng dụng web (web applications) bằng ngôn ngữ PHP.

Hiện tại, CakePHP được ưa chuộng bởi giới lập trình web, các công ty lập trình web khi tuyển dụng lập trình viên làm việc với PHP đều yêu cầu có kĩ năng sử dụng CakePHP.

CakePHP có nhiều ưu điểm:

–          Có cộng đồng sử dụng rộng lớn, đồng thời với đội ngũ phát triển liên tục cập nhật và nâng cấp.

Có thể tìm thấy nhiều bài viết hướng dẫn lập trình PHP với CakePHP trên internet, mà nổi tiếng trong số đó là:

cakebaker: http://cakebaker.42dh.com/

Debuggable: http://debuggable.com/

CakePHP Google Group: http://groups.google.com/group/cake-php/

Hay một nơi tập hợp các bài viết về CakePHP rải rác trên mạng: Planet CakePHP: http://planetcakephp.org/aggregator

–          Sử dụng giấy phép MIT, tạo sự thông thoáng cho người sử dụng khi hầu như không phải quan tâm về mặt luật pháp.

–          Tương thích với PHP version 4, 5.

–          Trao đổi dữ liệu với cơ sở dữ liệu dễ dàng.

–          Tự động sinh code (code generation)

–          Tự động kiểm tra cú pháp.

–          Hỗ trợ các thành phần xây dựng Email, Cookie, Security, và Request Handling.

–          Và còn nhiều ưu điểm khác nữa.

4) Mozilla Firefox (sử dụng giấy phép Mozilla Public License 1.1)
Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) Firefox-logo-smalll

Là trình duyệt web phổ biến hiện nay. Nó chạy nhanh, an toàn, ổn định, ít khi gặp lỗi, thể hiện tốt hầu như tất cả các trang web. Và một điểm mạnh khác là Firefox có thể chạy trên rất nhiều hệ điều hành, vì nó là phần mềm mã nguồn mở. Firefox là trình truyện mặc định trên Ubuntu – linux distro nổi tiếng hiện nay.

FireFox có một cộng đồng các nhà phát triển và người sử dụng đông đảo:

–          Số lượng add-ons do bên thứ 3 phát triển lớn và được tập hợp trên trang chủ của Firefox.

Hiện tại: 1,633,456,367 lượt download add-ons, 171,457,546 add-ons đang được sử dụng. (Số liệu từ www.firefox.com)

Một số add-ons đáng chú ý như: FireBug, FirePhP giúp người dùng lập trình, GreaseMonkey, Ikariam.GameStats.org1.3…… giúp cho game thủ webgame…

–          Số lượng người sử dụng FireFox lớn:

IE Firefox Safari Chrome Opera Khác
64.66% 26.08% 3.74% 3.17% 1.53% 0.82%
(Số liệu từ các nguồn: The Counter, OneStat, Net Applications, ADTECH (Europe), W3Counter, AT Internet, Stat Counter, tháng 9 năm 2009)

Các ưu điểm chủ yếu của Firefox:

–          Awesome Bar: Thanh địa chỉ url được cải tiến, giúp dễ dàng truy cập đến các địa chỉ được lưu trong Bookmark và History.

–          Tốc độ được cải thiện đáng kể với TraceMonkey JavaScript engine. Tốc độ dựng trang web ở bản 3.5 nhanh hơn 3 lần so với bản 3.0, và 10 lần so với bản 2.

–          Dễ dàng tạo Bookmark cho địa chỉ ưa thích với chỉ 1 cú nhấp chuột.

–          Đơn giản hóa việc tùy biến giao diện cũng như tính năng bởi hàng ngàn add-ons có sẵn.

–          Hỗ trợ chống Phishing và Mailware.

–          Dễ dàng phục hồi lại phiên làm việc trước.

–          Duyệt web trong chế độ bảo mật

–          Cho phép tùy biến các tab để trở thành một cửa sổ FireFox mới độc lập với cửa sổ hiện tại, hoặc gộp cả 2 cửa sổ độc lập đó lại với nhau.

–          …

5) Apache Server (sử dụng giấy phép Apache License)

Tìm hiểu về các giấy phép mã nguồn mở (Open Source License) 169px-asf-logo-svg

Apache server là một chương trình phần mềm máy chủ tự do và miễn phí, dành cho máy chủ sử dụng giao thức HTTP. Apache chạy trên các hệ điều hành tương tự như Unix, Microsoft Windows, Novell Netware và các hệ điều hành khác.

Khi được phát hành lần đầu, Apache là chương trình máy chủ mã nguồn mở duy nhất có khả năng cạnh tranh với chương trình máy chủ tương tự của Netscape Communications Corporation mà ngày nay được biết đến qua tên thương mại Sun Java System Web Server. Từ tháng 4 – 1996, Apache trở thành chương trình máy chủ HTTP thông dụng nhất, đến tháng 9 – 2009, Apache được dùng cho khoảng 54,48% tổng số website trên thế giới. Apache được phát triển và duy trì bở một cộng đồng mã nguồn mở dưới sự bảo trợ của Apache Software Foundation.

Tương tự như IIS . Apache là một chương trình dùng để chạy Web Server. Tuy nhiên có một khác biệt quan trọng đó là Apache là open source (miễn phí). Apache có thể cho phép người dùng config trực tiếp vào các thư viện của nó, điều mà IIS không làm được. Chúng ta có thể thêm modul tùy ý hoặc loại bỏ để tối ưu cho Web Sever mà mình sử dụng.
Một số so sánh về apache và IIS

Apache IIS
Chi phí Miễn phí Cao (Phải mua Windows mới có)
Độ phổ biến Cao: 54.48% máy chủ trên thế giới dùng Apache Không phổ biến bằng
Hỗ trợ php Tốt Không tốt bằng
Hỗ trợ asp/asp.net Mặc định không (Chỉ hỗ trợ sau khi thực hiện cấu hình khá phức tạp) Tốt
Giao diện Dòng lệnh và file text Đồ họa và Wizard
Code:
Tài liệu tham khảo:

–          http://www.opensource.org

–          http://www.fsf.org

–          http://www.groklaw.net/article.php?story=20031231092027900

–          http://www.gnu.org

–          http://www.drupal.org

–          http://www.firefox.com

–          http://developer.kde.org/documentation/licensing/licenses_summary.html

–          http://en.wikipedia.org

–          http://www.gimp.org

–          http://www.cakephp.org

–          http://www.apache.org

–          http://www.linfo.org/bsdlicense.html

–          http://www.newmediarights.org/open_source/new_media_rights_open_source_licensing_guide

–          Và một số tài liệu khác
jackauk
jackauk
Thành viên thường

Tổng số bài gửi : 63
Điểm danh tiếng : 2
Join date : 16/08/2015
Age : 35
Đến từ : TP Hồ Chí Minh

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết