Chuyên đề Hệ điều hành Linux - Bài 12: Biên dịch nhân - Lê Hà Minh

Nhân trong Linux có 2 dạng:
§Monolithic: Loại nhân hỗ trợ tất cả các phần
cứng, network, filesystem được biên dịch vào
một image đơn.
§Modular: Loại nhân có chứa một số trình điều
khiển, được biên dịch như là các file đối tượng
mà nhân Linux có thể nạp vào và xóa đi khi yêu
cầu. Các module được nạp vào được đặt ở
/lib/modules 
pdf 16 trang xuanthi 30/12/2022 640
Bạn đang xem tài liệu "Chuyên đề Hệ điều hành Linux - Bài 12: Biên dịch nhân - Lê Hà Minh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfchuyen_de_he_dieu_hanh_linux_bai_12_bien_dich_nhan_le_ha_min.pdf

Nội dung text: Chuyên đề Hệ điều hành Linux - Bài 12: Biên dịch nhân - Lê Hà Minh

  1. Nội dung n Giới thiệu nhân Linux. n Các module n Nhân modular n Các bước biên dịch nhân
  2. Giới thiệu nhân Linux Ưu/khuyết điểm của mỗi loại nhân này? Các phiên bản hiện tại sử dụng loại nhân nào ?
  3. Nhân modular £ Các module cho nhân linux được lưu trong: /lib/modules/ . £ Các thành phần tốt nhất để module hóa là các thành phần không cần cho quá trình khởi động máy, ví dụ các thiết bị ngoại vi và hệ thống và hệ thống file phụ. £ Các module của nhân linux được điều khiển bằng các tiện ích nằm trong gói modutils - lsmod - rmmod - insmod - modprobe - modinfo
  4. Nhân modular
  5. Biên dịch lại nhân £Để biên dịch được kernel, cần cài đặt bộ C compiler. yum install gcc £Bước 1: Lấy source code kernel mới nhất tại kernel.org $ cd /tmp $ wget x.y.z.tar.bz2 £Bước 2: Giải nén $ tar -xjvf linux-2.6.25.tar.bz2 -C /usr/src $ cd /usr/src pBước 3:Tạo tập tin cấu hình (lưu trữ các thông tin cài đặt) p$ make menuconfig p$ make xconfig - X windows (Qt) based configuration tool, p$ make gconfig - X windows (Gtk) based configuration tool, p$ make oldconfigure – nếu muốn sử dụng thông tin cấu hình cũ
  6. Biên dịch lại nhân £Bước 6: # cd /boot # mkinitrd -o initrd.img-2.6.25 2.6.25 initrd images chứa các driver của thiết bị cần để load khi khởi động. £Bước 7: chỉnh lại GRUB Thay đổi /boot/grub/grub.conf title Fedora new, kernel 2.6.25 Default root (hd0,0) kernel /boot/vmlinuz root=/dev/hdb1 ro initrd /boot/initrd.img-2.6.25 savedefault boot
  7. Biên dịch lại nhân £ Sau khi biên dịch kernel hoàn tất, sẽ tạo ra một kernel image và một initrd mới. £ Khởi động lại máy, boot loader sẽ nhận thêm một hệ điều hành mới. £ File system của hệ điều hành mới cũng là file system của hệ điều hành cũ. £ Hệ điều hành mới chỉ khác hệ điều hành cũ các modules được biên dịch trong kernel.
  8. Hỏi & Đáp