Im studying the linux file system and the linux kernel. I was just curious on hard it is to actually write your own kernel?
Im studying the linux file system and the linux kernel. I was just curious on hard it is to actually write your own kernel?
Wow, what a vague question. How capable does it need to be? I guess the answer would be umm... 87% hard?
If you understand what you're doing, you're not learning anything.
yeah i guess it is a pretty vague question! here is a more elaborate description of my previous question; How long wold it take just to code a basic kernel? Is it possible by one person or is a team needed? Just give me a basic idea of whats involved in developing a kernel. I am in no way close to even "TRYING" this. I am just curious! I am studying these topics to get a better understanding of linux.
Last edited by Annonymous; 10-18-2011 at 03:00 PM.
How about this then (thanks to Fordy for posting it in another thread).
Expanded Main Page - OSDev Wiki
Writing something simple is, well, pretty simple.
That is, getting some kind of task swapping going on and some simple memory management.
The Linux Kernel: It’s Worth More!
This puts the development effort of the Linux kernel (baseline 2.6) at 4,500+ man YEARS.
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
If at first you don't succeed, try writing your phone number on the exam paper.
Thanks salem
It starts a little difficult...then gets real hard
You can use GCC & Nasm to build a kernel that loads but then you realise that you need to do loads of stuff to get it to do more. Writing heap managers, disk management, video drivers, process management...fun stuff though...
Osdev (link above) is worth reading as is Bona Fide OS Developer
Kind of like, how long does it take to hammer a nail?
How long is the nail? What are you hammering it into? Can you swing a hammer accurately?
I estimate it'll take somewhat longer than an hour and somewhat less than a decade.
Code://try //{ if (a) do { f( b); } while(1); else do { f(!b); } while(1); //}
Hi ,
My purpose is develop Linux Kernel and code my own kernel I can say that I'm ambitious enough to do that !
Can anyone give me a hand with this ?
If you're interested in Linux Kernel Programming I'm determined to do this ,
Now I'm starting C programming if anyone want to work with me and exchanging information ( Working like a team to have better performance ) Pm me .
Best Wishes ./
I've done a little operating system development in the past, and I've gotten as far as a VERY simple command like interface, but no process or memory management, and no disk access of any kind. it took me a solid weekend of screwing around with it, and I was using GRUB to load it. writing a basic kernel that can be loaded by GRUB is not especially difficult, as long as you keep a few very important things in mind:
1. you cannot use the standard libraries.
2. you cannot do anything that calls malloc() or free() or their friends, or new/delete, until you write your own memory management. this is
Nice ,
Can you help me with this ?
Is it write to practicing C instead of C++ and Python to understand the infrastructures ?
My main problem is I didn't taste programming with modules , Libraries and components until now ! I wanna start such that programming but I'm confused !
Actually I don't know what should I do now ?![]()
Read the link I posted. This will guide you through a lot of it
python is not going to serve you well for kernel development. stick to C or C++. my preference would be C++
Can I learn C++ instead of C for Developing and programming ?
Is there much difference between C and C++ ?
Is C more powerful than C++ ?
Because I have more reference and two books in this programming language !
If there is no problem please let me know ,
Thanks in advance
>Can I learn C++ instead of C for Developing and programming ?
Why not 'along with' instead of 'instead of' ?
>Is there much difference between C and C++ ?
Yes/No/Maybe ...depends on what you would do with them.
>Is C more powerful than C++ ?
What do you mean by powerful ?
>Because I have more reference and two books in this programming language !
And you still haven't started reading anything at all.....shame.
<Hope I'm not feeding a troll...>
No bro ...
I studied my C++ books that I'd borrowed from my friend not completely and I know how to code in console and basic things and I know OOP in C++ some how but the problem is after I reviewed OOP what should I do ?
How can I code something , I mean how can I learn some other things for example creating GUI app in C ? and How to work with sockets ? and How connect C++ to the e.g oracle database ?
My goals are both coding Os and Coding softwares ! but first I need to code some softwares ... .
If I've written something that is enigmatic I apologize ,
At last thanks in advance