24
Phần II - Khai thác PMNM 1 MÃ NGUỒN MỞ PHẦN II – KHAI THÁC PHẦN MỀM NGUỒN MỞ Phan Trọng Tiến Department of Software Engineering Hanoi University of Agriculture Office location: 3rd floor, Administrative building Office phone: (04)38276346, Ext: 132 Website: http://fita.hua.edu.vn/pttien Email:[email protected] or [email protected]

Phan ii khaithacpmnm

  • Upload
    google

  • View
    48

  • Download
    0

Embed Size (px)

DESCRIPTION

TÀI LIỆU MÔN MÃ NGUỒN MỞ

Citation preview

Page 1: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 1

MÃ NGUỒN MỞ PHẦN II – KHAI THÁC PHẦN MỀM NGUỒN MỞ

Phan Trọng TiếnDepartment of Software EngineeringHanoi University of AgricultureOffice location: 3rd floor, Administrative buildingOffice phone: (04)38276346, Ext: 132Website: http://fita.hua.edu.vn/pttienEmail:[email protected] or [email protected]

Page 2: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 2

Nội dung chính

1. Giới thiệu các hệ điều hành nguồn mở

2. Phần mềm dịch vụ cho máy chủ Linux

3. Phần mềm ứng dụng nguồn mở trên Linux

Page 3: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 3

Giới thiệu lịch sử phát triển của Unix Vài dòng về lịch sử UNIX: • Giữa năm 1960, AT&T Bell Laboratories và một số trung tâm

khác Multics (Multiplexed Information and Computing Service) Không khả thi

• Ken Thompson, Dennis Ritchie … thuộc Bell Labs đã không bỏ cuộc. Thay vì xây dựng một HĐH làm nhiều việc một lúc như Multics, họ quyết định phát triển một HĐH đơn giản chỉ làm tốt một việc là chạy chương trình (run program)

• Peter Neumann đặt tên cho HĐH “đơn giản” này là Unix• Khoảng 1977 bản quyền của UNIX được giải phóng và HDH

UNIX trở thành một thương phẩm.• Hai dòng UNIX : System V của AT&T , Novell và Berkeley

Software Distribution (BSD) của Đại học Berkeley.

Page 4: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 4

Các phiên bản chính UNIX

Page 5: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 5

Các phiên bản chính UNIX Hai nhánh chính UNIX: một nhánh từ AT&T và một

nhánh từ AT&T thông qua University of California tại Berkeley.

Các nhánh chính ngày nay là AIX từ IBM, HP-UX từ HP và Solaris từ Sun.

Một định nghĩa UNIX: Open Group, nhóm sở hữu thương hiệu Unix đã định nghĩa Unix là tất cả các hệ điều hành được cấp chứng chỉ nhờ phù hợp với Single Unix Specification (SUS)

Một định nghĩa rộng đối với Unix bao gồm cả các hệ điều hành giống Unix – đôi khi được gọi là Unix "nhái" hoặc trông giống – mà đã copy các ý tưởng từ Unix nhưng không trực tiếp cộng tác mã từ Unix. Một phân phối trong đó là Linux.

Page 6: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 6

Giới thiệu lịch sử phát triển của Linux

• IEEE đã thiết lập chuẩn "An Industry-Recognized Operating Systems Interface Standard based on the UNIX Operating System." Kết quả cho ra đời POSIX.1 (cho giao diện C ) và POSIX.2 (cho hệ thống lệnh trên Unix)

• Linux là một HDH dạng UNIX (Unix-like Operating System) chạy trên PC với CPU Intel 80386 trở lên, hay các bộ vi xử lý trung tâm tương thích AMD, Cyrix. Linux ngày nay còn có thể chạy trên các máy Macintosh hoặc SUN Sparc . Linux thỏa mãn chuẩn POSIX.1.

Page 7: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 7

•Năm 1991 Linus Torvalds bắt đầu xem xét Minix, một phiên bản của Unix với mục đích nghiên cứu cách tạo ra một hệ điều hành Unix chạy trên máy PC với bộ vi xử lý Intel 80386.

