Tên: CYGPKG_RBINIT -- cung cấp các khởi tạo thêm cho Redboot.
Giải thích:
Các gói bổ sung thêm cho khởi tạo cảu Redboot cung cấp thêm các tính năng mặc định khi khởi tạo cho Redboot.Điều này có thể sử dụng để thực hiện một bộ các lệnh ban đầu., hoặc thực hiện bất kì nền tảng bổ sung hoặc hệ thống khởi tạo cụ thể. Gói RBINIT nhằm chủ yếu vào lĩnh vực triển khai hệ thống sản xuất chứ không phải để phát triển ứng dụng.
Xây dựng Redboot:
Bước đầu tiên trong việc xây dựng Redboot với sự hỗ trợ của gói RBINIT là tạo ra một cấu hình Redboot thích hợp cho nền tảng phần cứng của ta. Điều này nhằm mục tiêu để cụ thể hóa với các nền tảng HAL thích hợp , vui lòng tham khảo thêm tài liệu của Redboot để biết thêm chi tiết. Thường Redboot nên được cấu hình để khởi động ROM.
Với cấu hình ban đầu với gói RBINIT (CYGPKG_RBINIT) sẽ được thêm vào file cấu hình, sử dụng như một trong các công cụ để cáu hình eCos. Ví dụ như các công cụ dòng lệnh này liên quan đến việc sử dụng ecosconfig thêm vào rbinit.
Có một số tùy chọn khác có thể thay đổi vào thời điểm này:
CYGGLO_RBINIT_STDIO_DISABLE
Tùy chọn này sẽ loại bỏ gói RBINIT trong quá trình khởi tạo ROM. Ta disable tùy chọn này với mục đích gỡ lỗi cho chương trình Redboot.
CYGPKG_RBINIT_PRI
Tùy chọn này lựa chọn ưu tiên của các khởi tạo thêm thông dụng. Giá trị này có thể là REDBOOT_INIT_BEFORE_NET hoặc RETBOOT_INIT_AFTER_NET, giống như tên của nó, tùy chọn này giúp việc khởi tạo thêm có thể xảy ra trước hoặc sau khi bất kì thiết bị mạng nào đấy được khởi tạo.
Một khi Redboot đã được cấu hình thích hợp, nó có thể được xây dựng và cài đặt bình thường lên platform của ta.
Thêm chức năng khởi tạo:
Mục đích của việc thêm chức năng bổ sung cho khởi tạo của Redboot là để thực hiện hàm rbinit_exec(). Một phiên bản đặc biệt của chức năng này được chứa trong file rbinit_exec.c, file này nằm trong kho lưu trữ mã nguồn của ecos.
Nội dung mặc định của hàm này là cung cấp thêm hỗ trợ cho việc nạp và thực hiện các ứng dụng chính hoặc thứ cấp từ một hệ thống tập tin. Các chức năng mặt định đầu tiên cố gắng để gắn kết một hệ thống tập tin JFFS2 trong bảng Redboot FIS. Nếu thất bại, nó sẽ cố gắn để gắn kết các phân vùng đầu tiên của một đĩa cứng IDE sử dụng một tập tin FAT. Cuối cùng, nếu tiếp tục thất bại, nó sẽ cố gắng kết một hệ thống tập tin trong RAM, mặc dù nó có thể rỗng. Nếu hệ thống tập tin đã được cài đặt thành công, nó sẽ cố gắng nạp vào bộ vào bộ nhớ RAM và chạy một hương trình có tên là "app.primary" từ thư mục gốc của hệ thống tập tin, còn nếu thất bại, một chương trình có tên là "app.secondary" sẽ được chạy.
Một phiên bản tùy biến của chức năng này có thể được cung cấp thay vì bằng cách sử dụng một trong những phương pháp sau đây:
+ Chỉnh sửa tập tin trực tiếp trong các kho lưu trữ nguồn.
+ Thêm một chức năng tương đương ứng dụng của bạn xây dựng và đảm bảo đối tượng tập tin của nó được liên kết vào ứng dụng của bạn. Điều này sẽ gây ra việc thực hiện chức năng mặc định trong hàm rbinit_exec () được cung cấp trong gói phần mềm sẽ được ghi đè.Bạn có thể sử dụng phiên bản trong gói này như một khuôn mẫu để bắt đầu.
+ Bằng cách sao chép tập tin rbinit_exec.c vào cấu hình của xây dựng cây và chỉnh sửa nó ở đấy.
Không có nhận xét nào:
Đăng nhận xét