1. Nội dung thiết kế tốt nghiệp:
3.3.2 Tạo file ảnh zImage
Trong quá trình biên dịch nhân uClinux, file ảnh zImage được tạo ra sau khi thực thi lệnh “make”. Lệnh “make” cũng tạo ra thư mục uClinux-dist/images - nơi chứa file ảnh zImage và thư mục uClinux-dist/romfs - là thư mục ROM khi chạy trên hệ thống nhúng và được đóng gói trong file zImage.
Makefile trong thư mục uClinux-dist sẽ được gọi khi mà lệnh “make” được thực thi. Khi thực hiện lệnh make config, uClinux sẽ hiện ra một màn hình để người dùng chọn lựa các cài đặt cơ bản như các driver cần thiết, thư viện C tích hợp vào nhân, các board hỗ trợ… Ban đầu, nhân sẽ được chọn sẵn một số driver cơ bản. Bằng cách thay đổi các tùy chọn, người dùng sẽ tạo ra được file config theo ý muốn. File config tạo ra sẽ được lưu tại thư mục vendor/Altera/nios2. Thư mục này bao gồm các files:
config.linux-2.6.x: bao gồm các cài đặt mặc định của kernel
config.vendor: bao gồm các cài đặt mặc định của ứng dụng người dùng được build cùng với file image
rc: file kịch bản khởi động hệ thống (script) sẽ được copy vào romfs config.arch: các cài đặt đặc trưng về cấu trúc khi biên dịch file image config.modules: các cài đặt về modules
config.uClibc: các cài đặt về thư viên Clibc
inittab: file script cho quá trình khởi tạo nhân được copy vào thư mục romfs/ etc/inittab
Makefile: file chứa hướng dẫn để build image và thư mục romfs. File này cũng định nghĩa cấu trúc các thư mục sẽ được build trong romfs và cài đặt các file cần thiết như rc & inittab
48
Cũng giống như Linux, uClinux cung cấp các lệnh để xóa các file không cần thiết và các file config nếu muốn cấu hình lại. Lệnh make clean sẽ xóa thư mục romfs và images. Lệnh make mrproper sẽ xóa tất cả các file config đã được tạo. Sau khi thực hiện lệnh này, hệ thống sẽ trở lại trạng thái nguyên bản và tất cả các config sẽ phải được thực hiện lại.
uClinux cung cấp một số lệnh “make” thường được sử dụng khi biên dịch nhân:
Make user_only: chỉ thực hiện make trong ứng dụng người dùng
Make romfs : chỉ thực hiện make ROM.
Make image: thực hiện lệnh make lại ROM và tạo file zImage
Make linux: biên dịch nhân Linux
Make lib_only: biên dịch thư viện
Make user_clean: xóa hết các thư mục trong thư mục user. [5]