Tìm hiểu phần mềm nguồn mở
TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
***************
ĐỀ TÀI
TÌM HIỂU MÃ NGUỒN MỞ
VÀ ỨNG DỤNG PHP
Giáo viên hướng dẫn:
Sinh viên thực hiện: Vũ Thị Phượng
Nguyễn Thị Trìu Mến
Lớp K55A – CNTT
Hà Nội, tháng 4/2008
1
Tìm hiểu phần mềm nguồn mở
LỜI MỞ ĐẦU
Có thể nói mã nguồn mở là một trào lưu hiện đang phát triển rất nhanh
trên thế giới hiện nay. Microsoft đã từng đặt Linux và cộng đồng nguồn mở là
một nguy cơ thực sự. Giờ đây, phần mềm nguồn mở đã chiếm ưu thế trong
hạ tầng công nghệ thông tin. GNU/Linux và những ích lợi các loại của BSD
Unix đã thống trị Internet, Perl và PHP là các ngôn ngữ phát triển chiếm
ưu thế của WWW, và Apache thực sự đã mở rộng thị phần 80% sớm của
mình giữa các máy chủ web... Tất cả các sản phẩm này đều là phần mềm
nguồn mở.
Việt Nam đã vào WTO, ngày càng hòa nhập sâu rộng vào thế giới, vấn đề bảo
hộ quyền sở hữu trí tuệ trở nên quan trọng hơn bao giờ hết. Bởi vì, việc thực thi
nghiêm ngặt bảo hộ quyền sở hữu trí tuệ nói chung và phần mềm nói riêng là
một trong những điều kiện tiên quyết để nước ta thực hiện Hiệp định đã ký. Khi
đã gia nhập WTO thì vấn đề bắt buộc phải sử dụng các phần mềm có bản quyền
sẽ được thắt chặt. Trong điều kiện nguồn vốn còn quá nghèo nàn như ở nước ta
hiện nay thì giải pháp sử dụng phần mềm nguồn mở (Open Source Software-OSS)
là một cách rất hữu hiệu để Việt Nam có chỗ đứng chuyên nghiệp hơn trong
"thế giới phẳng" đó. Tuy nhiên, OSS còn khá mới mẻ, không ít người cho rằng
OSS đồng nghĩa với miễn phí hoàn toàn, ít tính năng và không an toàn. Richard
Stalhman (ông tổ của mã nguồn mở) đã nói rằng chúng ta nên “bắt đầu ngay từ
trong nhà trường”, đó chính là lí do để đề tài “TÌM HIỂU PHẦN MỀM
NGUỒN MỞ” ra đời. Đề tài nhằm cung cấp một cách khái quát về OSS, cụ thể
tìm hiểu về PHP và bước đầu xây dựng ứng dụng thực tiễn.
2
Tìm hiểu phần mềm nguồn mở
Mục lục
PHẦN I. PHẦN MỀM NGUỒN MỞ.............................................................................4
IV. Luật phần mềm nguồn mở..................................................................................13
PHẦN II. ỨNG DỤNG PHP.......................................................................................58
II. BÀI TOÁN ỨNG DỤNG MÃ NGUỒN MỞ PHP....................................................65
(QUẢN LÍ ĐĂNG KÍ SỬ DỤNG TÀI SẢN)................................................................65
VI. The MIT License...................................................................................................97
3
Tỡm hiu phn mm ngun m
PHN I. PHN MM NGUN M
I. Khỏi nim OSS
1.1. Mt s kiu phn mm hin nay
Trong ngành Phần mềm hiện nay của thế giới đang tồn tại một số kiểu phần
mềm cơ bản:
* Phần mềm thơng mại (Commercial Software).
Là phần mềm thuộc bản quyền của tác giả hoặc nhà sản xuất, chỉ đợc
cung cấp ở dạng mã nhị phân, ngời dùng phải mua và không có quyền phần phối
lại.
* Phần mềm thử nghiệm giới hạn (Limited Trial Software ).
Là những phiên bản giới hạn của các phần mềm thơng mại đợc cung cấp
miễn phí nhằm mục đích thử nghiệm, giới thiệu sản phẩm và kích thích ngời dùng
quyết định mua. Loại sản phẩm này không chỉ giới hạn về tính năng mà còn giới
hạn ngời dùng về thời gian dùng thử ( thờng là 30 ngày hoặc 60 ngày).
* Phần mềm chia sẻ ( Shareware ).
Loại phần mềm này có đủ các tính năng và đợc phân phối tự do, nhng có
một giấy phép khuyến cáo các cá nhân hoặc tổ chức mua, tùy tình hình cụ thể.
Nhiều tiện ích Internet (nh WinZip dùng các thuận lợi của Shareware nh một hệ
thống phân phối).
* Phần mềm sử dụng phi thơng mại (Non-commercial Use).
Loại phần mềm này đợc sử dụng tự do và có thể phân phối lại bởi các tổ
chức phi lợi nhuận. Nhng các tổ chức kinh tế, thí dụ các doanh nghiệp, ... muốn
dùng phải mua. Netscape Navigator là một thí dụ của loại phần mềm này.
* Phần mềm không phải trả phần trăm cho nhà sản xuất (Royalties
Free Binaries Software): Phần mềm đợc cung cấp dới dạng nhị phân và đợc
dùng tự do. Thí dụ: bản nhị phân của các phần mềm Internet Explorer và
NetMeeting.
4
Tỡm hiu phn mm ngun m
*Th viện phần mềm không phải trả phần trăm (Royalties Free Software
Libraries):Là những phần mềm mà mã nhị phân cũng nh mã nguồn đợc dùng và
phân phối tự do, nhng ngời dùng không đợc phép sửa đổi. Thí dụ: các th viện lớp
học, các tệp header, vv ..
* Các phần mềm Mã nguồn mở hoàn toàn (Open Source Software-OSS).
1.2. nh ngha OSS
Có rất nhiều tổ chức đa ra định nghĩa của mình về Open Source Software. Tr-
ớc hết xin đa ra một số quan niệm của một số Tổ chức tại Việt Nam:
Theo Trang thông tin của Ban chỉ đạo Phần mềm nguồn mở quốc gia
( ) Phần mềm nguồn mở (OSS) là FOSS (Free/Open Source
Software) có sử dụng bất kì một dạng bản quyền đợc chấp nhận nào của Tổ chức sáng
kiến Mã nguồn Mở-OSI (Open Source Initiative- ) trong bản
liệt kê các bản quyền mã mở của tổ chức. OSS là những phần mềm đợc cung cấp dới
dạng mã và nguồn, không chỉ là miễn phí về giá mua mà chủ yếu là miễn phí về bản
quyền: ngời dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo một số nguyên
tắc chung qui định trong giấy phép OSS (ví dụ General Public Licence-GPL ) mà không
cần xin phép ai, điều mà họ không đợc phép làm đối với phần mềm nguồn đóng (tức là
phần mềm nguồn đóng). Nhà cung cấp phần mềm nguồn mở có quyền yêu cầu ngời
dùng trả một số chi phí về các dịch vụ bảo hành, huấn luyện, nâng cấp, t vấn, vv.. tức là
những dịch vụ thực sự đã thực hiện để phục vụ ngời dùng, nhng không đợc bán sản
phẩm nguồn mở vì nó là tài sản của trí tuệ chung, không là tài sản riêng của một nhà
cung cấp nào.
Theo Viện Tin học Pháp ngữ : Phần mềm mã nguồn mở-(Open Source
Software-OSS) là phần mềm có mã nguồn đợc cung cấp, đợc sao chép, đợc phép sửa đổi
và phát hành. Tuy nhiên phần mềm vẫn đợc bảo vệ bởi bản quyền và việc sử dụng phải
tuân theo một giấy phép nhất định, OSS không có nghĩa là Phần mềm tự do.
5
Tỡm hiu phn mm ngun m
Có hai hai khái niệm cần phải phân biệt đó là Phần mềm tự do và phần
mềm miễn phí:
+ Phần mềm tự do (Free Software): cho phép tự do sử dụng chơng trình với mọi
mục đích, tự do nghiên cứu các chức năng của phần mềm và sửa đổi phần mềm theo
nhu cầu cá nhân (có quyền truy cập mã nguồn của phần mềm), cho phép tự do phân
phối bản sao phần mềm cho mọi ngời, tự do cải tiến phần mềm và tự do công bố cải
tiến của mình. Phần mềm tự do cũng khác so với phần mềm miễn phí.
+ Phần mềm miễn phí (Freeware): Là phần mềm có chủ sở hữu, không có mã
nguồn tự do, đợc cung cấp miễn phí dới nhiều hình thức nh cho phép down load.
Nh vậy sự khác biệt cơ bản giữa Phần mềm nguồn mở và Phần mềm tự do là sự
khác nhau trong việc bảo vệ bản quyền; tức là OSS thì đợc bảo vệ bởi luật bản quyền
của một số Tổ chức, còn Phần mềm tự do thì không nhất thiết phải có mã nguồn và
không có copyright-không đợc bảo vệ.
Theo Tổ chức sáng kiến mã nguồn mở quốc tế - Open Source Initiative-
( ) định nghĩa mã nguồn mở nh sau: (Xem nguyên bản
Tiếng Anh trong phần Phụ lục): Một OSS không có nghĩa là có thể truy cập trực tiếp
vào mã nguồn của chơng trình; OSS đợc đảm bảo phân phối bởi một số Tổ chức mã
nguồn mở, và phải đảm bảo đợc một số nội dung :
(1). Phân phối tự do;
(2). Mã nguồn và cả chơng trình hoàn thiện;
(3). Nguồn gốc;
(4). Tôn trọng bản quyền của tác giả mã nguồn;
(5). Không phân biệt đối xử với nhóm hay nhiều ngời;
(6). Không phân biệt trong mục đích sử dụng;
(7). Đợc phân phối dới sự bảo hộ của các loại giấy phép;
(8). Các loại giấy phép dựa theo mục đích của nhà sản xuất;
6
Tỡm hiu phn mm ngun m
(9). Giấy phép sẽ không hạn chế các phần mềm khác;
(10). Các giấy phép là độc lập so với mặt công nghệ.
Có rất nhiều loại giấy phép của các tổ chức Mã nguồn mở khác nhau, nh
Apache, GNU/GPL, Mozilla, hay của Tổ chức BSD (Berkely Software Distribution)
vv sẽ đợc trình bày chi tiết trong phần Các luật về Mã nguồn mở.
Theo David Wheeler thỡ OSS l nhng chng trỡnh m quy trỡnh cp
phộp s cho ngi dựng quyn t do chy chng trỡnh theo bt k mc ớch
no, quyn nghiờn cu v sa i chng trỡnh, quyn sao chộp v tỏi phỏt hnh
phn mm gc hoc phn mm ó sa i (m khụng phi tr tin cho nhng
ngi lp trỡnh trc).
Xột v phng din phớ ng ký, OSS gn nh min phớ hon ton. a s
cỏc sn phm ca OSS cú th ti t Internet v m khụng phi mt mt chỳt phớ
no. Tuy nhiờn, hiu OSS luụn luụn min phớ l hon ton cha ỳng, bi vỡ
ngi s dng cũn phi tr cỏc chi phớ nhõn s, yờu cu v phn cng, chi phớ
o to, chi phớ cho cỏc dch v bo hnh, hun luyn, nõng cp, t vn, tc
l nhng dch v thc s ó thc hin phc v ngi dựng. Nhng nu xột
tt c cỏc chi phớ thỡ OSS cng r hn, kinh t hn phn mm cú bn quyn rt
nhiu.
Túm li
OSS l nhng phn mm c cung cp min phớ v bn quyn v mó
ngun chng trỡnh, ngi dung cú th sao chộp, chnh sa, phõn phi, úng gúi
v phỏt hnh; nhng phi tuõn th nhng quy nh ca cỏc lao giy phộp nht
nh v c bo v bn quyn.
II. Lch s phn mm ngun m (OSS)
- Nhng nm 1945-1975: Phn mm thng c trao i gia cỏc
nh lp trỡnh.
7
Tìm hiểu phần mềm nguồn mở
- Năm 1969: Đánh dấu sự ra dơid của Unix, trao đổi tự
do.
- Bắt đầu những năm 1970, mã nguồn dần “đóng lại”.
- Năm 1984 phiên bản Unix thương mại (có bản quyền
và giấy phép).
- Năm 1984, Richard Stalhan thành lập GNU phát triển
các phần mềm tự do trên Unix.
- Năm 1989 FSF (Free Software Foundation) định nghĩa
giấy phép GNU GPL (General Puplic Licesne ) và Copyleft.
- Năm 1991, Linus Torvald công bố mã nguồn của nhân một
hệ điều hành mới trên Internet.
- Năm 1992, Linux sử dụng giấy phép GPL
GNU/Linux = Nhân Linux + tiện ích GNU.
- Năm 1994, Linux được cài đặt lên các Proceessor của
Intel: Alpha, ARM, RISC, PowerPC, Sparc,…
- Năm 1995 ra đời Apache Web Server 2/3 Web servers trên
Internet.
- Năm 1999 ra đời giao diện đồ họa KDE, GNOME.
Xfree86 phiên bản GNU của X-Windows.
- Năm 2002: Sun Microsystem công bố OpenOffice.org.
- 1/2006: Cộng đồng mã nguồn mở GNU đưa ra phiên bản
mới của Luật mã nguồn mở GPL v3.
Lịch sử của OSS gắn liền với Richard Stalhman, làm việc tại phòng thí
nghiệm Trí tuệ nhân tạo MIT, là người đầu tiên thấy được sức mạnh của các phần
8
Tìm hiểu phần mềm nguồn mở
mềm “tự do”, tự do ở đây hiểu theo nghĩa tự do thay đổi mã nguồn không hẳn theo
nghĩa tự do về giá cả (hay miễn phí), người được coi như là một “vị thánh” trong
cộng đồng GNU/Linux, và là người sáng lập Hiệp hội phần mềm miễn phí (FSF) tại
Mĩ, lập giấy phép nguồn mở GPL (General Public License), và tạo nền tảng cho
Linus Torvalds viết hệ điều hành Linux. Tuy khái niệm mã nguồn mở được Richard
Stalhman nêu ra từ những năm 1970, nhưng thực sự trở thành một khuynh hướng rõ
rệt trong lĩnh vực phần mềm khoảng từ năm 1991, sau khi Linux ra đời.
• Mét sè tæ chøc OSS
Có rất nhiều các tổ chức OSS hoạt động phi lợi nhuận, dưới đây chỉ sin
được nêu ra 5 tổ chức lớn nhất:
- Tổ chức phần mềm tự do FSF
- Tổ chức phần mềm quốc tế OSI
- Tổ chức phần mềm Apache
- Tổ chức Mozilla
- Viện nghiên cứu phần mềm mã mở và tự do BSD
III. Ưu – Nhược điểm của OSS
3.1.Ưu điểm
Lợi ích của OSS thể hiện rõ nhất ở tính kinh tế của nó, sử dụng OSS thực
sự đã tiết kiệm được khoản tiền khổng lồ. Song đó không phải là tất cả, bởi đôi
khi lựa chọn phần mềm, người ta không quá chú trọng duy nhất vào vấn đề kinh
phí, cái mà họ quan tâm là tiện ích sử dụng, chất lượng phần mềm. Xét về mặt
này OSS có những ưu việt đáng kể như: Tính an toàn; Tính ổn định/ đáng tin
9
Tìm hiểu phần mềm nguồn mở
cậy; Các chuẩn mở và việc không phải lệ thuộc vào nhà cung cấp; Giảm phụ
thuộc vào nhập khẩu; Phát triển năng lực ngành công nghiệp địa phương; Vấn
đề vi phạm bản quyền, quyền sở hữu trí tuệ; tính tuân thủ WTO; Nội địa hoá.
- Tính an toàn: Thực tế cho thấy không hề tồn tại một hệ điều hành nào
mà tính an toàn của nó được hoàn hảo. Song, so với phần mềm nguồn đóng
(PMNĐ) thì OSS ưu việt hơn hẳn về độ an toàn, bởi vì:
+ Thứ nhất, mã nguồn được phổ biến rộng rãi giúp người lập trình và
người sử dụng dễ phát hiện và khắc phục những lỗ hổng an toàn trước khi
chúng bị lợi dụng. Các OSS thường có quy trình rà soát chủ động chứ không
phải rà soát đối phó.
+ Thứ hai, ưu tiên tính an toàn đặt trên tiêu chí tiện dụng. Trước khi thêm
bất cứ tính năng nào vào ứng dụng OSS, bao giờ người ta cũng cân nhắc đến
khía cạnh an toàn và tính năng đó sẽ chỉ được đưa vào nếu không làm yếu đi
tính an toàn của hệ thống.
+ Thứ ba, các hệ thống OSS chủ yếu dựa trên mô hình của Unix, nhiều
người sử dụng, thuận tiện cho kết nối mạng. Vì vậy, chúng được thiết kế với
một cấu trúc an toàn bảo mật cao, để một người sử dụng bất kỳ không thể đột
nhập vào máy chủ, ăn trộm dữ liệu cá nhân của người khác hoặc làm cho mọi
người không thể tiếp cận được với các dịch vụ do hệ thống cung cấp.
- Tính ổn định / đáng tin cậy: Các OSS nổi tiếng là ổn định và đáng tin
cậy. Đây là kết luận rút ra sau khi các nhà nghiên cứu đã tiến hành thử nghiệm
so sánh với các PMNĐ khác.
- Các chuẩn mở và việc không phải lệ thuộc vào nhà cung cấp: OSS
thực chất dựa trên ba trụ cột “mở”: Nguồn mở, chuẩn mở, nội dung mở.
OSS luôn sử dụng các chuẩn mở bởi hai lý do sau :
10
Tìm hiểu phần mềm nguồn mở
+ Một là sẵn có mã nguồn. Với mã nguồn phổ biến công khai, người ta
lúc nào cũng có thể tái thiết kế và tích hợp lại bộ chuẩn của một ứng dụng. Mọi
khả năng tùy biến đều đã thể hiện rõ trong mã nguồn, khiến không ai có thể dấu
một chuẩn riêng trong một hệ thống OSS.
+ Hai là chủ động tương thích chuẩn. Khi đã có những chuẩn đã được
thừa nhận rộng rãi thì các dự án OSS luôn chủ động bám sát những chuẩn này.
Đặc biệt, khi sử dụng các sản phẩm OSS, người sử dụng không còn phải lệ
thuộc vào nhà cung cấp nữa.
- Giảm lệ thuộc vào xuất khẩu: Trước kia, mỗi quốc gia đang phát triển
muốn có một PMNĐ thì họ phải trả chi phí khổng lồ để có được giấy phép sử
dụng chúng. Điều này làm tiêu hao quỹ dự trữ ngoại tệ quốc gia. Giải pháp OSS
ra đời đã giúp các quốc gia này dễ dàng giải quyết khó khăn vừa nêu.
- Phát triển năng lực ngành công nghiệp phần mềm địa phương: Phát
triển OSS tạo năng lực đổi mới của một nền kinh tế. Bởi vì OSS, theo nguyên lý
khuyến khích sửa đổi và lưu hành tự do, rất dễ tìm, dễ sử dụng và dễ học hỏi.
OSS cho phép các nhà lập trình phát huy kiến thức và những nhân tố hiện có để
tiếp tục sáng tạo nên những phần mềm mới, giống như phương pháp tiến hành
nghiên cứu cơ bản. Bản chất mở và tính phối hợp cao của quy trình phát triển
OSS cho phép người học có thể tìm hiểu và thí nghiệm với các khái niệm phần
mềm mà hầu như không gây tốn kém trực tiếp cho xã hội.
- Vấn đề vi phạm bản quyền, quyền sở hữu trí tuệ và tính tuân thủ
WTO: Tỷ lệ sao chép phần mềm trên thế giới nói chung là rất cao, ngay cả ở
những nước phát triển cũng vậy, như Mỹ là 24%, châu Âu là 35%. Nạn sao
chép phần mềm này làm thiệt hại cho các quốc gia trên nhiều phương diện. OSS
ra đời là giải pháp hữu ích cho vấn đề này.
- Bản địa hoá: Đây là lĩnh vực mà OSS tỏ rõ nhất ưu thế của mình.
Người sử dụng OSS có thể tự do sửa đổi để phần mềm trở nên thích ứng với
những nhu cầu riêng biệt của một khu vực văn hoá đặc thù, bất kể quy mô kinh
11
Tìm hiểu phần mềm nguồn mở
tế của khu vực đó. Chỉ cần một nhóm nhỏ những người có trình độ kỹ thuật là
đã có thể tạo ra một phiên bản nội địa ở mức thấp cho bất cứ OSS nào.
3.2. Nhược điểm
Không tồn tại phần mềm nào hoàn hảo và thích hợp cho mọi tình huống,
OSS cũng còn những hạn chế nhất định, đó là :
- Thiếu các ứng dụng kinh doanh đặc thù: Mặc dù có rất nhiều dự án OSS
đang được tiến hành, vẫn còn nhiều lĩnh vực chưa có một sản phẩm phần mềm
hoàn thiện, đặc biệt là trong kinh doanh. Đó là do thiếu những người vừa giỏi
về kỹ thuật lại vừa thạo về kinh doanh.
- Tính tương hỗ với các phần mềm đóng: Các OSS nhất là khi cài trên
máy để bàn, thường không hoàn toàn tương thích với PMNĐ. Đến lúc nào đó,
khi các công ty đã chuyển từ hệ thống chuẩn đóng sang chuẩn mở thì vấn đề
này sẽ được khắc phục.
OSS thiếu mất tính tiện dụng vốn là đặc trưng của phần mềm thương
mại. Ngoài việc thiếu vắng một hệ thống hỗ trợ có chất lượng cao thì giao diện
đồ họa với người sử dụng (GUI – Graphical User Interface) của OSS cũng
không thân thiện. Vì giao diện đồ họa trong đa số các hệ thống OSS không phải
là một nhân tố riêng lẻ mà là một tập hợp kết quả từ nhiều dự án khác nhau, các
yếu tố của giao diện thường hoạt động theo trình tự rất khác nhau. Chỉ riêng
lệnh “lưu dữ liệu” của chương trình này cũng đã khác chương trình kia, đây là
điểm khác biệt so với các hệ điều hành nguồn đóng như Microsoft Windows.
Mặc dù khá nhiều công sức đang được bỏ ra để thống nhất giao diện cho các
chức năng cấu thành nhưng hệ điều hành OSS có thể sẽ vẫn ở tình trạng thiếu
đồng bộ trong một thời gian nữa.
Tuy nhiên, cùng với sự phát triển của OSS, tất cả những hạn chế này sẽ
dần được khắc phục.
12
Tìm hiểu phần mềm nguồn mở
IV. Luật phần mềm nguồn mở
4.1.Giấy phép của cộng đồng GNU
(The GNU General Public License – GNU/GPL)
Giấy phép công cộng GNU
Phiên bản 2, tháng 6/1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
Mọi người đều được phép sao chép và lưu hành bản sao nguyên bản nhưng
không được phép thay đổi nội dung của giấy phép này.
Lời nói đầu
Giấy phép sử dụng của hầu hết các phần mềm đều được đưa ra nhằm hạn
chế bạn tự do chia sẻ và thay đổi nó. Ngược lại, Giấy phép Công cộng của
GNU có mục đích đảm bảo cho bạn có thể tự do chia sẻ và thay đổi phần mềm
(tự do) - tức là đảm bảo rằng phần mềm đó là tự do đối với mọi người sử dụng.
Giấy phép Công cộng này áp dụng cho hầu hết các phần mềm của Tổ chức
Phần mềm Tự do và cho tất cả các chương trình khác mà tác giả của chúng cho
phép áp dụng. (Đối với một số phần mềm khác của Tổ chức Phần Mềm Tự do,
có thể nên áp dụng Giấy phép Công cộng Hạn chế của GNU thay cho giấy
phép này ). Bạn cũng có thể áp dụng nó cho các chương trình của mình.
Khi nói đến phần mềm tự do, chúng ta nói đến sự tự do sử dụng chứ
không quan tâm về giá cả. Giấy phép Công cộng của chúng tôi được thiết kế để
đảm bảo rằng bạn hoàn toàn tự do cung cấp các bản sao của phần mềm tự do
(và thu tiền đối với dịch vụ này nếu bạn muốn), rằng bạn có thể nhận được mã
nguồn nếu bạn có yêu cầu, rằng bạn có thể thay đổi phần mềm hoặc sử dụng
13
Tìm hiểu phần mềm nguồn mở
các thành phần của phần mềm đó cho những chương trình tự do mới; và rằng
bạn biết chắc là bạn có thể làm được những điều này.
Để bảo vệ các quyền của bạn, chúng tôi cần đưa ra những hạn chế để ngăn
chặn những ai chối bỏ quyền của bạn, hoặc yêu cầu bạn chối bỏ quyền của
mình. Những hạn chế này đồng thời cũng là những trách nhiệm nhất định của
bạn khi bạn cung cấp các bản sao phần mềm hoặc khi bạn chỉnh sửa các phần
mềm đó.
Ví dụ, nếu bạn cung cấp các bản sao của một chương trình, dù miễn phí hay
không, bạn phải cho người nhận tất cả các quyền mà bạn có. Bạn cũng phải
đảm bảo rằng họ cũng nhận được hoặc tiếp cận được mã nguồn. Và bạn phải
thông báo những điều khoản này để họ biết rõ về quyền của mình.
Chúng tôi bảo vệ quyền của bạn với hai bước: (1) xác lập bản quyền đối với
phần mềm, và (2) cấp giấy phép này để bạn có thể sao chép, lưu hành và/hoặc
chỉnh sửa phần mềm một cách hợp pháp.
Ngoài ra, để bảo vệ các tác giả cũng như để bảo vệ chính mình, chúng tôi
muốn chắc chắn rằng tất cả mọi người đều hiểu rõ rằng phần mềm tự do không
hề có bảo hành. Nếu phần mềm được chỉnh sửa thay đổi bởi một người khác và
sau đó chuyển tiếp sang người khác nữa, thì chúng tôi muốn người tiếp nhận
nó biết rằng phiên bản họ đang có không phải là bản gốc, do đó tất cả những
trục trặc do những người khác gây ra hoàn toàn không ảnh hưởng tới uy tín của
tác giả ban đầu.
Cuối cùng, bất kỳ một chương trình tự do nào cũng đều thường xuyên có
nguy cơ bị đe doạ về bản quyền phần mềm. Chúng tôi muốn tránh nguy cơ khi
những người cung cấp lại một chương trình tự do có thể có được giấy phép bản
quyền cho bản thân họ, từ đó trở thành độc quyền đối với chương trình. Để
ngăn ngừa trường hợp này, chúng tôi đã nêu rõ rằng mỗi giấy phép bản quyền
14
Tìm hiểu phần mềm nguồn mở
hoặc phải được cấp cho tất cả mọi người sử dụng một cách tự do hoặc hoàn
toàn không được cấp phép.
Dưới đây là những điều khoản và điều kiện cho việc sao chép, lưu hành và
chỉnh sửa.
Những điều khoản và điều kiện đối với việc sao chép, lưu hành và chỉnh
sửa
0. Giấy phép này áp dụng cho bất kỳ một chương trình hay sản phẩm nào
mà người giữ bản quyền công bố rằng nó có thể được cung cấp trong khuôn
khổ những điều khoản của Giấy phép Công cộng này. Từ “Chương trình” dưới
đây có nghĩa là bất cứ chương trình hay sản phẩm nào như vậy, và “sản phẩm
dựa trên Chương trình” có nghĩa là Chương trình hoặc bất kỳ một sản phẩm
nào bắt nguồn từ Chương trình đó tuân theo luật bản quyền, tức là một sản
phẩm dựa trên Chương trình hoặc một phần của nó, dù là đúng nguyên bản
hoặc có một số chỉnh sửa và/hoặc được dịch ra một ngôn ngữ khác. (Dưới đây,
việc dịch cũng được hiểu trong khái niệm “chỉnh sửa”). Mỗi người được cấp
phép được gọi là “bạn”.
Các hoạt động không phải là sao chép, lưu hành và chỉnh sửa thì không được
đề cập ở đây; chúng nằm ngoài phạm vi của Giấy phép này. Hành động chạy
chương trình không bị ngăn cấm, và những kết quả thu được từ việc chạy
Chương trình chỉ thuộc phạm vi áp dụng của Giấy phép này nếu nội dung của
nó tạo thành một sản phẩm dựa trên Chương trình (cho dù nhờ có việc chạy
Chương trình mà mới có được nó). Khả năng này có xảy ra hay không là phụ
thuộc vào công việc mà Chương trình thực hiện.
1. Bạn có thể sao chép và lưu hành những bản sao nguyên bản của mã nguồn
Chương trình đúng như khi bạn nhận được nó, qua bất kỳ phương tiện phân
phối nào, với điều kiện rằng trên mỗi bản sao bạn đều kèm theo một ghi chú
bản quyền rõ ràng và từ chối bảo hành; giữ nguyên tất cả những nội dung
thông báo đề cập đến Giấy phép này và về việc không có bất kỳ một sự bảo
15
Tìm hiểu phần mềm nguồn mở
hành nào; và cùng với Chương trình, bạn cung cấp cho người sử dụng một bản
sao của Giấy phép này.
Bạn có thể tính phí cho việc cung cấp vật lý một bản sao nào đó, và tuỳ theo
quyết định của mình bạn có thể đưa ra một cam kết bảo hành để lấy một khoản
phí tương ứng.
2. Bạn có thể chỉnh sửa bản sao của bạn hoặc các bản sao của Chương trình
hoặc của bất kỳ phần nào của nó, từ đó hình thành một sản phẩm dựa trên
Chương trình, và sao chép cũng như lưu hành sản phẩm hoặc những chỉnh sửa
đó theo các điều khoản tại Mục 1 ở trên, với điều kiện bạn cũng đáp ứng tất cả
những điều kiện dưới đây:
• a) Bạn phải có ghi chú rõ ràng trong những tập tin đã chỉnh sửa là bạn đã
chỉnh sửa nó, và ngày tháng của bất kỳ một thay đổi nào.
• b) Đối với các sản phẩm nào bạn cung cấp hoặc phát hành mà bao gồm hoặc
bắt nguồn hoàn toàn hay một phần từ Chương trình hoặc bất cứ phần nào của
nó thì Bạn phải cấp phép miễn phí cho tất cả các bên thứ ba theo những điều
khoản của Giấy phép này.
• c) Nếu chương trình đã chỉnh sửa thường đọc lệnh tương tác trong khi chạy,
bạn phải thực hiện sao cho khi bắt đầu chạy để sử dụng tương tác theo cách
thông thường nhất, chương trình phải in ra hoặc hiện ra một thông báo về bản
quyền và thông báo về việc không có bảo hành (hoặc thông báo bạn là người
cung cấp bảo hành), và rằng người sử dụng có thể cung cấp lại Chương trình
theo những điều kiện đã nêu, và thông báo để người sử dụng biết làm thế nào
để có thể xem bản sao của Giấy phép này. (Ngoại lệ: nếu bản thân Chương
trình là tương tác nhưng bình thường nó không đưa ra một thông báo nào như
trên, thì sản phẩm của bạn dựa trên Chương trình đó cũng không bắt buộc phải
có thông báo như vậy).
Những yêu cầu trên áp dụng cho toàn bộ sản phẩm chỉnh sửa. Nếu có những
phần xác định được của sản phẩm rõ ràng là không bắt nguồn từ Chương trình,
16
Tìm hiểu phần mềm nguồn mở
và có căn cứ hợp lý để có thể được xem là những sản phẩm độc lập và riêng
biệt, thì Giấy phép này và các điều khoản của nó sẽ không áp dụng cho những
phần đó khi bạn cung cấp chúng như những sản phẩm riêng biệt. Nhưng khi
bạn cung cấp những phần đó như những phần nhỏ trong cả một sản phẩm dựa
trên Chương trình thì việc cung cấp toàn bộ sản phẩm này phải tuân theo
những điều khoản của Giấy phép này, mà giá trị cấp phép của nó đối với người
được cấp phép sẽ áp dụng đối với toàn bộ sản phẩm và do đó, đối với từng và
tất cả các phần trong đó, bất kể ai đã viết ra nó.
Như vậy, phần quy định này không nhằm mục đích xác nhận quyền hoặc tranh
giành quyền của bạn đối với những sản phẩm hoàn toàn do bạn viết; mà mục
đích của nó là nhằm thực hiện quyền kiểm soát đối với việc cung cấp những
sản phẩm bắt nguồn từ hoặc tập hợp thành nhóm dựa trên Chương trình.
Ngoài ra, việc kết hợp thuần tuý Chương trình (hoặc một sản phẩm dựa trên
Chương trình) với một sản phẩm khác không dựa trên Chương trình trên một
tập hợp nào đó của một phương tiện lưu trữ hoặc quảng bá sẽ không làm cho
sản phẩm khác đó rơi vào phạm vi áp dụng của Giấy phép này.
3. Bạn có thể sao chép và cung cấp Chương trình (hoặc một sản phẩm dựa trên
Chương trình, theo Mục 2) dưới hình thức mã đã biên dịch hoặc dạng có thể
thực thi được trong khuôn khổ các điều khoản nêu trong Mục 1 và 2 ở trên, nếu
như bạn:
• a) Kèm theo đó một bản mã nguồn tương ứng dạng đầy đủ có thể biên dịch
được, và mã nguồn này phải được cung cấp theo các điều khoản trong Mục 1
và 2 nêu trên thông qua một phương tiện mang tin thông thường vẫn được sử
dụng cho mục đích trao đổi phần mềm; hoặc
• b) Kèm theo đó một đề nghị bằng văn bản có giá trị ít nhất 3 năm về việc
cung cấp cho bất kỳ một bên thứ ba một bản sao đầy đủ của mã nguồn tương
ứng, và việc cung cấp này phải được thực hiện thông qua một phương tiện
thông thường vẫn được sử dụng để trao đổi phần mềm, với chi phí không cao
17
Tìm hiểu phần mềm nguồn mở
hơn giá chi phí vật lý của hành vi cung cấp và căn cứ theo các điều khoản tại
các Mục 1 và 2 nêu trên; hoặc
• c) Kèm theo đó những thông tin bạn đã nhận được về đề nghị cung cấp mã
nguồn tương ứng. (Phương án này chỉ được phép đối với việc phân phối phi
thương mại và chỉ với điều kiện nếu bạn nhận được Chương trình dưới hình
thức mã đã biên dịch hoặc dạng có thể thực thi được cùng với lời đề nghị như
vậy, theo phần b trong điều khoản nêu trên).
Mã nguồn của một sản phẩm là một dạng của sản phẩm thường được dùng cho
việc chỉnh sửa nó. Với một sản phẩm có thể thi hành, mã nguồn hoàn chỉnh có
nghĩa là toàn bộ các mã nguồn cho tất cả các môđun trong sản phẩm đó, cùng
với tất cả các tệp tin định nghĩa giao diện đi kèm , cùng với tập lệnh dùng để
kiểm soát việc biên dịch và cài đặt các tập tin thi hành. Tuy nhiên, có một
ngoại lệ đặc biệt là mã nguồn được cung cấp không cần chứa những thành
phần mà bình thường vẫn được cung cấp (dưới hình thức mã nguồn hoặc dạng
nhị phân) cùng với những thành phần chính (chương trình biên dịch, nhân, và
những phần tương tự) của hệ điều hành mà các chương trình sẽ chạy trong đó,
trừ khi bản thân thành phần đó lại đi kèm với một tập tin thi hành.
Nếu việc cung cấp mã đã biên dịch hoặc tập tin thi hành được thực hiện qua
việc cho phép tiếp cận để sao chép từ một địa điểm được chỉ định, thì việc cho
phép tiếp cận theo một phương thức tương đương để sao chép mã nguồn từ
cùng địa điểm cũng được tính như việc cung cấp mã nguồn, kể cả khi các bên
thứ ba không bị buộc phải sao chép mã nguồn cùng với mã đã biên dịch.
4. Bạn không được phép sao chép, chỉnh sửa, cấp phép hoặc cung cấp Chương
trình trừ phi phải tuân thủ một cách chính xác các điều khoản trong Giấy phép
này. Bất kỳ ý định sao chép, chỉnh sửa, cấp phép hoặc cung cấp Chương trình
theo cách khác đều làm mất hiệu lực và tự động huỷ bỏ quyền của bạn trong
khuôn khổ Giấy phép này. Tuy nhiên, những bên nào đã nhận được bản sao
hoặc quyền từ bạn căn cứ theo Giấy phép này sẽ không bị mất bản quyền,
18
Tìm hiểu phần mềm nguồn mở
chừng nào các bên đó vẫn tuân thủ đầy đủ các điều khoản của giấy phép này.
5. Bạn không bắt buộc phải chấp nhận Giấy phép này khi bạn chưa ký vào đó.
Tuy nhiên, thiếu nó bạn sẽ không được phép chỉnh sửa hoặc cung cấp Chương
trình hoặc các sản phẩm bắt nguồn từ Chương trình. Những hành động này bị
luật pháp nghiêm cấm nếu bạn không chấp nhận Giấy phép này. Do vậy, bằng
việc chỉnh sửa hoặc cung cấp Chương trình (hoặc bất kỳ một sản phẩm nào
dựa trên Chương trình), bạn đã thể hiện sự chấp thuận Giấy phép này, cùng với
tất cả các điều khoản và điều kiện đối với việc sao chép, cung cấp hoặc chỉnh
sửa Chương trình hoặc các sản phẩm dựa trên nó.
6. Mỗi khi bạn cung cấp lại Chương trình (hoặc bất kỳ một sản phẩm nào dựa
trên Chương trình), người nhận sẽ tự động nhận được giấy phép từ người cấp
phép đầu tiên cho phép sao chép, cung cấp và chỉnh sửa Chương trình theo các
điều khoản và điều kiện này. Bạn không thể áp đặt bất cứ hạn chế nào khác đối
với quyền của những người tiếp nhận ở đây. Bạn cũng không phải chịu trách
nhiệm bắt buộc các bên thứ ba tuân thủ theo Giấy phép này.
7. Nếu như, theo quyết định của toà án hoặc với những khiếu nại về việc vi
phạm bản quyền hoặc vì bất kỳ lý do nào khác (không chỉ giới hạn trong các
vấn đề về bản quyền), mà bạn phải tuân theo các điều kiện (nêu ra trong lệnh
của toà án, biên bản thoả thuận hoặc theo cách khác) trái với các điều kiện của
Giấy phép GPL, thì chúng cũng không thể miễn cho bạn khỏi những điều kiện
của Giấy phép này. Nếu bạn không thể đồng thời thực hiện các nghĩa vụ của
mình trong khuôn khổ Giấy phép này và các nghĩa vụ thích đáng khác, thì hậu
quả là bạn hoàn toàn không được cung cấp Chương trình. Ví dụ, nếu giấy phép
bản quyền không cho phép những người nhận có được bản sao của Chương
trình trực tiếp hoặc gián tiếp qua bạn một cách miễn phí thì trong trường hợp
này cách duy nhất bạn có thể thoả mãn cả hai điều kiện là hoàn toàn không
cung cấp Chương trình.
19
Tìm hiểu phần mềm nguồn mở
Nếu bất kỳ một phần nào trong điều khoản này không có hiệu lực hoặc không
thể thi hành trong một hoàn cảnh cụ thể, thì phần nội dung còn lại của điều
khoản vẫn được áp dụng, và toàn bộ điều khoản sẽ được áp dụng trong những
hoàn cảnh khác.
Mục đích của điều khoản này không nhằm buộc bạn phải vi phạm bất kỳ bản
quyền nào hoặc các quyền sở hữu khác hoặc tranh luận về giá trị hiệu lực của
bất kỳ quyền hạn nào như vậy; mục đích duy nhất của điều khoản này là nhằm
bảo vệ sự toàn vẹn của hệ thống cung cấp phần mềm tự do đang được thực
hiện theo những thực tiễn chung về giấy phép công cộng. Nhiều người đã đóng
góp một cách tích cực vào hàng loạt các phần mềm tự do được cung cấp thông
qua hệ thống này với sự tin tưởng rằng hệ thống được sử dụng một cách thống
nhất; tác giả/người cung cấp có quyền quyết định về việc họ có cung cấp phần
mềm thông qua hệ thống nào khác hay không, và người được cấp phép không
thể tác động tới sự lựa chọn này.
Điều khoản này nhằm làm rõ những vấn đề được cho là hậu quả tiếp theo của
các phần còn lại của Giấy phép này.
8. Nếu việc cung cấp và/hoặc sử dụng Chương trình bị cấm ở một số nước nhất
định bởi quy định về sáng chế hoặc bản quyền, và người giữ bản quyền gốc đã
quyết định áp dụng Giấy phép này cho Chương trình thì có thể bổ sung một
điều khoản cụ thể hạn chế việc cung cấp theo phạm vi lãnh thổ để loại trừ các
nước đó ra, tức là việc cung cấp chỉ được phép ở các nước không nằm trong
danh sách hạn chế. Trong trường hợp đó, điều khoản loại trừ sẽ được coi như
một thành phần của Giấy phép này.
9. Tổ chức Phần mềm Tự do có thể tuỳ từng thời điểm mà công bố những
phiên bản chỉnh sửa và/hoặc phiên bản mới của Giấy phép Công cộng. Những
phiên bản đó sẽ đồng nhất với tinh thần của phiên bản hiện này, nhưng có thể
khác ở một số chi tiết nhằm giải quyết những vấn đề hay những quan ngại mới.
20
Tìm hiểu phần mềm nguồn mở
Mỗi phiên bản sẽ có một mã số phiên bản riêng. Nếu Chương trình và "bất kỳ
một phiên bản nào sau đó" có áp dụng một phiên bản Giấy phép cụ thể, thì bạn
có quyền lựa chọn tuân theo những điều khoản và điều kiện của phiên bản giấy
phép đó hoặc của bất kỳ một phiên bản nào sau đó do Tổ chức Phần mềm Tự
do công bố. Nếu Chương trình không nêu cụ thể mã số phiên bản giấy phép,
bạn có thể lựa chọn bất kỳ một phiên bản nào đã từng được công bố bởi Tổ
chức Phần mềm Tự do.
10. Nếu bạn muốn kết hợp các phần của Chương trình vào các chương trình tự
do khác mà điều kiện cung cấp khác với chương trình này, hãy viết cho tác giả
để được phép. Đối với các phần mềm được cấp bản quyền bởi Tổ chức Phầm
mềm Tự do, hãy đề xuất; đôi khi chúng tôi cũng có những ngoại lệ. Quyết định
của chúng tôi sẽ dựa trên hai mục tiêu là bảo hộ tình trạng tự do của tất cả các
sản phẩm bắt nguồn từ phần mềm tự do của chúng tôi, và thúc đẩy việc chia sẻ
và tái sử dụng phần mềm nói chung.
KHÔNG BẢO HÀNH
DO CHƯƠNG TRÌNH ĐƯỢC CẤP PHÉP MIỄN PHÍ NÊN KHÔNG CÓ
MỘT CHẾ ĐỘ BẢO HÀNH NÀO TRONG MỨC ĐỘ CHO PHÉP CỦA
LUẬT PHÁP. TRỪ KHI ĐƯỢC CÔNG BỐ KHÁC ĐI BẰNG VĂN BẢN,
NHỮNG NGƯỜI GIỮ BẢN QUYỀN VÀ/HOẶC CÁC BÊN CUNG CẤP
CHƯƠNG TRÌNH "NGUYÊN TRẠNG" SẼ KHÔNG BẢO HÀNH DƯỚI
BẤT KỲ HÌNH THỨC NÀO DÙ CÓ QUY ĐỊNH RÕ HAY NGỤ Ý, BAO
GỒM NHƯNG KHÔNG GIỚI HẠN TRONG CÁC HÌNH THỨC BẢO
HÀNH ĐỐI VỚI TÍNH THƯƠNG MẠI CŨNG NHƯ TÍNH THÍCH HỢP
CHO MỘT MỤC ĐÍCH CỤ THỂ. BẠN LÀ NGƯỜI CHỊU TOÀN BỘ RỦI
RO VỀ CHẤT LƯỢNG CŨNG NHƯ VIỆC VẬN HÀNH CHƯƠNG TRÌNH.
TRONG TRƯỜNG HỢP CHƯƠNG TRÌNH CÓ KHIẾM KHUYẾT, BẠN
PHẢI CHỊU TOÀN BỘ CHI PHÍ CHO NHỮNG DỊCH VỤ SỬA CHỮA
CẦN THIẾT.
21
Tìm hiểu phần mềm nguồn mở
TRONG TẤT CẢ CÁC TRƯỜNG HỢP TRỪ KHI CÓ YÊU CẦU CỦA
LUẬT PHÁP HOẶC CÓ THOẢ THUẬN BẰNG VĂN BẢN, NHỮNG
NGƯỜI NẮM BẢN QUYỀN HOẶC BẤT KỲ MỘT BÊN NÀO CHỈNH
SỬA VÀ/HOẶC CUNG CẤP LẠI CHƯƠNG TRÌNH THEO SỰ CẤP PHÉP
NHƯ TRÊN ĐỀU KHÔNG CÓ TRÁCH NHIỆM VỚI BẠN VỀ CÁC LỖI
HỎNG HÓC, BAO GỒM CÁC LỖI THÔNG THƯỜNG HAY ĐẶC BIỆT,
NGẪU NHIÊN HAY TẤT YẾU NẢY SINH DO VIỆC SỬ DỤNG HOẶC
KHÔNG SỬ DỤNG ĐƯỢC CHƯƠNG TRÌNH (BAO GỒM NHƯNG
KHÔNG GIỚI HẠN TRONG VIỆC MẤT DỮ LIỆU, DỮ LIỆU THIẾU
CHÍNH XÁC HOẶC CHƯƠNG TRÌNH KHÔNG VẬN HÀNH ĐƯỢC VỚI
CÁC CHƯƠNG TRÌNH KHÁC), THẬM CHÍ CẢ KHI NGƯỜI NẮM BẢN
QUYỀN VÀ CÁC BÊN KHÁC ĐÃ ĐƯỢC THÔNG BÁO VỀ KHẢ NĂNG
XẢY RA NHỮNG THIỆT HẠI ĐÓ.
KẾT THÚC CÁC ĐIỀU KIỆN VÀ ĐIỀU KHOẢN.
Áp dụng những điều khoản trên như thế nào đối với chương trình của bạn
Nếu bạn xây dựng một chương trình mới, và bạn muốn cung cấp một cách tối
đa cho công chúng sử dụng, thì biện pháp tốt nhất để đạt được điều này là phát
triển chương trình đó thành phần mềm tự do để ai cũng có thể cung cấp lại và
thay đổi theo những điều khoản như trên.
Để làm được việc này, hãy đính kèm những ghi chú như sau vào chương trình
của mình. An toàn nhất là đính kèm chúng trong phần đầu của tập tin mã
nguồn để thông báo một cách hiệu quả nhất về việc không có bảo hành; và mỗi
tệp tin đều phải có ít nhất một dòng về “bản quyền” và trỏ đến toàn văn nội
dung thông báo.
22
Tìm hiểu phần mềm nguồn mở
Một dòng đề tên chương trình và nội dung của nó.
Bản quyền (C) năm, tên tác giả.
Chương trình này là phần mềm tự do, bạn có thể cung cấp lại và/hoặc chỉnh
sửa nó theo những điều khoản của Giấy phép Công cộng của GNU do Tổ chức
Phần mềm Tự do công bố; phiên bản 2 của Giấy phép, hoặc bất kỳ một phiên
bản sau đó (tuỳ sự lựa chọn của bạn).
Chương trình này được cung cấp với hy vọng rằng nó sẽ hữu ích, tuy nhiên
KHÔNG CÓ BẤT KỲ MỘT BẢO HÀNH NÀO; thậm chí kể cả bảo hành về
KHẢ NĂNG THƯƠNG MẠI hoặc TÍNH THÍCH HỢP CHO MỘT MỤC
ĐÍCH CỤ THỂ. Xin xem Giấy phép Công cộng của GNU để biết thêm chi tiết.
Bạn phải nhận được một bản sao của Giấy phép Công cộng của GNU kèm theo
chương trình; nếu bạn chưa nhận được, xin gửi thư về Tổ chức Phần mềm Tự
do, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Bạn cũng phải bổ sung thông tin về địa chỉ liên lạc của bạn (thư điện tử và bưu
điện).
Nếu chương trình chạy tương tác, hãy cho nó đưa ra một thông báo ngắn khi
bắt đầu chạy chương trình như sau:
Gnomovision phiên bản 69, Copyright (C) năm, tên tác giả.
Gnomovision HOÀN TOÀN KHÔNG CÓ BẢO HÀNH; để xem chi tiết hãy
gõ `show w'. Đây là một phần mềm tự do, bạn có thể phân phối tiếp với những
điều kiện nhất định, gõ ‘show c’ để xem chi tiết.
Các lệnh có tính giả thiết `show w' và `show c' sẽ cho xem những phần tương
ứng trong Giấy phép Công cộng. Tất nhiên những lệnh mà bạn dùng có thể
khác với ‘show w' và `show c'; những lệnh này có thể là nhấn chuột hoặc lệnh
23
Tỡm hiu phn mm ngun m
trong thanh cụng c - tu theo chng trỡnh ca bn.
Khi cn thit, bn cng cn phi ly ch ký ca ngi ph trỏch (nu bn l
ngi lp trỡnh) hoc ca trng hc (nu cú) xỏc nhn t chi bn quyn i
vi chng trỡnh. Sau õy l vớ d:
Yoyodyne, Inc., bng vn bn ny t chi tt c cỏc quyn li bn quyn i
vi chng trỡnh `Gnomovision' vit bi James Hacker.
ch ký ca Ty Coon, 1 thỏng 4 nm 1989
Ty Coon, Phú Tng Giỏm c.
Giy phộp Cụng cng ny khụng cho phộp a chng trỡnh ca bn vo trong
cỏc chng trỡnh c quyn. Nu chng trỡnh ca bn l mt th vin th tc
ph, bn cú th thy nú hu ớch hn nu cho th vin liờn kt vi cỏc ng dng
c quyn. Nu õy l vic bn mong mun, hóy s dng Giy phộp Cụng
cng Hn ch ca GNU thay cho Giy phộp ny.
4.2. Giy phộp ca t chc phn mm APACHE
IU KHON V IU KIN V S DNG V SAO
CHẫP PHN PHI
1.Định nghĩa.
"Chứng chỉ" - License - là các điều khoản và điều kiện về sử dụng, sao chép, và phân
phối nh đợc định nghĩa từ Mục 1 đến 9 của văn bản này.
"Ngời cấp chứng chỉ" - Licensor - là Chủ sở hữu bản quyền (copyright owner) hoặc
những thực thể (Entity) đợc Chủ sở hữu bản quyền uỷ quyền cung cấp Chứng chỉ.
Thực thể hợp pháp" - Legal Entity - bao gồm tập hợp các thực thể nắm quyền
(acting entity) và mọi thực thể có thể chi phối, bị chi phối, hoặc thờng xuyên nằm dới
24
Tỡm hiu phn mm ngun m
sự chi phối của thực thể nắm quyền. Trong định nghĩa này, "chi phối" (control) mang
ý nghĩa (i) quyền, trực tiếp hoặc gián tiếp, định hớng hoặc quản lý các thực thể, thông
qua hợp đồng hoặc một cách nào đó, hoặc (ii) sở hữu ít nhất năm mơi phần trăm
(50%) cổ phần hiện tại, hoặc (iii) sở hữu lợi nhuận của thực thể. "Bạn" (hoặc "của
bạn") - You (or "Your") - chỉ một Cá nhân hoặc Thực thể hợp pháp sẽ sử dụng các
quyền hạn mà Chứng chỉ cho phép.
"Nguồn" - Source - là dạng thờng đợc u tiên sử dụng trong việc sửa đổi, nó bao gồm,
nhng không giới hạn trong các dạng sau, mã nguồn phần mềm, văn bản nguồn, và các
file cấu hình (configuration files).
"Đối tợng" - Object - là bất kỳ dạng nào đợc sinh ra từ sự biến đổi hoặc biên dịch cơ
học từ dạng Nguồn, bao gồm, nhng không giới hạn trong, mã linh dịch, văn bản phát
sinh, các chuyển đổi sang các dạng phơng tiện khác.
"Sản phẩm" - Work - chỉ sản phẩm của nguồn tác giả (authorship), dới dạng
Nguồn hay dạng Đối tợng, có giá trị theo các điều khoản nêu trong Chứng chỉ, nh đợc
đề cập đến trong phần thông cáo về bản quyền đi kèm với sản phẩm (Thí dụ về phần
này đợc cung cấp trong phần Phụ lục phía dới). "Sản phẩm cấu thành" - Derivative
Works - là bất kỳ sản phẩm nào, dới dạng Nguồn hay dạng Đối tợng, đợc dựa trên
(hoặc dẫn xuất từ) Sản phẩm mà vì nó mà các hiệu đính, chú giải, chọn lọc và các thay
đổi khác nói chung, phải đại diện cho Sản phẩm gốc (original work) của nguồn tác
giả. Trong phần nội dung của chứng chỉ này, Sản phẩm cấu thành không bao gồm các
sản phẩm mà không có liên hệ hoặc chỉ có liên quan (hoặc chỉ giống tên) với giao diện
của, Sản phẩm và Sản phẩm cấu thành từ đó. "Đóng góp" - Contribution - là tất cả các
Sản phẩm của nguồn tác giả, bao gồm phiên bản gốc của Sản phẩm và mọi thay đổi
hoặc bổ sung cho Sản phẩm hoặc Sản phẩm cấu thành, có nghĩa là những thành phần
đợc đệ trình tới Ngời cấp chứng chỉ một cách có chủ đích để đợc tích hợp trong Sản
phẩm, đợc đệ trình bởi Chủ sở hữu bản quyền hoặc bởi một Cá nhân hay Thực thể hợp
pháp đợc cấp quyền đệ trình trên danh nghĩa của Chủ sở hữu bản quyền. Trong phần
định nghĩa này, "đệ trình" bao gồm bất kỳ dạng giao tiếp nào, điện tử, truyền miệng,
hoặc viết, đợc chuyển tới cho Ngời cấp chứng chỉ hoặc đại diện của họ, bao gồm, nh-
ng không giới hạn trong, các giao tiếp thông qua danh sách th điện tử, hệ thống kiểm
soát mã nguồn, và hệ thống theo dõi vấn đề, đợc điều hành bởi, hoặc dới danh nghĩa
của, Ngời cấp chứng chỉ với mục đích thảo luận và cải tiến Sản phẩm, nhng không bao
25