Page 2 of 3
Re: Where do we start?
Posted: Thu Jul 17, 2008 2:29 pm
by carlosalbuquerque89
Hey I'm totally new in this OS thing. I'd like to write my own little kernel in C; however, I don't know any assembly language. Do you think it's possible to write an os without knowing any assembly language? if so, which compiler do you recommend, i'd like my os to run under the x86 processor architecture. I'm tired of Microsoft, Mac and Linux... wanna write something to change the concept of an OS... Thanks.
Re: Where do we start?
Posted: Thu Jul 17, 2008 8:39 pm
by tadada
you'll need some asm. period. You'll have to do direct hardware programming and C can't do that without some asm, but it is possible to get away with using very little asm.
Re: Where do we start?
Posted: Thu Jul 17, 2008 11:19 pm
by octa
well u need to know asm.. and u should learn it..
for compiler refer to cross compiler
GCC_Cross-Compiler.
carlosalbuquerque89 wrote:I'm tired of Microsoft, Mac and Linux... wanna write something to change the concept of an OS...
this would take a lot of time !!! and of course u need to lik anyone because its ur devoloping environment !!!!!!!!!!!!
best of luck !!
Re: Where do we start?
Posted: Thu Jul 17, 2008 11:30 pm
by Alboin
I'm tired of Microsoft, Mac and Linux... wanna write something to change the concept of an OS...
I would suggest you lay back, drink a nice, soothing cup of tea (Oolong is *marvelous*) and think about that there goal. Osdev is a very 'relaxed' field. Goals are small, and are updated often. Start off with something that plain works, and then add and add. Don't drink too much at once, or you'll get burned. (You see what I did there? I know I'm clever, really, no complements are needed.)
Oh, yes, and have oodles of fun while you are at it.
Re: Where do we start?
Posted: Fri Jul 18, 2008 9:52 am
by lukem95
start by making a basic kernel that will just print a "OS loaded" message, expand that to cope with exceptions and interrupts... add keyboard support, get applications loading, set up privelidge levels, get some drivers working, and THEN build/port a GUI on top of that.
You could customise an existing GUI server (like X), as this would be much easier than writing one from scratch.
Re: Where do we start?
Posted: Sat Jul 19, 2008 3:42 pm
by simkinggold
[deleted]
Re: Where do we start?
Posted: Sat Jul 19, 2008 4:00 pm
by suthers
Well the first thing to do is to decide whether to use a premade or custom bootloader, since you want to do things as simply as possible, you probably want to use a premade one, so learn how to use GRUB...
Jules
Re: Where do we start?
Posted: Mon Jul 21, 2008 8:28 am
by Combuster
And NTFS is not suited for homebrew OSes. Use FAT32/Ext2
Re: Where do we start?
Posted: Tue Jul 22, 2008 12:37 am
by naiksidd_85
hi,
I did reading through all the posts on this topic, I think you are really ambitious. I suggest you to first read through the james molley tutorials or bare bones and get them in your systems. start coding only when you think you have enough of material handy. believe me with team of two it can get really frustrating if we dont have the concepts clear. am not an guru at OSdev but this is my experiance.
and you want to make a bootable OS, that i think is really part of the game. Writing custom Boot loader is again not easy job so if you are not patient enough try using GRUB for starters.
as one of the posts say keep small goals, and keep adding new things to cart.
creating an OS which can be used for day to day is long journey (Am not commenting to you personaly ).
Re: Where do we start?
Posted: Thu Jul 31, 2008 3:38 am
by simkinggold
[deleted]
Re: Where do we start?
Posted: Thu Jul 31, 2008 3:44 am
by simkinggold
[deleted]
Re: Where do we start?
Posted: Thu Jul 31, 2008 4:59 am
by JamesM
I've got one if you want it:
here. Enjoy!
Re: Where do we start?
Posted: Thu Jul 31, 2008 5:04 am
by lukem95
JamesM wrote:I've got one if you want it:
here. Enjoy!
that's a good'un
Re: Where do we start?
Posted: Thu Jul 31, 2008 1:32 pm
by zhak
suthers wrote:Well the first thing to do is to decide whether to use a premade or custom bootloader, since you want to do things as simply as possible, you probably want to use a premade one, so learn how to use GRUB...
Maybe it's a good option to start OS dev with writing the simplest boot loader (i.e. for FAT)? imho, it is a good practice. and when you know and understand all aspects of OS boot process, then it's time to boot the simplest "hello, world!" kernel and go to the next level. don't you think so?
Re: Where do we start?
Posted: Fri Aug 01, 2008 1:31 am
by blackcatcoder
I would suggest to start off with a simple bootloader so you get the basics and learn about how things work in Real Mode (16-Bit), perhaps try to read sector from FDD or HDD and so on, learn about the A20 Gate and the memory detection methods like e820. If you get managed this try to jump into Protected Mode and get familiar with setting up GDT, IDT, Paging. I think if you're new this would take you at least half an year to go through. In OSdev you have to do things step by step and break down every big TODO-Point into small TODO-Points. Things are getting very complex the deeper you go into
Good luck and a lot of fun