OSDev.org

The Place to Start for Operating System Developers
It is currently Fri Apr 19, 2024 3:51 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 809 posts ]  Go to page Previous  1 ... 8, 9, 10, 11, 12, 13, 14 ... 54  Next
Author Message
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Mon Nov 28, 2011 10:58 am 
Offline
Member
Member
User avatar

Joined: Wed Sep 17, 2008 3:59 am
Posts: 45
Location: Germany
Finally, I also have something to show.
In the last 2 days, I finished paging in my kernel and tried to 1:1 map the first GB of RAM.
And this is how it looks like if your PMM gives away the video-memory:
Image
It was a FreeBASIC-specific rounding issue in my mark_used function, which lead to a wrong array index to my bitmap. Without that happening, finding that bug would have been really nasty ;)


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Mon Nov 28, 2011 12:21 pm 
Offline
Member
Member
User avatar

Joined: Thu Jul 26, 2007 1:53 am
Posts: 395
That looks very simular to jrepan's visual bug on page 5.

_________________
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Tue Nov 29, 2011 2:06 pm 
Offline
Member
Member
User avatar

Joined: Wed Sep 17, 2008 3:59 am
Posts: 45
Location: Germany
Yeah, it does. Maybe his paging code also had overwritten the video memory ;)
However, my problem was that I used "/" for a division. In FreeBASIC, this gives me a float, and when I put a float into an integer, FreeBASIC rounds the value. So I got 5.75 rounded up to 6, which resulted in wrong array access. Using "\" performs an integer division and the output is 5. I was very confused when I compared the behavior of FreeBASIC and C when using "/" at first ;)

death2all's screenshot also looks very similar, his code also put page tables in the video RAM ^^


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Tue Nov 29, 2011 3:40 pm 
Offline
Member
Member

Joined: Sun Jun 20, 2010 1:21 pm
Posts: 127
haha common error on here, as it seems ;) perhaps a mention in the wiki:
Quote:
DON'T PUT PAGE TABLES IN GMEM!!!!

One time, I even managed it in 1024*768*32 mode, back when I was in my old (borked up) kernel, but I lost the screeny :'( not to worry. I might break my kernel when i go to GMode just to see what happens :) (on a backup copy, ofc)


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Wed Dec 21, 2011 12:22 pm 
Offline
Member
Member
User avatar

Joined: Wed Nov 30, 2011 9:51 pm
Posts: 75
Attachment:
crash.GIF
crash.GIF [ 5.74 KiB | Viewed 5820 times ]

Also works as an error handler!

_________________
d3: virtualizing kernel in progress
https://github.com/WizardOfHaas/d3/


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Mon Jan 02, 2012 12:18 pm 
Offline

Joined: Fri Sep 09, 2011 4:09 pm
Posts: 20
don't know why... I was just reminded of the thread by this c error!
i must need to switch modes somehow,but forgot to because i wrote text-bode bits instead!

:D :D

(i haven't been working on it for a while,actually. got back a day or 2 and now i'm doing relativly good.except this!)
Attachment:
File comment: lol,c-based kernel is feelin' happy about my code!
lol.png
lol.png [ 124.65 KiB | Viewed 5637 times ]


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Fri Jan 13, 2012 12:47 pm 
Offline
Member
Member

Joined: Sun Sep 06, 2009 3:54 am
Posts: 169
Location: Brighton, United Kingdom
darkinsanity wrote:
However, my problem was that I used "/" for a division. In FreeBASIC, this gives me a float, and when I put a float into an integer, FreeBASIC rounds the value. So I got 5.75 rounded up to 6, which resulted in wrong array access. Using "\" performs an integer division and the output is 5. I was very confused when I compared the behavior of FreeBASIC and C when using "/" at first ;)

This reminded me of a European Space Agency rocket called the Ariane 5, which had some code to correct the rocket's angle of trajectory. 40 seconds into the flight that code decides to convert a 64-bit float into a 16-bit signed integer, which, as integers are wont to do when you try to put too much data in them, overflowed. The rocket decided it was facing the wrong direction, so it aimed itself at the ground. Thankfully it was unmanned, and they had had the forethought to put a self-destruct system onboard, so they just blew it up. But if that had actually reached the ground it could have been catastrophic -- I read somewhere that if a fully-fuelled Saturn V rocket had exploded it would have been like a small nuclear bomb. Obviously the Ariane 5 is not the same size as a Saturn V but it's still basically a big tube filled with explosive chemicals.


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Fri Jan 13, 2012 2:59 pm 
Offline
Member
Member
User avatar

