//autoeditácia príspevku (21 Júl 2011, 11:10)
no vlastne tak ze si dam neco ako:
Kód: Vybrať všetko
__asm
{
boot
}Kód: Vybrať všetko
__asm
{
boot
}
Kód: Vybrať všetko
[BITS 16]
[ORG 0x7C00]
[global start]
[extern _main]
start:
call _main
cli
hlt
Kód: Vybrať všetko
int main(){
//tu sa pracuje
}
Ano je to mozne , windows je zvacsa v C++exploited154 napísal:ked sa mozem opytat...viem ze ja asi OS nenaprogramujem.....len tak rozmyslam.. je mozne naprogramovat operacny system v C++??.... ja len nahlas rozmýšľam
No tak poto veľa štastia, lebo neviem kam sa s týmito skúsenosťami dostaneš. je pravda, že sa môžeš naučiť tie veci a urobiť si kernel.bin, nieje to ani tak zložité, ale keď sa budeš chcieť pustit do grafiky, narazíš na stenu VGA, a napokon sa ti to nepodarí. Pozri sa na prvú verziu linuxu. Šupná, a navzdory tomu to Torvaldovi trvalo zopár rokov(a je to vyučený programátor ktorý mal v tedy za sebou viac ako 5 rokov programovania). Viac ako malú konzolu s pár príkazmi za prázdniny sám neurobíš. Nájdi si niekoho kto vie robiť s C a ASM, a máš projekt na zopár rokov. Mám už s tvorbou OS skúsenosti, takže viem, rok programovania v C a zopár mesiacov v ASM ti nepomôže. Ak budeš chcieť pracovať s niekým, budeš si musieť prečítať ešte zopár teoretických kního o programovaní a týmovej práci.... Alebo ti navrhujem, urobiť si vo vyššom jazyku vlastný programovací jazyk, a používať kompilátor nasm alebo podobný. Systém bude jednoduchý. C program prečíta súbor v ktorom je kód v tvojom programovacom jazyku, a do druhého vypíše ASM kód, potom pustí kompilátor a máš .o a .bin súbor. Už som programovací jazyk robil (pre vlastnú potrebu na vlastný OS), a prvé príkazy a začiatky ma vyšli na asi 500 riadkov kódu. Ďalšie pokročilé príkazy už na viac riadkov... Neradím ti robiť os čisto v ASm. Aj torvald použil python, ktorý si sám vytvoril. Inak by mu to trvalo ešte viac.v C kodim uz vyse roka, asm par meiacov a mam plno tutorialov.
Ja ani nic vetcie nechcem spravit, chcem si psravit v textovom rezime worma,, kedisi som ho spravil v Pascale, a zdrojaky mam uz v podtstae hotove, len chcem vediet ako s toho spravit bootovacie medium, ktore nie je disketa.Viac ako malú konzolu s pár príkazmi za prázdniny sám neurobíš.
O com?FrewCen napísal: failExperiment: Niečo som už o tom niekde čítal, ale je to pravda?
Kód: Vybrať všetko
getchar:
mov al,0x01
int 0x16
ret
Kód: Vybrať všetko
extern int getchar();
void k_main(void *param)
{
unsigned char *vga = (unsigned char*)0x8000;
vga[0]=' ';
vga[1]=0x07;
for(;;) vga[0]=(unsigned char) getchar() &0xFF;
}
Iba som tam doplnil getchar, skrypty, multyboot atd.failExperiment napísal:Prepacte ze to tu znovu otvaram, ale skusal som example z http://wiki.osdev.org/Bare_bones
a rad by som vedel ako z kernel.bin spravit bootovacie ISO image napriklad pomocou grub