Luận Văn Nghiên cứu linux trên hệ thống nhúng và ứng dụng

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    170
    Điểm thành tích:
    0
    Xu:
    0Xu
    Lời nói đầu.

    Ngày nay,với sự phát triển của các linh kiện điện tử và công nghiệp sản xuất vi

    mạch,hệ thống Linux nhúng đã xuất hiện hầu như ở khắp mọi khía cạnh trong cuộc

    sống, từ các thiết bị điện tử dân dụng thông thường đến những thiết bị mạng cao cấp.

    Nếu so sánh các thiết bị này với các hệ thống nhúng truyền thống thì mức độ phức tạp

    và khả năng đáp ứng cao hơn rất nhiều.Việc tích hợp hệ điều hành lên hệ thống nhúng

    làm đơn giản hóa quá trình nghiên cứu và phát triển các sản phẩm, rút ngắn thời gian

    và chi phí xây dựng hệ thống vì các hệ thống này được thừa hưởng những tính chất ưu

    việt của một hệ điều hành nói chung cũng như Linux nói riêng, như tính ổn định, nhỏ

    gọn, thực thi nhanh và có khả năng can thiệp sâu vào phần cứng.

    Hơn thế nữa, cùng với cộng đồng sử dụng Linux rộng lớn trên khắp thế giới và

    các phần mềm mã nguồn mở đa dạng làm cho việc phát triển hệ thống Linux nhúng trở

    thành một chiến lược được các công ty lựa chọn hàng đầu. Nhờ phần mểm mã nguồn

    mở khiến cho việc tùy biến một ứng dụng phù hợp yêu cầu trở nên dễ dàng hơn. Nhận

    thức được tầm quan trọng này, đề tài thực hiện việc tìm hiểu Linux cho các hệ thống

    nhúng và các ứng dụng trên hệ thống nhúng. Phần cứng đề cập đến trong đề tài là kit

    XUP Virtex-II Pro Development Syste Xilinx (XUPV2P). Cụ thể sẽ tiến hành việc cài

    đặt hệ điều hành MontaVista Linux – một gói Linux chuyên dành cho các hệ thống

    nhúng – lên kiến trúc vi xử lý PowerPC405 được tích hợp trên kit XUPV2P. Đồng thời

    xây dựng các ứng dụng chạy trên hệ điều hành này. Ứng dụng trọng tâm là giao tiếp

    truyền dữ liệu qua TCP/IP, với server là ứng dụng chạy trên hệ thống nhúng đã cài đặt

    và client là ứng dụng chạy trên hệ điều hành Windows. Ứng dụng cung cấp khả năng

    upload, download dữ liệu và có phân quyền với giao diện người dùng thân thiện.

    Mục lục

    Chương 1 Linux trên hệ thống nhúng 7

    1.1Khái niệm cơ bản .7

    1.2Hệ điều hành Linux nhúng (Embedded Linux) .8

    1.3Real-time Linux .9

    1.4Phân loại hệ thống Linux nhúng 9

    1.4.1 Kích thước .10

    1.4.2 Khả năng đáp ứng theo thời gian 11

    1.4.3 Khả năng kết nối .11

    1.4.4 Khả năng tương tác với người dùng 12

    1.5Kiến trúc tổng quát của một hệ thống Linux nhúng 12

    1.5.1 Khối Data Acquisition .13

    1.5.2 Khối Control 14

    1.5.3 Khối System management .15

    1.5.4 Khối User interface .16

    1.6Tổng quan về kernel của Linux/Unix 16

    1.6.1 Mô hình process/kernel: 16

    1.6.2 Thi hành một process 18

    1.6.3 Tái thực thi các process .18

    1.6.4 Không gian địa chỉ các tiến trình: .20

    1.6.5 Sự đồng bộ hóa và những vùng then chốt: 21

    1.6.6 Việc giao tiếp tín hiệu và liên tiến trình 22

    1.6.7 Quản lí tiến trình: 23

    1.6.8 Quản lý bộ nhớ 25

    1.6.9 Device Drivers .28

    Chương 2 Thiết kế một hệ thống Linux nhúng .30

    2.1Phần cứng hỗ trợ 30

    2.1.1 Kiến trúc CPU .30

    2.1.2 Bus và các chuẩn giao tiếp 31

    2.1.3 Các thiết bị lưu trữ .31

    2.1.4 Kết nối mạng .32

    2.2Các công cụ phát triển .33

    2.3Chọn lựa và biên dịch Linux kernel 34

    2.3.1 MontaVista Linux .37

    2.3.2 uClinux 38

    2.3.3 Cấu hình kernel .38

    2.4Xây dựng hệ thống thư mục gốc (root filesystem) 40

    2.4.1 Hệ thống tập tin (File Systems) .40

    2.4.2 Các thư mục trên Linux .40

    Chương 3 Kit XUPV2P và gói phần mềm phát triển của Xilinx 44

    3.1Kiến trúc phần cứng của Kit XUPV2P 44

    3.1.1 Tổng quan 44

    3.1.2 Khối FPGA Virtex II Pro 46

    3.1.3 System ACE 47

    3.1.4 Ethernet adaptor 58

    3.1.5 Cấu trúc MicroBlaze .69

    3.1.6 PowerPC 78

    3.2Các gói phần mềm phát triển của Xilinx .85

    3.2.1 Xilinx EDK 86

    3.2.2 BSB Winzard (Base System Builder) .86

    Chương 4 Thiết kế hệ thống nhúng dùng Linux 88

    4.1Những công cụ thực hiện .88

    4.1.1 Hardware .88

    4.1.2 Software .88

    4.2Kiểm tra kit XUPV2P 89

    4.3Thiết kế phần cứng cho hệ thống với Xilinx BSB 90

    4.3.1 Cấu hình sử dụng bộ xử lý PowerPC 90

    4.3.2 Cấu hình các thiết bị ngoại vi 93

    4.3.3 Cấu hình phần mềm .96

    4.4Thiết lập môi trường biên dịch chéo 98

    4.5Biên dịch nhân MontaVista Linux trên kiến trúc PowerPC405 100

    4.5.1 Tải kernel source và chuẩn bị driver .100

    4.5.2 Cấu hình nhân 102

    4.5.3 Tạo ACE file cấu hình cho FPGA và nạp ảnh kernel .105

    4.5.4 Quá trình khởi động Linux trên kit XUPV2P .107

    4.6Xây dựng cấu trúc thư mục gốc cho hệ điều hành 108

    Chương 5 Lập trình ứng dụng Server chạy trên hệ thống nhúng và Client trên Windows .

    5.1Mô tả hệ thống file server của uClinux .112

    5.2Cấu trúc lập trình: 113

    5.3Lưu đồ thiết kế: 114

    5.4Chương trình File Client MP3 trên Visual C++ MFC: .115

    5.4.1 Giới thiệu : .115

    5.4.2 Chương trình File Client MP3: .116

    5.4.3 Giao diện File Client MP3: .Error! Bookmark not defined.

    Chương 6 Giới hạn của đề tài và hướng phát triển trong tương lai .118

    6.1Tổng kết những phần đã thực hiện 118

    6.2Giới hạn .118

    6.3Hướng phát triển trong tương lai .118
     

    Các file đính kèm:

Đang tải...