Giới-thiệu

Thân-thế
Thành-tích
Privacy Policy

Hữu-ích

Lập-kế-hoạch-tài-chính gia-đình

Đầu-tư-cổ-phiếu

Các loại bảo-hiểm

Câu-chuyện

Kinh-nghiệm

Máy-tính

Chữ-Việt

Linh tinh

Ý kiến

Danh mục

Download
Mục lục





Hỏi và Đáp về phần mềm mã nguồn mở và phần mềm tự do

Giải thích các từ lạ

Sở hữu trí tuệ (intellectual property): là thuật ngữ nói về quyền của người sở hữu các kết quả của sự sáng tạo, nghệ thuật, bằng sáng chế, thương hiệu, bí mật thương mại.

Bằng sáng chế (patent): cấp cho người sáng chế quyền được độc quyền khai thác một kiến thức trong một thời hạn (thường là 20 năm). Người sáng chế phải nộp hồ sơ mô tả điều mình làm ra, nếu điều đó là chưa hề có thì được cấp bằng sáng chế. Ví dụ cấu trúc FAT để lưu trữ file là sáng chế của Microsoft, cách nén ảnh GIF và nén nhạc MP3 là hai sáng chế được cấp bằng. Số bằng sáng chế được cấp trên khắp thế giới rất lớn nhưng những bằng sáng chế chưa tìm được nơi áp dụng thì không đem lại lợi gì cho người sáng chế.

Bản quyền (copyright): copyright là "the right to copy", bản quyền là quyền của người sở hữu được quyết định việc dùng/sao chép/thay đổi một cách thể hiện cụ thể của một ý tưởng hay thông tin nào đó. Những thứ đó có thể là thơ, luận văn, kịch, sách, phim, vở múa, nhạc, sản phẩm nghe-nhìn, hoạ phẩm, tượng, ảnh chụp, phần mềm, chương trình phát thanh-truyền hình… Bản quyền có hiệu lực tới 50-70 năm sau khi tác giả qua đời. Một chuyện thật như đùa về bản quyền: một người đàn ông Mỹ vi phạm luật giao thông, khi cảnh sát sắp ghi giấy phạt, ông này tuyên bố "Tôi đang giữ bản quyền về tên của mình, anh không được sao chép nó lên tờ giấy đó!"
Bản quyền không bảo vệ ý tưởng nhưng cách thể hiện ý tưởng đó thì được bảo vệ. Ví dụ hai nhạc sĩ khác nhau đều có bản quyền trên tác phẩm ca ngợi mùa thu của mỗi người, và không ai có bản quyền về ý tưởng ca ngợi mùa thu.

Quyền sử dụng phần mềm (software license): là những điều được phép và không được phép mà người sở hữu phần mềm đặt ra đối với người được cấp phần mềm hợp pháp (người mua hay người dùng, trong bài này gọi chung là người dùng).

Hợp đồng sử dụng phần mềm (software license agreement, End-User License Agreement): Hợp đồng giữa bên làm ra phần mềm và bên mua phần mềm. Phần lớn các hợp đồng sử dụng các phần mềm đóng hộp sẵn được hiện ra cho người dùng xem khi cài đặt phần mềm và người dùng chỉ có quyền chấp nhận hay không chấp nhận hợp đồng. Ngoài các điều khoản về quyền sử dụng phần mềm, hợp đồng sử dụng phần mềm còn quy định trách nhiệm của hai bên, chế độ bảo hành… Ví dụ EULA của Microsoft Windows XP nêu rõ Microsoft và những người bán sản phẩm này không chịu trách nhiệm về bất kỳ thiệt hại nào xảy ra khi dùng sản phẩm hoặc do sản phẩm không làm việc…
Qua hợp đồng sử dụng phần mềm, nhiều quyền lợi của người dùng bị tước bỏ. Ví dụ như nếu một phần mềm có lỗi, người dùng không được quyền tự sửa lỗi đó, chỉ có thể báo cho công ty sở hữu nó và chờ sửa; thử tưởng tượng phần mềm như xe gắn máy, chúng ta mua một xe gắn máy, khi chạy ở đường ướt thì bị nước văng sau lưng, ta liền gắn thêm một tấm cản vào, đến một ngày nào đó ta nhận được thư của hãng bán xe thông báo là ta bị mất quyền sử dụng xe vì đã tự sửa lỗi! Thường thì các hợp đồng sử dụng phần mềm chỉ cho phép người dùng cài đặt phần mềm đó trên một máy hay một số máy nhất định, một số phần mềm còn quy định rõ số CPU tối đa trong một máy. Người dùng không được quyền bán hay cho phần mềm này, điều này quá ngặt nghèo so với sách in: sách đọc xong có thể đem bán lại hoặc đem cho. Nếu người dùng vi phạm các điều không được phép thì có thể dẫn tới việc chấm dứt quyền sử dụng; tức là người dùng hợp pháp trở thành bất hợp pháp.

