11/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 7Điểm mạnh của Unix • Thiết kế đơn giản, trong sáng chỉ vài trăm lời gọi hệ thống • Tất cả đều là tập tin, giúp đơn giản hóa t
Trang 1Trình bày: TS NGÔ BÁ HÙNG Website: http://sites.google.com/site/nbhung
Trang 2• Hạt nhân Linux & Hệ điều hành Linux
Trang 3có thể chạy – Giao tiếp và quản lý phần cứng máy tính
hệ điều hành thông quan một phần mềm dạng đồ họa hay dòng lệnh
Trang 412-2012 Ngô Bá Hùng - http://sites.google.com/site/nbhung 4
Trang 511/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 5
Lịch sử Unix
Ken Thompson, các lập trình viên của Bell
Lab vào năm 1969 từ hệ điều hành đa
Trang 611/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 6
Các dòng Unix
nhiều chủng loại máy tính
• University of California at Berkeley:
ảo, quản lý phân trang, TCP/IP
OpenBSD
Trang 711/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 7
Điểm mạnh của Unix
• Thiết kế đơn giản, trong sáng chỉ vài trăm lời
gọi hệ thống
• Tất cả đều là tập tin, giúp đơn giản hóa thao tác
xử lý dữ liệu và xuất nhập
• Hỗ trợ việc tạo tiến trình nhanh
• Cung cấp cơ chế giao tiếp liên quá trình hiệu
quả
one thing and do it well»
thành các tác vụ phức tạp
Trang 9386 với bộ nhớ 4Mbytes, đĩa cứng 40 Mbytes – Viết Terminal emulator nối kết vào hệ thống Unix;
– Tích hợp vào hệ thống mới những kết quả mà anh ta đã thực hiện từ năm 1984 trong dự án của tổ chức phần mềm tự do
– Công bố lên Internet năm 1991
Trang 1011/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 10
Hạt nhân Linux (Linux Kernel)
phát hành dưới license GPL vào
– Hỗ trợ đa nhiệm (multi tasking) – Hỗ trợ giao tiếp liên quá trình
Trang 1128/12/2009 Ngô Bá Hùng - http://sites.google.com/site/nbhung 11
Hệ điều hành Linux
Linux
(Linux Distribution), gọi tắt là Linux Distro
điều hành (Linux Distributor)
(General Public License)
Trang 1228/12/2009 Ngô Bá Hùng - http://sites.google.com/site/nbhung 12
Top Ten Linux Distributions
• Tiêu chuẩn xếp loại
– Sử dụng phổ biến trên thế giới
– Tính năng động của forum & mailing list
Trang 1311/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 13
Thành phần của HĐH Linux
• Hạt nhân, trình điều khiển thiết bị, bộ khởi
động, cửa sổ lệnh hoặc giao diện người dùng
đồ họa, các tiện ích về tập tin và hệ thống
Trang 1411/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 14
Kiến trúc hạt nhân Linux
Trang 16Cung cấp cơ chế bộ nhớ ảo
Trang 1711/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 17
Kiến trúc hạt nhân Linux
Hệ thống tập tin trừu tượng
Trừu tượng hóa những chi tiết khác biệt của các loại thiết
bị bằng cách giới thiệu một giao diện tập tin chung cho tất
cả các thiết bị
Trang 1811/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 18
Kiến trúc hạt nhân Linux
Giao diện mạng:
Cung cấp truy cập đến nhiều chuẩn mạng và những loại thiết bị mạng khác nhau.
Trang 1911/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 19
Kiến trúc hạt nhân Linux
Giao tiếp liên quá trình:
Hộ trợ cơ chế giao tiếp
giữa các tiến trình trên
cùng một máy tính
Trang 2011/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 20
Division of
Developer
Responsibilities
Trang 2111/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 21
Linux Kernel so với Unix Kernel
gắn nóng, hệ thống tập tin trên không gian người dùng
• Linux là tự do (Free)
Trang 22(đang phát triển) với
nhiều cải tiến được đưa
Trang 2311/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 23
Kernel (2)
số 2.6.x.y để hỗ trợ mô thình «
time-based release»
– X: tăng lên cho mỗi phiên bản mới (mỗi 2-3 tháng)
– Y: Được thêm vào khi có sử sửa lỗi hoặc khắc phục các vấn đề về bảo mật cho phiên bản kernel hiện tại
phiên bản stable và development như trước đây
Trang 24– 3.x-rc: Latest release candidate
Trang 2511/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 25
Mô hình phát triển trước 2.6.0
phiên bản Development
các tính năng : không cho thêm mới tính năng, chỉ cho chỉnh sửa tính năng đã có
được đóng băng : chỉ chấp nhận các hiệu
chỉnh lỗi
đầu tiên của chuỗi phiên bản stable mới
Trang 2611/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 26
Mô hình phát triển hiện tại (1)
new versions, còn gọi "vanilla" or
"mainline" kernels:
bản development – Là vòng tích hợp đầu tiên các sửa đổi lớn bởi tất các các programmers, và một số vòng sửa lỗi của bản pre-release
• Một nhánh "stable" được tạo ra cho mỗi
version
Trang 2711/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 27
Mô hình phát triển hiện tại (2)
và Debian duy trì các Linux kernel
branches để tích hợp vào sản phẩm của
họ:
– Thường bao gồm tất cả các sửa lỗi từ các nhánh "stable" branch khác có liên quan – Bổ sung thêm các drivers hoặc các tính năng chưa được phát hành trong bản
"vanilla" version mà nhà phân phối đã dựa trên đó để phát hành sản phẩm
Trang 2811/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 28
http://en.wikipedia.org/wiki/Linux_kernel#Development_model
Trang 2911/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 29
Trang 3011/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 30
Trang 31trong cộng đồng phát triển
download toàn bộ mã nguồn version mới
• patch p1 < /patch-x.y.z
Trang 3211/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 32
kernel
http://go.linuxfoundation.org/who-writes-linux-2012
Trang 3311/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 33
Qui mô phát triển
của gần 800 công ty tham gia vào việc xây dựng Linux kernel
• Tỷ lệ sửa đổi : 4.3 patch/giờ (từ 2.6.11 đến 3.2)
5,547 và thay đổi 2,243 dòng / ngày (tính
từ version 2.6.24)
dòng lệnh
Trang 3411/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 34
Ai đang xây dựng Linux kernel
Tính từ version 2.6.12 đến 3.2
Trang 3511/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 35
Ai đang xây dựng Linux kernel
Trang 3611/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 36
Ai đang xây dựng Linux kernel
Trang 3711/10/13 Ngô Bá Hùng - http://sites.google.com/site/nbhung 37
Lý do các công ty hỗ trợ Linux
và thu hút người dùng Linux: IBM, Intel, SGI,
MIPS, Freescale, HP, Fujitsu, etc
hàng sử dụng bản phân phối của họ: Red Hat, Novell, và MontaVista,
(video, tele set, mobilphone) của họ: Sony,
Nokia, and Samsung
muốn phiên bản mới tiếp tục hỗ trợ ứng dụng của họ
•