Käyttöjärjestelmäohjelmoinnin apuohjelmat

DJGPP

GCC-kääntäjän ja LD-linkkerin, ym. omaava käännösympäristö Windowsille/DOSille. Pura paketti, mene komentoriville ja aja C:\DJGPP\bin -kansiossa oleva setdjgpp.bat, seuraa sen ohjeita. Joissakin tapauksissa ympäristömuuttuja(t) on lisättävä Windowsin Ohjauspaneelin kautta kohdasta järjestelmä, välilehdeltä Lisäasetukset, painikkeesta Ympäristömuuttujat. Kohdasta järjestelmämuuttujat valitse painike Uusi, aseta muuttujan nimi ja arvo(esim. nimi DJGPP ja arvo C:\DJGPP\djgpp.env). Tämä on asennusohjelma joka asentaa kääntäjän C++ -tuella(ja eikun C++ -ydintä kirjoittamaan).

NASM

Netwide ASseMbler, yksi parhaista assemblereista, joka toimii sekä Windowsissa että Linuxissa. Suosittelen kirjoittamaan käyttöjärjestelmän assembly-osat joko NASMilla tai FASMilla. Molemmat käyttävät Intel-syntaksia(jota me ihmiset siis käytämme).

BOCHS

PC-emulaattori, emuloi PC-tietokoneen toimintaa niin, että sinun ei tarvitse oikeasti käynnistää konettasi jatkuvasti uudestaan vaan voit ajaa järjestelmääsi Bochsissa, jolloin järjestelmäsi luulee olevansa oikeassa tietokoneessa. Kone ei hajoa totaalisesti jatkuvasta boottailusta, voit kuunnella MP3-musiikkia samalla kun ohjelmoit ja mikä parasta; esim. SMP(Symmetric MultiProcessing) -järjestelmän kehitys on helpompaa ja halvempaa ohjelmalla joka emuloi 8 suorittimen tietokonejärjestelmää sen sijasta, että ostaisit/varastaisit 8 suorittimen tietokonejärjestelmän.

DJGPP BINUTILS WITH ELF SUPPORT

Jos haluat olla tosihakkeri, voit yrittää saada toimimaan DJGPP:n kanssa(nykyisten binäärityökalujen tilalla bin-kansiossa) nämä Windowsille esikäännetyt ELF-formaattia tukevat binäärityökalut. ELF on siis Executable and Linkable Format, jonka nimensä mukaisesti voi linkittää dynaamisesti ja suorittaa. Se on monessa asiassa paras formaatti, suosittelen.

GRUB-LEVYKUVA

Miksi asentaa GRUB-käynnistyslataaja jos saatavilla on levykuva, joka 1.44 megatavun disketille kirjoitettuna antaa sinulle lahjaksi levykkeen, jossa on GRUB, FAT12-tiedostojärjestelmä ja joka lataa kernel.bin-tiedoston(jonka pitää olla multiboot-yhteensopiva) muistiin osoitteeseen 0x100000 ja suorittaa sen. Asetuksia voi muokata lisää menu.lst-tiedostosta.

VFD

Luo itsellesi virtuaalinen levykeasema. Eli Omaan tietokoneeseen pajahtaa uusi levykeasema, joka levykkeen sijasta onkin tiedosto. Mietipä mitä tuskaa on ruksuttaa järjestelmääsi levykkeeltä, vaikka käyttäisitkin emulaattoria? Mutta ei hätää! Mitä tapahtuu kun luot GRUB-levykuvasta virtuaalilevykeaseman? No sinulla on levykasema(esim. B-asema), joka sisältää FAT12-tiedostojärjestelmän, jolta voi käynnistää tietokoneen ja joka toimii nopeasti kuin Maniacen suoli. Sen kun vain laitat Bochsin käynnistymään tästä asemasta(esim. B:).

RAWRITE

Jollainhan ne levykuvat pitää sinne disketille saada. Ja koska virtuaalilevykeasema toimii kuin mikä tahansa levykeasema, ohjelmaa voi käyttää myös virtuaalilevykeasemalle kirjoitteluun.

 

Nyt sitten vain asentamaan emulaattori, luomaan virtuaaliasema GRUB-levykuvasta ja laittamaan sinne oma kernel.bin joka on linkitetty DJGPP:n LD:llä GCC:llä käännetystä C/C++ -objektitiedostosta ja NASMilla käännetystä ASM-objektitiedostosta.

Yllä mainitut ohjelmat toimivat myös Linuxilla ja ovat ilmaisia. Jos ohjelmaa ei Linuxille saa, on siinä valmiina korvaava toiminto jonka varmaan tiedät koska olet alkanut Unix-guruksi(meikäläinen on vieläkin hermona kun Ubuntussa ei toimi HIIRI).