Linux có rất nhiều trịnh tiện ích GNU như: ngôn ngữ lập trình, công cụ biên dịch, trình tiện ích in ấn, xử lý văn bản … - Trong những năm gần đây, Linux trở thành một hệ điều hành server
Trang 1.:HỆ ĐIỀU HÀNH LINUX :.
Môn học:
CHƯƠNG TRÌNH ĐÀO TẠO CNTT
Trang 2Yêu cầu
M Tài liệu:
- Giáo trình
- Bài giảng
Trang thiết bị:
- Bộ đĩa cài Redhat Linux: 3 CD
- Máy tính cá nhân
Trang 3Giới thiệu về Linux
M Hê ̣ thống gốc đươ ̣c phát triển bởi Linux Torvalds năm 1991
- Linux là mô ̣t sản phẩm do người sử du ̣ng tự phát triển, có nghĩa là nhiều thành phần
của nó được người sử du ̣ng trên khắp thế giới phát triển lấy để tự cha ̣y hê ̣ điều hành cho mu ̣c đích riêng của ho ̣
- Chạy trên hầu hết các nền tảng phần cứng.
- Được phân phối một cách miễn phí
- Linux là một hệ điều hành đa nhiệm, đa người dùng.
- Khi nói đến Linux chúng ta bàn đến 2 vấn đề: kernel và những ứng dụng
Trang 4Giới thiệu về Linux …
- Kernel (hạt nhân) chính là trái tim của hệ điều hành Linux Nhiệm vụ của kernel là
cung cấp môi trường cơ bản cho các ứng dụng có thể chạy và những giao tiếp cơ bản giữa người dùng và phần cứng
- Để hỗ trợ cho những ứng dụng đòi hỏi bộ nhớ RAM lớn, Linux hỗ trợ không gian
tráo đổi Không gian tráo đổi cho phép các trang nhớ được ghi vào một vùng đĩa giành sẵn và được sử dụng như một vùng mở rộng của bộ nhớ vật lý Với cách này, Linux vận hành như thể nó có RAM vật lý nhiều hơn thực tế Bù lại tốc độ truy cập của đĩa cứng sẽ chậm hơn làm giảm tốc độ vận hành của máy
- Linux hỗ trợ nhiều kiểu hệ thống tập tin để Linux tương tác với những hệ điều hành
khác
Trang 5Giới thiệu về Linux …
- Một trong những ứng dụng phổ biến của Linux là họ ứng dụng GNU GNU do hiệp hội
phần mềm miễn phí phát triển Mục đích là cung cấp phần mềm miễn phí cho lập trình viên hay những người phát triển Hầu hết các phần mềm GNU đều khả dụng và mang tính thương mại cao và có rất nhiều cải tiến Linux có rất nhiều trịnh tiện ích GNU như: ngôn ngữ lập trình, công cụ biên dịch, trình tiện ích in ấn, xử lý văn bản
…
- Trong những năm gần đây, Linux trở thành một hệ điều hành server phổ biến Linux
được sử dụng rộng rãi cho những mục đích sau:
File and print server
Email server
Fax server
Internet gateway
Firewall
Database server
Application server
Trang 6Giới thiệu về Linux…
M - Kernel (hạt nhân) chính là trái tim của hệ điều hành Linux
Nhiệm vụ: cung cấp môi trường cơ bản cho các ứng dụng, giao tiếp cơ bản giữa người
dùng và phần cứng
- Hệ thống tập tin: hỗ trợ nhiều filesystem -> tương tác nhiều HĐH
- Một trong những ứng dụng phổ biến của Linux là họ ứng dụng GNU GNU do hiệp hội
phần mềm miễn phí phát triển Mục đích là cung cấp phần mềm miễn phí cho lập trình viên hay những người phát triển Hầu hết các phần mềm GNU đều khả dụng và mang tính thương mại cao và có rất nhiều cải tiến Linux có rất nhiều trịnh tiện ích GNU như: ngôn ngữ lập trình, công cụ biên dịch, trình tiện ích in ấn, xử lý văn bản
…
- Trong những năm gần đây, Linux trở thành một hệ điều hành server phổ biến:
File and print server Email server
Fax server Internet gateway Firewall
Database server Application server
Trang 7Những phiên bản Linux
M • Red Hat Linux
• Debian
• SuSE
• Slakware
• Caldera
• …
Trang 8Những tính năng cơ bản của Linux
- Tốc độ cao: thao tác rất hiệu quả đến tài nguyên như : bộ nhớ, đĩa…
- Bộ nhớ ảo: swap
- Sử dụng chung thư viện
- Sử dụng các chương trình xử lý văn bản: vi, emacs, nroff
- Sử dụng giao diện cửa sổ: dùng Hệ thống X Window
- Dich vụ Samba sử dụng tài nguỵên đĩa, máy in với Window
- Network Information Service (NIS): Dịch vụ NIS cho phép chia sẻ các tập tin password
và group trên mạng
- Lập lịch hoạt động cho các chương trình, ứng dụng: Ch trình này được gọi là cron
- Các tiện ích sao lưu dữ liệu: tar, cpio và dd RedHat Linux còn cung cấp tiện ích
Backup and Restore System Unix (BRU) cho phép tự động backup dữ liệu theo lịch
- Hỗ trợ nhiều ngôn ngữ lập trình: các thư viện chuẩn, các công cụ lập trình, trình biên
dịch, chương trình debug
Trang 9Các ưu điểm của Linux
- Khả năng tương thích với các hệ mở: Chuyển từ một nền này sang một nền
khác mà vẫn họat động tốt
- Ứng dụng: Hiện nay có rất nhiều ứng dụng hay tiện ích phục vụ cho nhiều lĩnh
vực như lập báo biểu, CSDL, xử lí văn bản
- Lợi ích cho giới chuyên nghiệp điện toán: Giới điện toán có hàng loạt công cụ
phát triển chương trình, bao gồm các bộ biên dịch cho nhiều ngôn ngữ lập trình
hàng đầu hiện nay, chẳng hạn như C, C++…
Trang 10Các khuyết điểm của Linux
Thiếu trợ giúp kỹ thuật
Trang 11Kiến trúc của Linux
Kernel
-Trái tim của Hệ điều hành Linux
-Tạo ra và duy trì môi trường Linux
- Nó theo dõi các ổ đĩa, băng từ, máy in,
các thiết bị đầu cuối, các đường truyền thông và bất cứ thiết bị nào được gắn với MT
- Giao diện giữa phần cứng máy tính và NSD
Shell
- Là một chương trình giao tiếp
- Lắng nghe và phiên dịch các yêu cầu của người sử dụng
Các tiện ích và chương trình ứng dụng
Shell Utilities Application Program
Kernel Hardware
Trang 12Kiến trúc của Linux…
Shell
- Sh (Bourne shell): Được viết bởi Stephen Bourne ở AT&T Bell Laboratories Đây là
shell nguyên thủy và là shell chuẩn của hệ điều hành Unix
- Csh (C shell): Được viết bởi William Joy ở trường đại học California tại Berkley Nó có
nhiều tiện lợi hơn Bourne shell, bao gồm tiện nghi lịch sử, tiện nghi tên hiệu
- Ksh (Korn shell): Được viết bởi David Korn cũng ở AT&T Bell Laboratories Đây là
một chương trình shell mới hơn và nhanh chóng trở thành một trong những shell phổ
biến nhất
- Các shell khác được phát triển hầu như vì Linux: ash, tcsh và zsh dùng được cho hầu hết
các phiên bản của Linux
- Mặc dù vậy shell được dùng phổ biến nhất, nguyên gốc Linux là Bourne-Again shell
(bash) Dựa trên nền tảng Bourne shell, nó có các mở rộng tương tự như Korn shell,
cộng với các mở rộng của riêng nó
Trang 13Kiến trúc của Linux…
Shell
- Linux cũng cung cấp giao diện shell theo kiểu cửa sổ, được biết đến rộng rãi với tên
X-Windows hay đơn giản là X Nó gần gũi với Mackintosh windows hơn là với
Microsoft windows, là phương pháp giao tiếp khác với Linux kernel
- Một lệnh do người sử dụng phát ra có thể được chạy ở shell hiện tại, hoặc bản thân
shell có thể khởi động một shell copy khác của chính nó để thực hiện lệnh đó Bằng
cách như vậy, một người sử dụng có thể chạy nhiều lệnh tại cùng một thời điểm
Shell thứ hai gọi là shell thứ cấp (sub-shell)
- Khi một người sử dụng đăng nhập hệ thống thì một shell tự động khởi động Nó sẽ giám
sát máy của người sử dụng, chờ đợi các lệnh được phát ra Kiểu của shell được dùng
được lưu trong file passwd trong thư mục con etc
Trang 14So sánh với các lõi giống-Unix
M Linux bao gồm tất cả các tính năng của hệ điều hành Unix hiện đại, như bộ nhớ ảo, hệ
thống file ảo, các tiến trình nhẹ (lightweight processes), các signals tin cậy, truyền thông liên tiến trình SVR4, hỗ trợ các hệ thống đa xử lý đối xứng (SMP), vân vân
Nó cố gắng kế thừa các tính năng tốt và những lựa chọn thiết kế của nhiều lõi Unix khác
nhau
Lõi Linux chắc chắn (monolithic) Nó là chương trình lớn và phức tạp, được cấu thành từ
nhiều thành phần logic khác nhau Phần lớn các biến thể Unix thương mại đều chắc chắn Một ngoại trừ đáng chú ý là Mach 3.0 của Carnegie-Mellon theo cách tiếp cận microkernel
Hỗ trợ module: Các lõi Unix truyền thống được biên dịch và liên kết tĩnh Hầu hết các lõi
hiện đại có thể linh động nạp và gỡ bỏ một số thành phần của lõi (đặc biệt là các trình
điều khiển thiết bị), thường được gọi là modules Linux hỗ trợ rất tốt cho các
modules, vì nó có thể tự động nạp và gỡ bỏ các modules theo yêu cầu Trong số các biến thể Unix thương mại chính, chỉ có lõi SVR4.2 có tính năng tương tự
Linux miễn phí.
Linux hoàn toàn tùy biến trong tất cả các thành phần của nó.
Trang 15So sánh với các lõi giống-Unix…
Ta thậm chí có thể xây dựng một máy chủ mạng với hệ thống Intel 80386 cũ và bộ nhớ 4
MB RAM
Linux đầy sức mạnh.
Các hệ thống Linux chạy rất nhanh, vì chúng khai thác triệt để các tính năng của các thành
phần phần cứng
Linux có một chuẩn cao về chất lượng mã nguồn.
Các hệ thống Linux thường rất ỏn định; chúng có tỷ lệ lỗi rất ít và hệ thống vẫn duy trì
Lõi Linux có thể rất nhỏ và cô đọng.
Thực vậy, có thể chứa vừa cả ảnh lõi và full root filesystem, bao gồm toàn bộ các chương
trình hệ thống cơ bản, chỉ trong một đĩa mềm 1.4 MB! Như chúng ta đã biết, không một sản phẩm Unix thương mại nào có thể boot được chỉ từ 1 đĩa mềm
Trang 16So sánh với các lõi giống-Unix…
Linux tương thích cao với nhiều hệ điều hành thông dụng.
Nó cho phép ta mount trực tiếp các hệ thống file của tất cả các phiên bản MS-DOS và MS
Windows, SVR4, OS/2, Mac OS, Solaris, SunOS, NeXTSTEP, nhiều biến thể BSD, Linux cũng có thể thao tác với nhiều lớp mạng như Ethernet, Fiber Distributed Data
Interface (FDDI), High Performance Parallel Interface (HIPPI), IBM's Token Ring, AT&T WaveLAN, DEC RoamAbout DS, and so forth
Bằng cách sử dụng các thư viện thích hợp, các hệ thống Linux thậm chí còn có thể chạy
trực tiếp các chương trình viết cho các HĐH khác: MSDOS, MS Windows, SVR3 và R4, 4.4BSD, SCO Unix, XENIX, và các HĐH khác trên nền tảng Intel 80x86
Linux được hỗ trợ tốt.
Có thể dễ dàng có được các phần sửa đổi và nâng cấp
Câu hỏi cho một vấn đề nào đó thường được giải đáp trong vòng ít giờ sau khi gửi
message cho nhóm tin nào đó hay mailing list
Hơn nữa, các trình điều khiển cho Linux thường được cung cấp trong ít tuần sau khi sản
phẩm phần cứng mới được đưa ra thị trường
Trang 17So sánh Linux với WindowsNT
Kernel và môi trường
Khả năng tương thích
Hỗ trợ
Khi kernel thay đổi thì user mới cần khởi động lại
máy Khi cài đặt hay cập nhật phần mềm thì không
cần khởi động lại máy
User cần phải khởi động lại máy khi: cài driver, thay đổi IP, thay đổi tên máy…
thể truy cập trực tiếp đến thiết bị ngoài sự hỗ trợ của một vài phần mềm đặc biệt
Những lỗi an toàn được đưa ra công khai và nhắc sửa
Trang 18C