Page 8 of 55

Re: When your OS goes crazy - Screenshots

Posted: Tue Jan 18, 2011 10:56 pm
by doublebeta
I think my timer tick interrupt was called while handling an exception. (screen 1)

Image

It's happy about something.

Either that happens or my kernel log gets filled with garbage (screen 2)

Image

edit: can't be running my tick isr, irqs are disabled. Must be something else
edit: seems to be have just jumped to random code before.
Result of doing jmp _shell (which is a C function) before the iret in the exception handler (screen 3)
Probably a result of stuff not being declared volatile - I never do end up iretting from my exception ;). Later i'll try hacking up the stack to jump to _shell when I do an iret. This is NOT supposed to be reliable, this is just fun (and it IS fun. I've always loved executing random data, from Pokemon on Gameboy to smashthestack.org pointing somewhere it shouldn't, on purpose :D I love chaos.)
Image

edit: Fixed it all up by using the old eip where the exception occured as an unsigned short pointer, and set the instruction to 0x9090 - two NOPs. It's crap but it works so for the moment, as my OS's 'feature' is that it's unstable, it's staying :P. All exceptions are handled like this, not just interrupt 0, so i'd love to see what happens when I GPF or something :D. I wasn't implying I needed help before. Just idly discussing the state of my kernel :P

Re: When your OS goes crazy - Screenshots

Posted: Wed Jan 19, 2011 4:55 am
by Shirk
doublebeta wrote:
edit: can't be running my tick isr, irqs are disabled. Must be something else
edit: seems to be have just jumped to random code before.
Result of doing jmp _shell (which is a C function) before the iret in the exception handler (screen 3)
Probably a result of stuff not being declared volatile - I never do end up iretting from my exception ;). Later i'll try hacking up the stack to jump to _shell when I do an iret. This is NOT supposed to be reliable, this is just fun (and it IS fun. I've always loved executing random data, from Pokemon on Gameboy to smashthestack.org pointing somewhere it shouldn't, on purpose :D I love chaos.)
...
edit: Fixed it all up by using the old eip where the exception occured as an unsigned short pointer, and set the instruction to 0x9090 - two NOPs. It's crap but it works so for the moment, as my OS's 'feature' is that it's unstable, it's staying :P. All exceptions are handled like this, not just interrupt 0, so i'd love to see what happens when I GPF or something :D. I wasn't implying I needed help before. Just idly discussing the state of my kernel :P
Don't panic - all is fine as long as you remember to blink and breathe at predictable intervals ;)

Re: When your OS goes crazy - Screenshots

Posted: Wed Jan 19, 2011 7:53 am
by doublebeta
Eh? I'm not panicking. Just making a whole lot of edits so people can see my progress, even though they probably don't care(and of course would not be offended). Something to do.

I do forget to breathe+blink though, thankyou for the tip :D

Re: When your OS goes crazy - Screenshots

Posted: Thu Feb 24, 2011 4:08 pm
by JackTDawson
Hahahaha, I remember when mine did this back in the day.. err wait.. it still does it.. crap... :/

Re: When your OS goes crazy - Screenshots

Posted: Fri Feb 25, 2011 5:50 pm
by Synon
My new project (deleted my old one because I overcomplicated it by trying to make my first kernel "perfect". This one is deliberately simplistic, hence the name).
Beware of the name of the project if you're at work or something.
http://www.youtube.com/watch?v=3_oPhe0o-Vg

Edit: I fixed it a while ago, I don't remember what the problem was, it's almost 3 am.

Re: When your OS goes crazy - Screenshots

Posted: Mon Apr 11, 2011 2:56 pm
by mariuszp
Synon wrote:My new project (deleted my old one because I overcomplicated it by trying to make my first kernel "perfect". This one is deliberately simplistic, hence the name).
Beware of the name of the project if you're at work or something.
http://www.youtube.com/watch?v=3_oPhe0o-Vg

Edit: I fixed it a while ago, I don't remember what the problem was, it's almost 3 am.
LOL stupid youtube i went on the video (which you deleted), so then this 'missing' message comes up and the polish version says:
This video has been removed by the user. sorry for bugs

Re: When your OS goes crazy - Screenshots

Posted: Wed Jun 08, 2011 12:52 pm
by rand
Now it's time for some serious kprint stress test!!
As you can see my console scroll function works GLORIOUSLY!

Re: When your OS goes crazy - Screenshots

Posted: Wed Jun 08, 2011 1:04 pm
by Love4Boobies
Why do I get the feeling most screenshots here are fake?

Re: When your OS goes crazy - Screenshots

Posted: Wed Jun 08, 2011 1:09 pm
by rand
Love4Boobies wrote:Why do I get the feeling most screenshots here are fake?
Because you assume things must go right on first try ;)

Re: When your OS goes crazy - Screenshots

Posted: Thu Jun 09, 2011 1:58 am
by qw
Love4Boobies wrote:Why do I get the feeling most screenshots here are fake?
I guess you expect weird screen shots to be completely random. But they don't have to be.

Re: When your OS goes crazy - Screenshots

Posted: Sat Jun 11, 2011 11:11 am
by Neolander
Breakthrough innovation : I hereby gloriously introduce the first physical memory manager testing tool (to the best of my knowledge) that works on one virtual machine and fails on another ! =D> Now THAT's useful testing !
bochs_win.png
vbox_fail.png
Oh, well... Guess there's a very silly bug behind this and I'll feel deeply ashamed when I find out.

EDIT : Not so silly, sadly... But got it anyway.

Re: When your OS goes crazy - Screenshots

Posted: Sun Jun 12, 2011 3:07 pm
by rand
TDD? Nice idea! Is it a kernel space utility or a user space app?

Re: When your OS goes crazy - Screenshots

Posted: Sun Jun 12, 2011 4:41 pm
by Neolander
rand wrote:TDD? Nice idea! Is it a kernel space utility or a user space app?
Not exactly true TDD because I had the idea to write some automated regression tests after having finished the memory manager, but I certainly do think that having these at hand will be pretty good in the future, when I'll have to tweak the code again, as a way to quickly check that everything still works.

Currently, the testing tools are an optional kernel space utility. You can choose to link them into the kernel using a flag in the makefile, and after that it's possible to call the testing functions within the kernel's main function. I don't have user space yet, so I didn't exactly have the choice ^^

Re: When your OS goes crazy - Screenshots

Posted: Thu Jun 16, 2011 3:48 am
by gravaera
Love4Boobies wrote:Why do I get the feeling most screenshots here are fake?
I always wondered about that myself, cos the effects these people produce with that VGA framebuffer are just purely original, every time :?

Re: When your OS goes crazy - Screenshots

Posted: Sat Jun 18, 2011 10:20 am
by mariuszp
Take this:

I have implemented some basic support for shared libraries. Normally, the code works perfectly and the exit() function inside a library is called perfectly, but sometimes, the resolve() function fails right before returning (weird, i know..)