•Ngày 25/8/1991, Linus cho ra version 0.01 và thông báo trên comp.os.minix của Internet về dự định của mình về Linux.

•1/1992, Linus cho ra version 0.12 với shell và C compiler. Linus không cần Minix nữa để recompile HDH của mình. Linus đặt tên HDH của mình là Linux.

•1994, phiên bản chính thức 1.0 được phát hành.

Lịch sử phát triển của Linux

Page 8: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 8

Lịch sử phát triển của Linux

Quá trình phát triển của Linux được tăng tốc bởi sự giúp đỡ của chương trình GNU (GNU’s Not Unix), đó là chương trình phát triển các Unix có khả năng chạy trên nhiều platform. Đến cuối 2001, phiên bản mới nhất của Linux kernel là 2.4.2-2, có khả năng điều khiển các máy đa bộ vi xử lý và rất nhiều các tính năng khác.

Page 9: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 9

Vấn đề bản quyền của GNU Project Các chương trình tuân theo GNU Copyleft or

GPL (General Public License) có bản quyền như sau :

1. Tác giả vẫn là sở hữu của chương trình của mình.

2. Ai cũng được quyền bán copy của chương trình với giá bất kỳ mà không phải trả cho tác giả ban đầu.

3. Người sở hữu chương trình tạo điều kiện cho người khác sao chép chương trình nguồn để phát triển tiếp chương trình

Page 10: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 10

Tại sao lại sử dụng Linux ? Linux là miễn phí (free). Linux rất ổn định. Trái với suy nghĩ “của rẻ

là của ôi“, Linux từ những phiên bản đầu tiên cách đây 5-6 năm đã rất ổn định. Ngay cả server Linux phục vụ những mạng lớn (hàng trăm máy trạm) cũng hoạt động rất ổn định.

Linux đầy đủ. Tất cả những gì bạn thấy ở IBM, SCO, Sun … đều có ở Linux. C compiler, perl interpeter, shell , TCP/IP, proxy, firewall, tài liệu hướng dẫn ... đều rất đầy đủ và có chất lượng. Hệ thống các chương trình tiện ích cũng rất đầy đủ .

Page 11: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 11

Tại sao lại sử dụng Linux ? Linux rất mềm dẻo trong cấu hình. Linux cho

người sử dụng cấu hình rất linh động, ví dụ như độ phân dải màn hình Xwindow tùy ý, dễ dàng sửa đổi ngay cả kernel …Linux chạy trên nhiều máy khác nhau từ PC 386, 486 tự lắp cho đến SUN Sparc.

Linux được trợ giúp. Tài liệu giới thiệu Linux ngày càng nhiều, không thua kém bất cứ một HDH nào khác

Linux là HDH hoàn toàn 32-bit. Như các Unix khác, ngay từ đầu, Linux đã là một HDH 32 bits. Hiện nay đã có những phiên bản Linux 64 bits chạy trên máy Alpha Digital hay Ultra Sparc.

Page 12: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 12

Các phiên bản của Linux. Các phiên bản của HDH Linux được xác

định bởi hệ thống số dạng X.YY.ZZ. Nếu YY là số chẵn => phiên bản ổn định. YY là số lẻ => phiên bản thử nghiệm .

Các phân phối (distribution) của Linux quen biết là RedHat, Debian, SUSE, Slakware, Caldera …

Chú ý phân biệt số phiên bản của hệ điều hành (Linux kernel) với phiên bản của các phân phối (ví dụ RedHat 9.0 với kernel Linux 2.4.5-15).

Page 13: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 13

Phần mềm dịch vụ cho máy chủ Linux

Phần mềm máy chủ Web (Apache) Phần mềm cơ sở dữ liệu (MySQL) Phần mềm máy chủ tên miền (BIND) Phần mềm máy chủ email (Sendmail) Phần mềm quản trị bảo mật mạng

(OpenSSH)

Page 14: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 14

Phần mềm máy chủ Web (Apache) Chức năng: đảm nhiệm việc nhận và thực hiện các

yêu cầu từ các trình duyệt web Apache sử dụng giao thức HTTP Apache chạy trên các hệ điều hành Unix, Microsoft

