Merhaba;
İşletim sistemlerinin mantığını daha iyi kavramak için yazdığım bir C kodunu boot (Bilgisayar açılırken başka bir programa ihtiyaç duymadan işlemcide çalıştırmayı kast ediyorum.) etmek istiyorum. Bunu nasıl yapabilirim. İnternette bağızı kaynaklar var lakin bir çoğu Assembly dili ile ekrana yazı yazdırmak hakkında.
Ben ise C veya C++ ile yazdığım programı boot etmek istiyorum.
Kendi tahminimce;
C kodunu (herhangi bir kütüphaneye bağımlı olmadan) kullandığım işlemci mimarisine göre binary koduna dönüştürmek. Ama emininki bu kadarla bitmiyordur.
Dogru dusunmussun. Etiketleri gormeden once cevabi yazmaya baslamistim. Silip yukaridaki cevabi yazmasam bi 10-15 dakka daha surerdi. (Araya baska is girerse de saatler)
Yazdığınız kod 3 satırlık bir “Merhaba dünya!” kodundan farklı. Sıradan bir printf() fonksiyonu kullanmamışsınız. İşin içine bellek yönetimini de katmışsınız.
Benim asıl takıldığım şey programı boot edilebilecek şekilde yazmakta.
Yani ben
#include <stdio.h>
int main() {
printf("Hello, World!");
return 0;
}
64bit AMD bir masaüstü bilgisayarda test etmek istiyorum.
#include <stdio.h>
int main() {
printf("Hello, World!");
return 0;
}
Yani ben bu kodu makine koduna derlersem 64bit AMD bir masaüstü bilgisayarda boot edebilir miyim?
Anlamaya çalıştığım şey işletim sistemlerinin mantığı. Sonuçta işletim sistemleri 0 ve 1’lerle kodlanmıyor. İşin içine C ve C++ gibi diller de dahil oluyor. Ben de bu dilleri de kullanarak nasıl Windows’a ihtiyaç duymadan çalışabilecek bir program yazabileceğimi öğrenmek istiyorum.