Kernel

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
vibhory2j

Kernel

Post by vibhory2j »

hi,

i am new os developement.i have had heard a lot about the Kernel in a os, but i don't know what a kernel is....i mean i know it is the basic interface between the applications and the hardware.but i don't know what are the ingredients of a kernel and how it is created.
is it a collection of different programs or......i am really confused and need help in it????

Thanks in advance

cheers
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re:Kernel

Post by Solar »

You might want to visit the OS FAQ which we maintain at http://www.osdev.org/osfaq2/.

The kernel is usually a binary image (or, in advanced designs, a collection of modules) that handles basic hardware abstraction.

In a "monolitic" design, the kernel handles everything from scheduling over memory management to file system handling. In a "microkernel" design, people strive to put as many of these features into seperate user-space entities, with the kernel merely handling the messaging between those entities.

More info is in the FAQ.
Every good solution is obvious once you've found it.
KieranFoot

Re:Kernel

Post by KieranFoot »

I would recommend doing as i do, building the most basic kernel you can (to load other binary's, ELF...) then write each individual part of the kernel seperatley. Then when the individual sections are working properly you can put them togeather to form your kernel.
BI lazy

Re:Kernel

Post by BI lazy »

Good approach. I 'd go further: first develop some tools: Linked list handling for each and everything comes in handy: develop it one time, refine it in dozens of iterations and reuse it for each and everything, where you need such algorithms -
and that's no joke: you'll need them often in kernel land.

Furthermore you'll need memorymanagement in its most basic form ...

well, I suggest you go to www.distantvoices.org and check out for the tutorials I've written - malloc and multitasking f. ex. They are hidden in the BlueIllusion OS section. It's in english, so don't worry.

The quick linkz section of this forum will reveal some help too.

stay safe
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:Kernel

Post by Pype.Clicker »

i can offer the 'what's in my kernel' document ... it's clicker-specific, for sure, but at least it will show what can be found in a kernel (and is certainly not exhaustive)

http://clicker.sourceforge.net/wiclicke ... ckerInside
User avatar
kataklinger
Member
Member
Posts: 381
Joined: Fri Nov 04, 2005 12:00 am
Location: Serbia

Re:Kernel

Post by kataklinger »

BI lazy wrote: Linked list handling for each and everything comes in handy: develop it one time, refine it in dozens of iterations and reuse it for each and everything, where you need such algorithms -
and that's no joke: you'll need them often in kernel land.
Linked lists, linked lists and double linked lists....
...and ofcourse stay cool ;).
vibhory2j

Re:Kernel

Post by vibhory2j »

thanks ,

what is the first module i need to develope to start create my own kernel.how should i approach to develope it.

cheers
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re:Kernel

Post by Solar »

Every good solution is obvious once you've found it.
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:Kernel

Post by Pype.Clicker »

Post Reply