OSDev.org

The Place to Start for Operating System Developers
It is currently Fri Jul 03, 2020 3:02 pm

All times are UTC - 6 hours




Post new topic Reply to topic  [ 8 posts ] 
Author Message
 Post subject: Why do people say it takes decades to learn OSDev?
PostPosted: Wed Jun 24, 2020 11:26 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 03, 2016 3:13 am
Posts: 53
Why do a lot of people say that it takes decades to learn about or write an operating system? I see that many members on this forum are relatively younger.

I am currently looking at Harvard Introduction to Computer Science on Edx to get kind of a formal "refresh" on computer science concepts. I have been writing code on and off for a couple years. Against common recommendation, I like C as a language, maybe I just like the challenge more, or something.

And I did think about wanting to write an OS one day, I think that will be cool.


Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 1:53 am 
Offline
Member
Member
User avatar

Joined: Sat Mar 31, 2012 3:07 am
Posts: 3820
Location: Chichester, UK
Seahorse wrote:
Why do a lot of people say that it takes decades to learn about or write an operating system?
Who are these people?
Quote:
Against common recommendation, I like C as a language, maybe I just like the challenge more, or something.
Who recommends against the use of C? It's a very popular language and most of the examples you will find in the field of OS development are written in C.


Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 4:29 am 
Offline
Member
Member

Joined: Sun Apr 05, 2020 1:01 pm
Posts: 67
Common recommendations are to use C tho, it's the simplest to get up and running and the easiest to make low level stuff and memory manipulations.


Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 8:38 am 
Offline
Member
Member
User avatar

Joined: Fri Nov 22, 2019 5:46 am
Posts: 192
I don't know about _decades_, that may be a bit exaggerated. But _years_ yes. At least for me and for people who haven't much programming skills yet. That probably doesn't apply to you. But you have to know a lot if you want to program an OS.

Greetings
Peter

_________________
https://wiki.osdev.org/User:PeterX


Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 9:12 am 
Offline
Member
Member
User avatar

Joined: Sat Mar 31, 2012 3:07 am
Posts: 3820
Location: Chichester, UK
It took a few months for Linus to produce a kernel that ran bash and gcc. I'm not saying that's typical, but it's not a matter of decades before you can produce something usable.

On the other hand, it probably would take years if not decades for an individual to implement an operating system with a full set of user programs and networking support.


Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 11:49 am 
Offline
Member
Member
User avatar

Joined: Mon Jun 16, 2014 5:59 am
Posts: 543
Location: Shahpur, Layyah, Pakistan
People will give you different answers depending on their prospective. The late Terry Davis wouldn't hesitate to label most of us on this website clusterfucking Jews, which he regularly did. He especially hated a certain member who helped newbies, for Terry was against Linux design philosophy. Which is partly true, minus the conspiracy theory parts. If you are keen on providing a POSIX API, it'll be a hard take-off.


Last edited by Muazzam on Thu Jun 25, 2020 4:41 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 12:37 pm 
Offline
Member
Member

Joined: Wed Aug 30, 2017 8:24 am
Posts: 494
The thing that takes time is developing an understanding for the concepts you will be working with. What actually is a kernel, when you get right down to it? What is virtual memory, and how do I manage it? (And also, is a 64TB memory limit acceptable as a design constraint?) Also, the experience of reading things about kernel classification, only to notice most of it is showing the specific biases of the author. Andy Tanenbaum for instance will tell you that every kernel which implements the VFS inside the kernel is no microkernel. Oof, I guess my OS will be tarred with the monolithic brush, then. On the other hand, why should I care what Andy Tanenbaum would say about my kernel?
Muazzam wrote:
If you are keen on providing a POSIX API, it'll be a hard take-off.
Yeah, I guess another thing that might take a while is actually reading POSIX and understanding the concepts prescribed therein, and how to put them into an OS. Linux does not follow POSIX strictly, and the differences between Linux and POSIX are a source of considerable pain for libc authors and the general public alike. For instance, in Linux, every task has its own credentials structure; they are not shared across an entire thread group. Therefore, if a multi-threaded application calls setuid(), now the libc has to perform that system call, but then also send signals to all other threads to make them switch UIDs as well. This made me resolve to (a) never call setuid() from a multi-threaded context, and (b) in my OS, actually implement credentials correctly.


Top
 Profile  
 
 Post subject: Re: Why do people say it takes decades to learn OSDev?
PostPosted: Thu Jun 25, 2020 3:43 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 03, 2016 3:13 am
Posts: 53
iansjack wrote:
Seahorse wrote:
Why do a lot of people say that it takes decades to learn about or write an operating system?
Who are these people?
Quote:
Against common recommendation, I like C as a language, maybe I just like the challenge more, or something.
Who recommends against the use of C? It's a very popular language and most of the examples you will find in the field of OS development are written in C.


I'm somewhat still in the "growing" phase.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group