Copyleft (Việt ngữ chưa có từ này): copyleft không phải là một loại bản quyền, nó là một cách tổng quát để một phần mềm hay một sản phẩm nào đó được tự do và bảo đảm rằng tất cả những sửa đổi tiếp theo của phần mềm đó cũng được tự do. Để copyleft một phần mềm (tức là để nó được tự do), đầu tiên người sở hữu tuyên bố rằng nó đã được bảo vệ dưới bản quyền, kế đó thêm vào điều khoản phân phối quy định rằng mọi người có quyền dùng, sửa đổi và phân phối lại phần mềm này hay những bản sửa đổi tiếp theo của nó với điều kiện là không được thay đổi điều khoản phân phối. Copyleft do Phong trào Phần mềm Tự do đề ra.

Phong trào Phần mềm Tự do là gì?

Khoảng năm 1976 trở về trước, phần mềm thường được bán cả mã nguồn lẫn mã nhị phân, và lập trình viên thường truyền cho nhau những mã nguồn để giúp nhau trong công việc. Nhưng công nghiệp phần mềm phát triển lên, các công ty phần mềm bảo vệ lợi nhuận bằng cách gia tăng việc bảo vệ mã nguồn, lập trình viên phải ký với công ty bản cam kết không tiết lộ bí mật (gồm có mã nguồn). Năm 1985, Richard Stallman khởi xướng Phong trào Phần mềm Tự do để vận động cho tự do sử dụng phần mềm, gồm cả việc sửa đổi, phân phối lại phần mềm.

Copyleft có gì hay?

Copyleft bảo đảm rằng tất cả mọi người có quyền dùng-phân phối-sửa đổi các phần mềm tự do. Không một người nào có quyền sở hữu phần mềm tự do.

Copyleft giúp người ta có cơ hội đóng góp cho sự phát triển của phần mềm tự do. Những lập trình viên làm việc cho các công ty hay tổ chức có thể dùng phần mềm tự do vào công việc của họ, có thể sửa đổi để làm ra sản phẩm mới. Khi đó người chủ không thể biến sản phẩm đó thành tài sản riêng của công ty được, họ chỉ có thể bán sản phẩm theo kiểu phần mềm tự do hoặc họ vứt bỏ sản phẩm đó.

Tại sao lại có quyền BÁN phần mềm tự do?

Nhiều người vẫn hiểu lầm rằng tinh thần của phần mềm tự do là không ai được thu tiền trên các bản phần mềm, hoặc chỉ được thu một ít tiền để bù vào chi phí phân phối. Nhưng chữ tự do của phần mềm tự do không mang nghĩa miễn phí. Nó mang nghĩa là không bị sở hữu bởi bất kỳ người nào. Thử so với phần mềm bị sở hữu, phần mềm bị sở hữu thường được bán với giá cao nhưng cũng có khi đem cho không, nhưng người dùng không được toàn quyền (tự do) đối với phần mềm cho không đó.

Vậy mọi người đều có quyền bán phần mềm tự do, ngay cả những phần mềm không tự làm ra và được khuyến khích thu nhiều tiền khi phân phối phần mềm tự do, nhiều đến mức có thể thu được. Nghe lạ quá phải không! Mọi người được khuyến khích kiếm lời từ phần mềm tự do và trích một phần lợi nhuận đó đóng góp cho Phong trào Phần mềm Tự do.

Vậy nếu bán phần mềm tự do với giá cao thì làm sao phần mềm tự do được phổ biến đến nhiều người?

