Importance of os theory regarding os development
Importance of os theory regarding os development
What is your opinion regarding os theory when it comes to the design and implementation of an os? I recently started doing some research on os deving to gain more insight into the subject and to learn more about the real low level stuff. I went through tons of code and tutorials, but I realised that I had to read some theory to put everything together and to get a bigger picture of how all the components work and fit together.
Cheers
Cheers
-
- Member
- Posts: 1600
- Joined: Wed Oct 18, 2006 11:59 am
- Location: Vienna/Austria
- Contact:
Re:Importance of os theory regarding os development
you need both of them. The theory gives you the tools to model and figure out stuff you afterwards are to work out with your development tools.
OS Deving is mostly about drawing stuff and thinking how to design interfaces - and researching of course. you can't write decent driver stuff without research.
hth
stay safe.
ps: look out for Philosophers problem,bankers algorithm, deadlock scenarions, scheduling algorithms (LIFO, FIFO, Feedback, Round Robin etc ...)
btw: for "realtime" tasks I use a LIFO approach. I. E. A driver gets work, a system task gets work: it preempts the previously working thread.
OS Deving is mostly about drawing stuff and thinking how to design interfaces - and researching of course. you can't write decent driver stuff without research.
hth
stay safe.
ps: look out for Philosophers problem,bankers algorithm, deadlock scenarions, scheduling algorithms (LIFO, FIFO, Feedback, Round Robin etc ...)
btw: for "realtime" tasks I use a LIFO approach. I. E. A driver gets work, a system task gets work: it preempts the previously working thread.
... the osdever formerly known as beyond infinity ...
BlueillusionOS iso image
BlueillusionOS iso image
Re:Importance of os theory regarding os development
Looks like I'm on the right track atleast.
Thx for the advice.
Cheers
Thx for the advice.
Cheers
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:Importance of os theory regarding os development
knowing basis of OS theory is a good way to learn what exists in state-of-the-art OSes. Some problems such as philosopher's dinners are just useful if you lack a demonstration program for your semaphores implementation. Page replacement algorithms, scheduling (both CPU and IO) algorithms might be more interesting. My favourite over all remaining filesystem design
Re:Importance of os theory regarding os development
I prefer to read the books on OS theory rather than the books on implementation. "Modern Operating Systems" by Tanenbaum is an absolute gem, it covers all the details but leaves the implementation up to you, which is the way I like my textbooks.
Shame there's no Operating Systems module on my Uni course.
Shame there's no Operating Systems module on my Uni course.
Re:Importance of os theory regarding os development
I've got the same prob here where I study. But with a great forum such as this there is no prob in doing the research yourself. Thx guys!paulbarker wrote: Shame there's no Operating Systems module on my Uni course.
Cheers
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:Importance of os theory regarding os development
If it were one, you would probably find it uninteressting. Now, probably there's some library at your Uni that has copies of Tannenbaum or Schilberschatz books... You may also google for "geekos", or "SOS" (the linux magazine project), which can show you the process of building a small OS step by step.paulbarker wrote: Shame there's no Operating Systems module on my Uni course.
Re:Importance of os theory regarding os development
We had one, it was the most boring module I had that year other than databases (though that one we won't go into). Not only did the guy have a very droning voice but he made no attempt to make it interesting at all, just had a few notes that he read straight off a slide. Plus it wasn't even really about OSes, it was more about pipes and suchlike in Unix, and even then it wasn't about how the operating system handled them, it was just how you use them in C programs.
Re:Importance of os theory regarding os development
I.e., it was a class on Operating Systems (which unfortunately equates to "Unix" in too many heads), not Operating System Design.
Regarding this great forum enabling you... I consider Google to be of much greater help in research. We here just create some of the content, Google helps you finding what we and others created.
Regarding this great forum enabling you... I consider Google to be of much greater help in research. We here just create some of the content, Google helps you finding what we and others created.
Every good solution is obvious once you've found it.
-
- Member
- Posts: 1600
- Joined: Wed Oct 18, 2006 11:59 am
- Location: Vienna/Austria
- Contact:
Re:Importance of os theory regarding os development
Here at FH campus we do have a course in OS Theory, but given the fact that I 'm studying this realm at least for five years now, they 've merely tested my knowledge about semaphores,deadlocks, scheduling, rough file system knowledge and then they have nodded and said "you know your stuff" and given me a dispensation from the os course. Well. I've done some showing off with blueillusionOS. *fg*
... the osdever formerly known as beyond infinity ...
BlueillusionOS iso image
BlueillusionOS iso image
Re:Importance of os theory regarding os development
*evilgrin*
Yep. There's nothing like entering a beginner's course in a subject you've already mastered to boost your ego. I did a similar thing in my C/C++ courses about seven years ago. If I remember correctly, I amassed two errors in all the tests combined - over a course of 18 months.
G'day, my "passed" stamp if you please, good bye. ;D
Yet still, it was a valuable exercise in addition to the self-taught / tutorial stuff, which brings me back to Phyberglass' question: Even if you already know much about the doing, learning about the theory widens your horizons and allows you to ask better questions and make better designs.
Yep. There's nothing like entering a beginner's course in a subject you've already mastered to boost your ego. I did a similar thing in my C/C++ courses about seven years ago. If I remember correctly, I amassed two errors in all the tests combined - over a course of 18 months.
G'day, my "passed" stamp if you please, good bye. ;D
Yet still, it was a valuable exercise in addition to the self-taught / tutorial stuff, which brings me back to Phyberglass' question: Even if you already know much about the doing, learning about the theory widens your horizons and allows you to ask better questions and make better designs.
Every good solution is obvious once you've found it.
Re:Importance of os theory regarding os development
@Pype: Do you know whether theres an english translation of the SOS magazine available anywhere, my French is just about up to the task but its pretty hard going. I havnt read or used french since I passed my school exam almost 4 years ago!
Merci beaucoup
Merci beaucoup
Re:Importance of os theory regarding os development
Last semester I took a course on operating systems, which basically went over things like semaphores, IPC, page tables, etc., without any real case studies or anything (besides some user program projects to run on Linux that took advantage of what we learned). This semester I am in an advanced operating systems course. We are hacking the internals of the Linux kernel in this one, and I am involved in a very fun project at the moment. My lab partner and I are modifying the kernel so that a process can forked that will have encrypted swap, as well as other processes that are forked from it in turn. In this way, entire sessions on a Linux machine can use encrypted swap, but there is no performance penalty for anybody that doesn't care to use the feature, even on the same machine at the same time. Next fall, there is supposed to be another operating system course where we will actually build an operating system from scratch. I'm looking forward to it.
For me, it has been extremely helpful to have the background in the higher levels of operating systems, and even more helpful to have the opportunity to mess around with an already-existing operating system as I am doing right now. It really gives you a good sense of direction.
For me, it has been extremely helpful to have the background in the higher levels of operating systems, and even more helpful to have the opportunity to mess around with an already-existing operating system as I am doing right now. It really gives you a good sense of direction.
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
Re:Importance of os theory regarding os development
You're lucky. The university I went to cancelled the OS lab course just before my first semester there. I took the OS theory course and the distributed OS course, but those were the only two available. This is why I'm working on my own OS as a hobby, to compensate.geezusfreeek wrote: Next fall, there is supposed to be another operating system course where we will actually build an operating system from scratch. I'm looking forward to it.
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager
Re:Importance of os theory regarding os development
The first class is the only one that is regularly offered, but due to interest in the subject from when I was in it, the professor offered this one that I'm in now, and is offering the next one as well because of the interest.