2012-02-10 28 views
8

मैं नासम सीख रहा हूं क्योंकि मैं बूटलोडर्स लिखता हूं। अब तक मेरे पास एक हैलो वर्ल्ड बूटलोडर है। मैं जानना चाहता हूं कि सी प्रोग्राम को कैसे लिंक करें और बूटलोडर इसे मेमोरी में लोड करें और इसके एंट्री पॉइंट फ़ंक्शन को निष्पादित करना प्रारंभ करें। मुझे NASM कोड चाहिए क्योंकि मैं NASM n00b हूं। आपकी मदद के लिए बहुत बहुत धन्यवाद।सी कर्नेल लोड करने के लिए मैं बूटलोडर कैसे लिखूं?

संपादित करें: मूल रूप से मुझे सी प्रोग्राम को कैसे लिंक करना है और मुझे एआरएम कोड की आवश्यकता है ताकि इसे एंट्री पॉइंट फ़ंक्शन को सुनाया जा सके। मुझे कोई गठिया पता होना चाहिए?

+0

आप अब तक कुछ भी करने की कोशिश की है? आपके पास क्या समस्याएं थीं? –

+0

नहीं। बस यह नहीं पता कि इसे कैसे लिंक करें और लोड करें। Google ने मदद नहीं की। – user701329

उत्तर

6

हालांकि this tutorial सी ++, इसके ठीक उसी प्रक्रिया (ट्यूटोरियल भागों कि सी ++ विशिष्ट हैं, जो सिर्फ स्थिर ctors & dtors होते हैं, जिन्हें) के लिए है।

जब कभी भी अपने इस क्षेत्र में समस्या हो रही है, आम तौर पर osdev.org जवाब या एक ट्यूटोरियल

+0

धन्यवाद है जो मुझे चाहिए। – user701329

2

कर्नेल बूट के बारे में gotchas के टन कर रहे हैं:

यहाँ एक अच्छा संसाधन http://linuxgazette.net/issue77/krishnakumar.html

कि मिलना चाहिए आप शुरू कर दिया है।

+0

यह एक सी प्रोग्राम है जो एक बूटलोडर को फ्लॉपी पर कॉपी करने के लिए है। मुझे कर्नेल शुरू करने के लिए बूटलोडर चाहिए। मैंने अपने बूटलोडर की प्रतिलिपि बनाने के लिए डीडी का इस्तेमाल किया। – user701329

+0

काफी मेला :) मुझे लगता है कि आपको –

+0

से ऊपर का जवाब मिला है, वास्तव में यदि आप इसे सब पढ़ते हैं तो इसमें बूट लोडर असेंबली –