Một phần mềm bị sở hữu được bán với giá cao thì sẽ có ít người được dùng. Nhưng phần mềm tự do được bán với giá cao vẫn có thể có nhiều người dùng. Đó là vì có nhiều cách hợp pháp để có được phần mềm tự do. Người ta có thể chép lại từ bạn mình, hoặc nhiều người hùn nhau lại mua một bản về để tất cả đều được dùng.

Vì có nhiều cách để được dùng phần mềm tự do nên giá cao không cản trở sự phổ biến của phần mềm tự do. Sự phổ biến của phần mềm tự do được quyết định bởi sự hữu dụng của nó. Khi nào mà phần mềm tự do còn chưa đủ hữu dụng thì người ta còn phải dùng đến phần mềm bị sở hữu. Vậy cách tốt nhất để phổ biến phần mềm tự do là nâng cao tính năng của nó chứ không phải là hạ thấp giá bán. Mọi người đều có thể góp sức vào việc đó bằng cách lập trình, viết tài liệu hướng dẫn, hoặc quyên góp cho người khác làm.

Phần mềm mã nguồn mở có phải là phần mềm tự do?

Có một số quy định (ràng buộc) về quyền sử dụng phần mềm mã nguồn mở không được Phong trào Phần mềm Tự do chấp nhận. Tuy nhiên trong thực tế thì hai loại này rất gần nhau và hầu hết các phần mềm mã nguồn mở là phần mềm tự do. Và GNU General Public License của Phong trào Phần mềm Tự do chính là một trong những giấy phép theo định nghĩa của phần mềm mã nguồn mở.

Có bao nhiêu giấy phép sử dụng phần mềm mã nguồn mở?

Có hơn 50 giấy phép sử dụng phần mềm mã nguồn mở đã được đặt ra bởi các tổ chức khác nhau. Sau đây là một vài giấy phép của các tổ chức nổi tiếng nhất:

Những điểm chung của các giấy phép sử dụng phần mềm mã nguồn mở:

  1. Mọi người có quyền bán hay cho phần mềm, và không phải trả một phí nào về việc bán phần mềm (so sánh với một ví dụ trong thế giới phần mềm bị sở hữu: chủ sở hữu của một số software library bắt người làm phần mềm với library đó phải trả tiền trên mỗi bản phần mềm bán ra).
  2. Khi phân phối phần mềm thì phải kèm theo mã nguồn, trong trường hợp không kèm theo mã nguồn thì phải có một phương pháp thông dụng để mã nguồn có thể lấy được với một chi phí hợp lý hoặc phải cho phép tải về từ Internet một cách miễn phí. Và mã nguồn phải để dưới dạng mà lập trình viên dùng được ngay.
  3. Được phép sửa đổi, làm tiếp và được phép phân phối những bản sửa đổi này theo cùng một điều khoản như bản gốc.
  4. Có thể bắt buộc trong trường hợp phân phối lại thì phải phân phối mã nguồn nguyên gốc nhưng phải cho phép đưa bản vá vào mã nguồn trước khi tạo ra bản mã máy.
  5. Không giới hạn phạm vi hay mục đích sử dụng của phần mềm (một số phần mềm bị sở hữu được bán với các mức giá khác nhau cho các mục đích sử dụng khác nhau nên giấy phép của nó quy định rõ mục đích sử dụng, ví dụ giấy phép sử dụng riêng cho giáo dục, cho gia đình, cho doanh nghiệp…)

Một số điểm khác nhau của vài giấy phép sử dụng phần mềm mã nguồn mở:

Những ràng buộc của giấy phép
Phần mềm gốc
Phiên bản
Về nguyên tắc, có phải phân phối kèm với mã nguồn?
Nếu được phân phối không kèm mã nguồn, nhà phân phối mã nguồn có được phép thu tiền nhiều hơn chi phí vận chuyển vật liệu?
Nếu được phân phối kèm mã nguồn, nhà phân phối có được phép thu tiền nhiều hơn chi phí vận chuyển vật liệu? Sub-license Phiên bản có phải tuân theo cùng một giấy phép như bản gốc?
Có phải mở mã nguồn?
Có phải đính kèm ghi chú về bản quyền của phần mềm gốc?
Có phải cung cấp tài liệu?
GNU GPL v2

