|
|
|
Page 1 of 1
|
[ 7 posts ] |
|
Author |
Message |
ctimko
Joined: Wed Oct 14, 2009 9:39 am Posts: 198 Location: United States
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) timkOS
Howdy all.
Just thought I would let everyone know of the OS i am working on. I am building the kernel currently and I am almost done. It's be written in C++ (and it has the nasty support for it too!). The focus is simple. I am aiming to have this kernel support both ELF and PE/COFF execs. and I am looking to also package in my own hypervisor along with strong parallelism support (I would like to create this kernel for Computational Cluster usage as its primary...and for my laptop..) I am using ASM where possible. I will post some screen shots when I get further along and there is more than just the initialization screen.
~Charles
_________________ Charles Timko push %esp ;Musings of a computer addict
|
Wed Oct 14, 2009 1:00 pm |
|
![](./styles/serenity/theme/images/spacer.gif) |
Love4Boobies
Joined: Sat Jul 25, 2009 11:26 am Posts: 81
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) Re: timkOS
My kernel is written in C++ from scratch and I never actually ran into any problems with it, I'm not sure what you mean by nasty support ![Smile :)](./images/smilies/icon_e_smile.gif) Could you give a little more details on what you mean by "package in my own hypervisor"?
|
Thu Oct 15, 2009 1:33 pm |
|
![](./styles/serenity/theme/images/spacer.gif) |
ctimko
Joined: Wed Oct 14, 2009 9:39 am Posts: 198 Location: United States
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) Re: timkOS
Later on I am going to work on my own hypervisor abilities, so that if i wanted to, i can just use the os as a hypervisor...i haven't really looked into it deeply, i just thought it would be interesting to write and if possible package it.
As for "nasty support" i just meant that i wrote that support file and i am trying to still work out some kinks in my new and delete. Maybe you can help me with what i might be missing when it comes to the new and delete and executing the constructor and destructor.
Charles
_________________ Charles Timko push %esp ;Musings of a computer addict
|
Thu Oct 15, 2009 3:15 pm |
|
![](./styles/serenity/theme/images/spacer.gif) |
Kieran
Site Admin
Joined: Sat Jul 25, 2009 7:44 am Posts: 274 Location: United Kingdom
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) Re: timkOS
Take a look over at OSDev.org for a basic C++ kernel with New/Delete/Constructor/Destructor support. It also has other C++ specific support functions too.
_________________ Thank you for reading,
Kieran C G Foot
|
Fri Oct 16, 2009 3:04 am |
|
![](./styles/serenity/theme/images/spacer.gif) |
ctimko
Joined: Wed Oct 14, 2009 9:39 am Posts: 198 Location: United States
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) Re: timkOS
Except that new and delete don't just call malloc and free. They both execute their constructor or destructor along with allocating and deallocating the memory block. My new and delete currently do the kmalloc and kfree, but I would like to add in the destructor/constructor support, and I am sure it can be done easily by creating a base object and making sure all classes extend it. Although, I did see that in the linker there is information for the place of the .ctors and the .dtors, so maybe that can be useful to me.
Charles
_________________ Charles Timko push %esp ;Musings of a computer addict
|
Fri Oct 16, 2009 8:39 am |
|
![](./styles/serenity/theme/images/spacer.gif) |
ctimko
Joined: Wed Oct 14, 2009 9:39 am Posts: 198 Location: United States
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) Re: timkOS
Well after talking to a lot of the graduate professors on my campus, I learned that none of them know how to answer my question because no one there apparently uses C++, just C or Java (which is stupid I think). So I guess I am on my own figuring out the whole destructor|constructor thing. I might just have to brutally hack something together (like make everything extend "object").
_________________ Charles Timko push %esp ;Musings of a computer addict
|
Fri Oct 23, 2009 11:57 am |
|
![](./styles/serenity/theme/images/spacer.gif) |
ctimko
Joined: Wed Oct 14, 2009 9:39 am Posts: 198 Location: United States
|
![Post Post](./styles/serenity/imageset/icon_topic_latest.gif) Re: timkOS
The problem I was having with the New and Delete I figured out by reading the darn code. operator delete(object *o) { o->d(); free(o); } and operator new(object *o) { p = malloc(o->a); o->c(p); }
given that object is a structure that contains d for the destructor, a for the size, and c for the constructor. I don't have that code in front of me, but I am sure that is how it is setup...or something close to it.
_________________ Charles Timko push %esp ;Musings of a computer addict
|
Fri May 14, 2010 9:59 am |
|
|
|
Page 1 of 1
|
[ 7 posts ] |
|
Who is online |
Users browsing this forum: No registered users and 100 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
|
|