Đề cương khóa học

Giới Thiệu

  • Lịch sử của Unix/Linux
  • Phần mềm tự do
  • Tư duy Unix

KHU VỰC CHƠI HOST

  • Chơi với GNU/Linux
    • kiến trúc
    • shell
    • quyền truy cập
    • FHS (tiêu chuẩn phân cấp tệp)
    • các liên kết cứng/mềm
    • uid/gid thực/hiệu quả
    • lịch trình hóa
    • quá trình/nhiệm vụ/luồng
    • Các kỹ thuật IPC đơn giản/nâng cao
      • các ống dẫn
      • các tín hiệu
      • các hàng đợi tin nhắn
      • các thanh điều khiển
      • bộ nhớ chia sẻ
      • socket
      • select/poll
    • Các kỹ thuật IPC nên tránh
  • Cấu hình Linux Host
    • Yocto/ELDK (công cụ cross/target, thư viện, gói)
    • Mô phỏng terminal
    • Các máy chủ (DHCP, tftp, NFS)

KHU VỰC CHƠI TARGET

  • các tệp cần để chạy trên bảng
    • cấu hình JTAG/BDI
    • u-boot (checkout, config, build)
    • nội nhân (checkout, config, build)
    • rootfs
    • bảng thiết bị phẳng
  • xây dựng/thực hiện những gì phù hợp từ trên trên bảng target
  • các rootfs khác nhau
    • CRAMFS
    • ramdisk
    • MTD
    • JFFS2
    • roEXT2
    • ubi
  • xây dựng/thực hiện những gì phù hợp từ trên trên bảng target
  • so sánh các hệ thống tệp gốc
  • điều chỉnh lỗi
    • công cụ đơn giản
    • local/remote
    • user/kernel
    • gdb
    • gdbserver
    • JTAG/BDI (tùy chọn)
  • đánh giá hiệu suất
    • gprof
    • gcov
    • oprofile

THỜI GIAN THỰC

  • yêu cầu tiền đề
    • các ngắt
    • mã nguồn không trùng lặp
  • Linux thời gian thực
    • điểm cướp quyền rõ ràng/ẩn danh
    • bản vá cướp quyền thời gian thực
    • nội nhân hoàn toàn có thể cướp quyền
    • các tính năng mở rộng thời gian thực cứng
  • Adeos/Xenomai
    • bản vá adeos
    • xenomai
    • bản vá/cấu hình/xây dựng nội nhân
    • chạy nó trên bảng

PHÁT HÀNH PHẦN MỀM

  • quản trị
  • phát triển
  • cách tái tạo một phát hành phần mềm?

CÁC CHỦ ĐỀ KHÁC

  • getopt
  • endianness
  • bảng gian lận

Ngoại trừ khi có lưu ý khác, nội dung của khóa học này được cấp phép theo Chấp Nhận Chia Sẻ Tương Tự 4.0 Quốc Tế (CC BY-NC-SA 4.0).

Yêu cầu

  • Hiểu biết cơ bản về việc sử dụng hệ thống GNU/Linux (ví dụ: Ubuntu) như một người dùng cuối trong không gian người dùng
  • Hiểu biết cơ bản về shell dòng lệnh
  • Hiểu biết cơ bản về phát triển ứng dụng không gian người dùng với GNU/Linux
  • Hiểu biết cơ bản về các bộ xử lý nhúng và bảng phát triển
  • Hiểu biết cơ bản về lập trình C
  • …và/hoặc sợ hãi khi học những điều trên…
 35 Giờ học

Số người tham gia


Giá cho mỗi người tham gia

Đánh giá (3)

Các khóa học sắp tới

Các danh mục liên quan