Page 2 of 2
Posted: Wed Jan 23, 2008 4:25 am
by pcmattman
Hi JamesM,
My OS rewrite (Mattise) is going to be in complete C++ and will abstract all lower-level code into classes (I love polymorphism) so that the OS can be shifted to a new platform by simply modifying a set of low-level routines.
Not to impose any ideas on you guys or anything, but I really think that that's a good plan for any OS written in C++ as long as you do have a good knowledge of polymorphism and classes in C++ and have worked with C++ in a non-hosted environment (like an OS).
Posted: Wed Jan 23, 2008 9:43 am
by bluecode
pcmattman wrote:My OS rewrite (Mattise) is going to be in complete C++ and will abstract all lower-level code into classes (I love polymorphism) so that the OS can be shifted to a new platform by simply modifying a set of low-level routines.
That's also our plan. I will add my interface design (I was put in charge of some initial design) to the project's wiki for you (if you want to) and the others (you don't get a choice
) to criticize.
Providing an abstract interface is always a good idea and is not really a language choice. You can do the same thing in C. The abstraction just consists of structures + functions instead of classes. I think C++ here just adds syntactic sugar and makes automatic documentation generation easier.
Posted: Wed Jan 23, 2008 2:23 pm
by os64dev
pcmattman wrote:Hi JamesM,
Not to impose any ideas on you guys or anything, but I really think that that's a good plan for any OS written in C++ as long as you do have a good knowledge of polymorphism and classes in C++ and have worked with C++ in a non-hosted environment (like an OS).
Why not also use the bridge and abstract factory design patterns. Then you can switch drivers, and probably if designed correctly parts of the kernel, runtrime. This is a theory ofcourse but could work.
Posted: Thu Jan 24, 2008 3:24 am
by JamesM
os64dev wrote:pcmattman wrote:Hi JamesM,
Not to impose any ideas on you guys or anything, but I really think that that's a good plan for any OS written in C++ as long as you do have a good knowledge of polymorphism and classes in C++ and have worked with C++ in a non-hosted environment (like an OS).
Why not also use the bridge and abstract factory design patterns. Then you can switch drivers, and probably if designed correctly parts of the kernel, runtrime. This is a theory ofcourse but could work.
Sounds like a good plan. Incidentally I've never been too much of an abstract class factory fan - it smacks of Java to me
Posted: Fri Jan 25, 2008 5:10 am
by bluecode
We are four now (JamesM, Tyler-Osdev, pcmattman and myself) and agreed that we do not consider any other "applications" at this point in time. That is because if we would we end up discussing everything and don't get anything done. After a few releases we would really appreciate help from others.
Posted: Fri Jan 25, 2008 5:46 am
by ucosty
I'll be happy to do the peanut gallery thing.
Posted: Fri Jan 25, 2008 9:58 am
by lukem95
id love to help out when it gets off the ground, i'm not the most experienced person here, but my kernel atleast has got past Hello World status (for the first attempt, and the rewrite).
If you need any help or testing id be moe than happy...
Posted: Fri Jan 25, 2008 10:14 am
by AJ
Good luck, guys - I look forward to seeing the results.
Cheers,
Adam