PHẦN MỀM MÃ NGUỒN MỞ KHÁI NIỆM VỀ MÃ NGUỒN MỞ Richard Stallman (MIT) đưa ra khái niệm đầu tiên về mã nguồn mở 1984 (GNU) Thành lập FSF (Free Software Fundation, 1985) để quản lý dự án GNU Phân b[.]
PHẦN MỀM MÃ NGUỒN MỞ KHÁI NIỆM VỀ MÃ NGUỒN MỞ Richard Stallman (MIT) đưa khái niệm mã nguồn mở 1984 (GNU) Thành lập FSF (Free Software Fundation, 1985) để quản lý dự án GNU Phân biệt : OPEN & FREE KHÁI NIỆM VỀ MÃ NGUỒN MỞ Open Source: phần mềm có mã nguồn mở Free software: phần mềm miễn phí, đơi free software dùng với ý nghĩa bao gồm opensource software free software Phần mềm nguồn mở (PMNM) cung cấp dạng mã nguồn, khơng miễn phí giá mua mà chủ yếu miễn phí 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 số nguyên tắc định giấy phép PMNM (ví dụ General Public Licence – GPL) LỢI ÍCH CỦA OPEN SOURCE Tự chép, chia sẻ Nhiều phân phối, không bị ràng buộc vào nhà cung cấp Bảo mật tốt ??? Dễ dàng thay đổi, phát triển theo mục đích Hỗ trợ cồng đồng cao BẤT LỢI CỦA OS Khơng đảm bảo khơng thu phí Q nhiều phiên : khó chọn lựa Nhập nhằng quyền Ví dụ : Autocad, MatLab vs Octave http://www.linuxjournal.com/ CƠ HỘI KINH DOANH Open source chấp nhận công ty lớn Thậm chí Microsoft phải lưu tâm đến Open Source đối thủ to lớn Các doanh nghiệp vừa nhỏ ưa chuộng phần mềm Open Source Open Source giành khoảng 70% thị trường ứng dụng Web, dường số tiếp tục tăng lên hàng năm CÁC LOẠI GIẤY PHÉP Phần mềm thương mại (Commercial Software) ▪Phần mềm thử nghiệm giới hạn (Limited Trial Software) ▪Phần mềm “chia sẻ” (Shareware) ▪ CÁC LOẠI GIẤY PHÉP Phần mềm sử dụng phi thương mại (Noncommercial Use) Phần mềm trả phần trăm cho nhà sản xuất (Royalties Free Binaries Software) Thư viện phần mềm trả phần trăm (Royalties Free Software Libraries) PHẦN MỀM MÃ NGUỒN MỞ KIỂU BSD – (OPEN SOURCE BSD-STYLE) Một nhóm nhỏ khép kín (closed team) phát triển PMNM theo giấy phép phân phối Berkely (BSD – Berkely Software Distribution) cho phép sử dụng phân phối lại phần mềm dạng mã nhị phân mã nguồn Tuy người dùng có quyền sửa đổi mã, ngun tắc nhóm phát triển khơng cho phép người dùng tự lấy mã nguồn từ kho mã sửa (gọi check-out) đưa mã sửa vào lại kho mã mà không họ kiểm tra trước (gọi “check-in”) PMNM kiểu Apache (Open Source Apache-style) Chấp nhận nguồn mở kiểu BSD cho phép người ngồi nhóm phát triển xâm nhập vào lõi mã (core codebase), tức phép thực “check-in” CỘNG ĐỒNG MÃ NGUỒN MỞ GNU Cộng đồng GNU ( “Gnu is Not Unix”) xây dựng nhiều ứng dụng Unix (Linux) : Word proccessing ,Office, Game, Multimedia, networking compiler , interpriter , programming languages… GNU – Phi lợi nhuận song cần tuân thủ số quy định quyền GNU - GPL (General Public License) – “copyleft”( thay cho “copyright”) GNU cung cấp biên dịch C/C++bao gồm : gcc trình biên dịch C g++ trình biên dịch C++ gdb Debug GNU make Trình quản lý mã nguồn trợ giúp biên dịch bash shell Các ngôn ngữ PHP&MySQL , Python , Perl … thuộc loại mã nguồn mở GIẤY PHÉP CÔNG CỘNG GNU (GPL) Giấy phép công cộng GNU Phiên 2, tháng 6/1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc 59 Temple Place - Suite 330, Boston, MA 021111307, USA Mọi người phép chép lưu hành nguyên không phép thay đổi nội dung giấy phép BẢN QUYỀN Các chương trình tuân theo GNU Copyleft GPL (General Public License) có quyền sau [1] : Tác giả sở hữu chương trình Ai quyền bán copy chương trình với trả cho tác giả ban đầu Người sở hữu chương trình tạo điều kiện cho người khác chép chương trình nguồn để phát triển tiếp chương trình CÁC ĐIỀU KIỆN VÀ ĐIỀU KHOẢN Áp dụng điều khoản chương trình bạn Nếu bạn xây dựng chương trình mới, muốn cung cấp cách tối đa cho công chúng sử dụng, bạn cần phát triển chương trình thành phần mềm tự để cung cấp lại thay đổi theo điều khoản Để làm việc này, đính kèm thơng báo sau với chương trình An tồn đính kèm chúng phần đầu tập tin mã nguồn để thông báo cách hiệu việc khơng có bảo hành; tệp tin phải có dịng “bản quyền” trỏ đến tồn thơng báo Một dịng đề tên chương trình nội dung Bản quyền (C) năm, tên tác giả CÁC ĐIỀU KIỆN VÀ ĐIỀU KHOẢN Chương trình phần mềm tự do, bạn cung cấp lại và/hoặc chỉnh sửa theo điều khoản Giấy phép Công cộng GNU Tổ chức Phần mềm Tự công bố; phiên Giấy phép, phiên sau (tuỳ lựa chọn bạn) Chương trình cung cấp với hy vọng hữu ích, nhiên KHƠNG CĨ BẤT KỲ MỘT BẢO HÀNH NÀO; chí kể bảo hành KHẢ NĂNG THƯƠNG MẠI TÍNH THÍCH HỢP CHO MỘT MỤC ĐÍCH CỤ THỂ Xin xem Giấy phép Công cộng GNU để biết thêm chi tiết