Joined: Tue Feb 08, 2011 1:58 pm
Posts: 496
Synon wrote:
This reminded me of a European Space Agency rocket called the Ariane 5, which had some code to correct the rocket's angle of trajectory. 40 seconds into the flight that code decides to convert a 64-bit float into a 16-bit signed integer, which, as integers are wont to do when you try to put too much data in them, overflowed. The rocket decided it was facing the wrong direction, so it aimed itself at the ground. Thankfully it was unmanned, and they had had the forethought to put a self-destruct system onboard, so they just blew it up. But if that had actually reached the ground it could have been catastrophic -- I read somewhere that if a fully-fuelled Saturn V rocket had exploded it would have been like a small nuclear bomb. Obviously the Ariane 5 is not the same size as a Saturn V but it's still basically a big tube filled with explosive chemicals.

Not exactly, nobody wanted to blew the rocket up. What truly happened is this: after the overflow, on board system core dumped the memory and sent it back to the main control centre on the ground. The computer there examined the input and said, hey what's that? the confirmation code for self-destruct? fine...


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Sun Jan 15, 2012 1:15 am 
Offline
Member
Member
User avatar

Joined: Tue Dec 25, 2007 6:03 am
Posts: 734
Location: Perth, Western Australia
My OS has had "support" for swapping back to B8000 text mode when it kernel panics for a while... but I never really debugged it (no real need), so it causes some interesting effects when the OS crashes. However, this one really took the cake :)

It's from it crashing while running the GUI, blowing the GUI pixels up and treating them as characters it seems.


Attachments:
20120115-AcessCrash-GUIv2.png
20120115-AcessCrash-GUIv2.png [ 14.18 KiB | Viewed 5423 times ]

_________________
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Fri Jan 20, 2012 6:40 am 
Offline
Member
Member

Joined: Wed Oct 31, 2007 9:09 am
Posts: 1385
turdus wrote:
What truly happened is this


Not sure if you're trying to be funny. Read the full account here (pdf).


JAL


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Fri Jan 20, 2012 8:40 am 
Offline
Member
Member
User avatar

Joined: Thu Nov 16, 2006 12:01 pm
Posts: 7614
Location: Germany
jal wrote:
Read the full account here (pdf).


Really recommended reading. No-one really royally screwed up. In the end and at the core of it, the fault was re-using Ariane 4 parts without re-testing them to Ariane 5 specs. Plus a couple of bogus decisions on error handling.

Teaches you to think further than just fulfilling the contract. Oh, and document, document, document your assumptions.

_________________
Every good solution is obvious once you've found it.


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Tue Feb 07, 2012 10:02 pm 
Offline
Member
Member
User avatar

Joined: Wed Nov 30, 2011 9:51 pm
Posts: 75
Error occurred in GUI:
Attachment:
windErr.GIF
windErr.GIF [ 10.29 KiB | Viewed 5030 times ]

Shouldn't of swapped display pages...

_________________
d3: virtualizing kernel in progress
https://github.com/WizardOfHaas/d3/


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Tue Feb 14, 2012 7:51 am 
Offline
Member
Member

Joined: Wed Oct 31, 2007 9:09 am
Posts: 1385
GAT wrote:
Error occurred in GUI:


Looks neat, do you have screenshots of the GUI in normal operation?


JAL


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Thu Feb 16, 2012 6:42 pm 
Offline
Member
Member
User avatar

Joined: Wed Nov 30, 2011 9:51 pm
Posts: 75
Yeah!
Here is what is should look like:
Attachment:
wind2.GIF
wind2.GIF [ 10.77 KiB | Viewed 5652 times ]

_________________
d3: virtualizing kernel in progress
https://github.com/WizardOfHaas/d3/


Top
 Profile  
 
 Post subject: Re: When your OS goes crazy - Screenshots
PostPosted: Fri Feb 17, 2012 3:55 am 
Offline
Member
Member

Joined: Wed Oct 31, 2007 9:09 am
Posts: 1385
GAT wrote:
Here is what is should look like


Deliciously old-skool!


JAL


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 809 posts ]  Go to page Previous  1 ... 8, 9, 10, 11, 12, 13, 14 ... 54  Next

All times are UTC - 6 hours


Who is online

Users browsing this forum: Bing [Bot] and 89 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