Không

Không




LGPL v2.1

Không

Không
Phát triển từ phần mềm gốc




Dùng phần mềm gốc
Không
Không


BSD License

Không
Không

Không
Không

Không
Apache License v2.0
Không


Không
Không
Không

Không

Những điều cần chú ý khi dùng phần mềm tự do

Người dùng không rành phần mềm sẽ cần giúp đỡ khi dùng. Nếu người dùng lấy được phần mềm tự do một cách miễn phí thì sẽ không có ai có trách nhiệm giúp đỡ, chỉ có thể tìm sự giúp đỡ tự nguyện ở các cộng đồng người dùng phần mềm tự do. Nếu cần một sự giúp đỡ chuyên nghiệp, thì người dùng nên mua phần mềm tự do từ các nhà phân phối để nhận được sự bảo đảm giúp đỡ khi cần.

Khi người dùng (là pháp nhân) cần thuê một nơi nào đó sửa đổi phần mềm cho phù hợp với nhu cầu hơn, thì phải ghi rõ trong hợp đồng là bên sửa đổi phải chịu hoàn toàn trách nhiệm về tính hợp pháp của phần mềm sau khi sửa và phải bồi thường những thiệt hại xảy ra cho người dùng nếu có sự vi phạm bản quyền.

Những nhà sản xuất phần mềm có ý định dùng các thành phần mã nguồn mở trong sản phẩm của mình phải biết các thành phần đó đang được bảo vệ dưới giấy phép sử dụng nào và phải hiểu rõ từng điều khoản của giấy phép đó, tốt hơn hết là nên nhờ sự tư vấn của chuyên viên về sở hữu trí tuệ.

Vi phạm thường gặp nhất là phân phối phần mềm (nguyên gốc hay đã có sửa đổi) mà không cung cấp mã nguồn. Và đương nhiên kèm theo đó là vi phạm khi không công bố quyền sử dụng với các điều khoản giống như bản gốc. Người dùng không có ý định phân phối lại thì không lo vi phạm quyền sử dụng phần mềm mã nguồn mở cho dù có sửa mã nguồn.

Dùng các mã nguồn mở có sẵn để làm sản phẩm dự thi mà không công bố thì chắc chắn là vi phạm quyền sử dụng phần mềm mã nguồn mở rồi; vì hành động đem nộp sản phẩm dự thi bao gồm việc sao chép phần mềm cho người khác dùng, và sao chép mà không kèm theo các điều khoản sử dụng giống như bản gốc là vi phạm.

LGPL là một trường hợp đặc biệt, LGPL cho phép tạo ra các phần mềm bị sở hữu từ các thành phần mã nguồn mở. Một phần mềm A được viết mới và có dùng các thành phần được bảo vệ bởi LGPL thì A vẫn có thể là một phần mềm bị sở hữu. Dùng có nghĩa là được dịch và liên kết với các phần mềm LGPL chứ không được cải tiến từ mã nguồn. Còn nếu A được phát triển từ mã nguồn các thành phần LGPL thì người sở hữu A phải cho phép người dùng tự sửa đổi và khôi phục lại mã nguồn cho mục đích riêng. Và quan trọng hơn nữa là phần mềm A phải dùng được với các version tương lai của các thành phần LGPL của nó.

Một số phần mềm dùng trong các cơ quan nhà nước, hay các tổ chức đặc biệt như ngân hàng, cần được giữ bí mật về cấu trúc dữ liệu và giải thuật. Những phần mềm đó nên được thuê viết riêng cho cơ quan sử dụng, và vẫn có thể dùng những thành phần được bảo vệ dưới giấy phép LPGL.

Bài này được đăng trên e-CHIP số Tháng Tám, 2007.

Các bài liên quan:
* Những kinh nghiệm khác

Trang-web này được áp-dụng Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Bạn được phép chép lại trang-web này, với điều-kiện không được thay-đổi nội-dung và không dùng cho mục-đích thu-lợi và ghi rõ nguồn-gốc https://LeHBoi.github.io. Điều kiện trên cũng áp dụng với domain name trước đây của website này là LHBOI.NAME.VN.