Tải bản đầy đủ (.ppt) (21 trang)

Tổng quan về Hệ điều hành Linux

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (872.13 KB, 21 trang )

26-Sep-08 1
Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Linux kernel
R.M.
Tổng quan về Linux
26-Sep-08 2
Ho Chi Minh city University of Technology
Ho 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 3
Ho Chi Minh city University of Technology
Ho 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 4
Ho Chi Minh city University of Technology
Ho 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 5
Ho Chi Minh city University of Technology
Ho 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 6
Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Kiến trúc Linux

Các thành phần của Linux
26-Sep-08 7

Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Kiến trúc Linux

Thành phần định thời
26-Sep-08 8
Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Kiến trúc Linux

Thành phần hệ thống file
26-Sep-08 9
Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Kiến trúc Linux

Thành phần Networking
26-Sep-08 10
Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Kiến trúc Linux

Thành phần Driver
26-Sep-08 11
Ho Chi Minh city University of Technology
Ho 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 12
Ho Chi Minh city University of Technology
Ho 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 13
Ho Chi Minh city University of Technology
Ho 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 14
Ho Chi Minh city University of Technology
Ho 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 15
Ho Chi Minh city University of Technology
Ho 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 16
Ho Chi Minh city University of Technology
Ho 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 17
Ho Chi Minh city University of Technology
Ho 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 18
Ho Chi Minh city University of Technology
Ho 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
Network
Real keyboard
Real projector

Virtual keyboard
Virtual projector
26-Sep-08 19
Ho Chi Minh city University of Technology
Ho 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 20
Ho Chi Minh city University of Technology
Ho 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 21
Ho Chi Minh city University of Technology
Ho Chi Minh city University of Technology
Cám ơn

×