Tổng quan về Linux

Hệ điều hành chuyên dụng – Mini kernel • Xác định cấu hình hệ thống tự động – Mini distro – Tối ưu hóa cho một hệ thống

pdf21 trang | Chia sẻ: hao_hao | Lượt xem: 2072 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Tổng quan về Linux, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
26-Sep-08 1Ho Chi Minh city University of Technology Linux kernel R.M. Tổng quan về Linux 26-Sep-08 2Ho Chi Minh city University of Technology Nội dung • Kiến trúc của Linux • Khả năng lập trình trên Linux • Các vấn đề đang quan tâm • Thảo luận Architecture Problems Programming 26-Sep-08 3Ho Chi Minh city University of Technology Kiến trúc Linux • Kiến trúc modular – monolithic – Kiến trúc phân lớp – FUSE (Filesystem in Userspace) – Device driver 26-Sep-08 4Ho Chi Minh city University of Technology Kiến trúc Linux • Linux distro vs Linux kernel Applications Libraries System call Kernel Distro 26-Sep-08 5Ho Chi Minh city University of Technology Kiến trúc Linux • Kiến trúc modular – monolithic – So sánh với kiến trúc microkernel – Kiến trúc phân lớp 26-Sep-08 6Ho Chi Minh city University of Technology Kiến trúc Linux • Các thành phần của Linux 26-Sep-08 7Ho Chi Minh city University of Technology Kiến trúc Linux • Thành phần định thời 26-Sep-08 8Ho Chi Minh city University of Technology Kiến trúc Linux • Thành phần hệ thống file 26-Sep-08 9Ho Chi Minh city University of Technology Kiến trúc Linux • Thành phần Networking 26-Sep-08 10Ho Chi Minh city University of Technology Kiến trúc Linux • Thành phần Driver 26-Sep-08 11Ho Chi Minh city University of Technology Lập trình Linux • Lập trình ứng dụng – PHP, Perl, Python,… – Không quan tâm kiến trúc hệ thống bên dưới • Lập trình ứng dụng hệ thống • Lập trình kernel module – Device drivers • Lập trình kernel 26-Sep-08 12Ho Chi Minh city University of Technology Lập trình Linux • Lập trình ứng dụng hệ thống – System calls & glibc – Ioctl – Cần hiểu hệ thống bên dưới FS System Programming API Network Process I/O Applications 26-Sep-08 13Ho Chi Minh city University of Technology Lập trình Linux • Lập trình ứng dụng hệ thống – Giả lập hoạt động nhấn phím (keypress) int main() { char buf[64]; char c = 'N'; int ctty; sprintf(buf, "/dev/tty1"); ctty = open(buf, O_RDWR); if (ctty == -1){ printf("Cannot get tty1\n"); return -1; } ioctl(ctty, TIOCSTI, &c); close(ctty); return 0; } 26-Sep-08 14Ho Chi Minh city University of Technology Lập trình Linux • Lập trình kernel module – Framework module_init() module_exit() Hoạt động của module Memory insmod rmmod 26-Sep-08 15Ho Chi Minh city University of Technology Lập trình Linux • Lập trình kernel – Chỉnh sửa, thêm code vào kernel – Phải biên dịch lại kernel – Hiểu các mối liên hệ giữa các thành phần – Toàn quyền trong hệ thống – Cần phải cẩn thận 26-Sep-08 16Ho Chi Minh city University of Technology Các vấn đề đang quan tâm* • Bộ định thời • Thiết bị ảo của thiết bị thật • Vấn đề định tuyến trên mạng không dây • Hệ điều hành chuyên dụng • Thin client 26-Sep-08 17Ho Chi Minh city University of Technology • Bộ định thời – Hệ thống đa bộ xử lý – Các quá trình có quan hệ ràng buộc thực thi Các vấn đề đang quan tâm* * * Bộ định thời hiện tại chưa tối ưu Cpu rãnh 26-Sep-08 18Ho Chi Minh city University of Technology • Thiết bị ảo của thiết bị thật – Sử dụng các tài nguyên thiết bị qua mạng Các vấn đề đang quan tâm* Network Real keyboard Real projector Virtual keyboard Virtual projector 26-Sep-08 19Ho Chi Minh city University of Technology Các vấn đề đang quan tâm* • Hệ điều hành chuyên dụng – Mini kernel • Xác định cấu hình hệ thống tự động – Mini distro – Tối ưu hóa cho một hệ thống 26-Sep-08 20Ho Chi Minh city University of Technology Các vấn đề đang quan tâm* • Thin client – Client không cần đĩa cứng 26-Sep-08 21Ho Chi Minh city University of Technology Cám ơn

Các file đính kèm theo tài liệu này:

  • pdflinux_intro_6508.pdf
Tài liệu liên quan