2012-02-10 18 views
8

Tôi đang học NASM khi tôi viết bootloader. Cho đến nay tôi có một bộ nạp khởi động hello world. Tôi muốn biết làm thế nào để liên kết một chương trình c với nó và có bộ nạp khởi động tải nó vào bộ nhớ và bắt đầu thực hiện chức năng điểm vào của nó. Tôi cần mã NASM vì tôi là NASM n00b. Cảm ơn rất nhiều vì sự giúp đỡ của bạn.Làm cách nào để viết bộ nạp khởi động để nạp hạt nhân c?

EDIT: Về cơ bản tôi cần biết cách liên kết chương trình c và tôi cần mã NASM để tsrat đó là chức năng điểm vào. Tôi nên biết về bất kỳ gotchas nào?

+0

Bạn đã thử bất kỳ điều gì từ trước tới nay chưa? Bạn có vấn đề gì? –

+0

Không. Chỉ cần không biết làm thế nào để liên kết và tải nó. Google đã không giúp đỡ. – user701329

Trả lời

6

Mặc dù this tutorial là dành cho C++, chính quy trình tương tự của nó (hướng dẫn liệt kê các bộ phận cụ thể là C++, mà chỉ là các ctors tĩnh & dtors).

khi bạn gặp sự cố trong khu vực này, osdev.org thường có câu trả lời hoặc hướng dẫn

+0

Cảm ơn đó chỉ là những gì tôi cần. – user701329

2

Có tấn gotchas về cách khởi động một hạt nhân:

Dưới đây là một nguồn lực tốt http://linuxgazette.net/issue77/krishnakumar.html

rằng nên giúp bạn bắt đầu.

+0

Đó là chương trình c để sao chép bộ nạp khởi động vào đĩa mềm. Tôi cần một bộ nạp khởi động để khởi động hạt nhân. Tôi đã sử dụng dd để sao chép bootloader của mình. – user701329

+0

đủ công bằng :) tôi nghĩ rằng bạn đã có câu trả lời ở trên –

+0

thực sự nếu bạn đọc tất cả của nó nó có lắp ráp bộ nạp khởi động –