Windows, Novell Netware và các hệ điều hành khác

Máy chủ web Apache là đóng vai trò quan trọng trong quá trình phát triển WWW mà chúng ta biết ngày nay.

Apache là web server số một từ năm 1996 đến nay, hiện nay chiếm 62.53% tổng thị trường web server, hơn gấp đôi đối thủ cạnh tranh MS IIS Server (27.17%)

Page 15: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 15

Ưu điểm Apache Thiết kế linh hoạt theo module Ổn định Bảo mật Tốc độ nhanh Đa nền Mã nguồn mở (BSD)

Page 16: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 16

Phần mềm cơ sở dữ liệu (MySQL) MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở

phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng.

Ưu điểm: Tốc độ rất nhanh Mạnh me Hô trợ CSDL quan hệ Đa người dung, đa tiểu trình Giấy phép mã mở (GPL)

MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl

Page 17: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 17

PHP PHP(Personal Home Page) là một ngôn ngữ

lập trình kịch bản hay một loại mã lệnh chủ yếu được dung để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở

Ưu điểm Hiệu năng cao Giao tiếp nhiều CSDL Có săn nhiều thư viện hô trợ Web Giá thành thấp Dê học và sử dụng Khả chuyển Mã nguồn mở (giấy phép PHP)

Page 18: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 18

Sự kết hợp Apache, MySQL, PHP

Miên phí Hô trợ đa nền Được thiết kế tối ưu cho nhau Mã nguồn mở

Page 19: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 19

Cài đăt và cấu hình XAMPP

Linux: Apache, PHP, MySQL (xampp) Môi trường phát triển tích hợp:

• Zend Studio• Macromedia DreamWeaver

Page 20: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 20

Phần mềm máy chủ tên miền (BIND)

Địa chỉ Internet như yahoo.com … không có chức năng gì nếu không có DNS (Domain Name System)

Chúng làm nhiêm vụ chuyển đổi các tên rê nhớ thành các địa chỉ số và ngược lại

Berkeley Internet Name Domain (BIND) chiếm 95% của tất cả các DNS Server.

BIND là một chương trình FOSS với giấy phép BSD

Page 21: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 21

Phần mềm máy chủ email (Sendmail)

Internet không thể thiếu email Chức năng Email Server: phân phát

người email người sử dụng tới các đích. Email Server làm rất nhiều nhiệm vụ

phức tạp hơn bất kỳ hệ thống nào như forward mail, gửi lại, loại bỏ mail, điều hướng.

Sendmail chiếm 42% thị trường mail server, MS Exchange 18%, Unix qmail 17%

Page 22: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 22

Phần mềm quản trị bảo mật mạng (OpenSSH)

Một người dung kết nối vào một máy chủ từ xa, an ninh là một mối quan tâm lớn.

Giao thức SSH(Secure Shell) cho phép người quản trị hệ thống điều khiển server từ xa, an toàn trong việc chăn và giải mã các thông tin truyền đi.

OpenSSH là một FOSS theo giao thức SSH, chỉ chiếm 5% thị trường năm 2000, nhưng T4, 2002 chiếm 66.8%

Page 23: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 23

Phần mềm ứng dụng nguồn mở trên Linux

Phần mềm văn phòng (Open Office) Phần mềm khoa học Một số ứng dụng khác Một số vấn đề chuyển đổi sang môi

trường nguồn mở

Page 24: Phan ii khaithacpmnm

Phần II - Khai thác PMNM 24

Phần mềm văn phòng (Open Office)

Trong khi phần mềm FOSS dung cho máy chủ phát triển mạnh, thì các ứng dụng cho máy tính để bàn tương đối mới. Open Office dựa trên source code của Star Office trước đây sở hữu, là một FOSS với các tính năng tương đương MS Office.

Có đầy đủ chức năng về xử lý, bảng tính và trình chiếu.

Ưu điểm: đọc được nhiều tài liệu của MS Office.

Măc du chưa có thị phần lớn trên thị trường nhưng nó được hy vọng nhiều tổ chức se sử dụng nhờ có đầy đủ tính năng, giá thành thấp