Page 52 of 55

Re: When your OS goes crazy - Screenshots

Posted: Tue Sep 15, 2020 4:03 pm
by Structure
clusterfuck.jpg

Re: When your OS goes crazy - Screenshots

Posted: Sun Oct 11, 2020 8:15 pm
by SaulloSilva
Try to load ELF file

Re: When your OS goes crazy - Screenshots

Posted: Sat Oct 17, 2020 9:40 pm
by bgg
Something about this tells me I didn't set up the terminal correctly

Re: When your OS goes crazy - Screenshots

Posted: Fri Nov 13, 2020 9:24 am
by yuukidesu9
bgg wrote:Something about this tells me I didn't set up the terminal correctly
I think the last two letters from that

Code: Select all

"w ft"
part are swapped :lol:

Re: When your OS goes crazy - Screenshots

Posted: Fri Dec 04, 2020 12:36 am
by clementttttttttt
NetDOS-32 (again) completely freaks out while testing multitasking.

Re: When your OS goes crazy - Screenshots

Posted: Mon Dec 07, 2020 2:40 pm
by 8infy
While fixing a bunch of technical debt i've accumulated in the 32 bit version of the kernel.
Image

Re: When your OS goes crazy - Screenshots

Posted: Mon Dec 07, 2020 3:57 pm
by zaval
the font looks soo gewd. :)

Re: When your OS goes crazy - Screenshots

Posted: Tue Dec 08, 2020 12:16 am
by 8infy
zaval wrote:the font looks soo gewd. :)
Lol thanks, its hand-drawn with bitmasks actually so I didn't expect it to look well :D

Re: When your OS goes crazy - Screenshots

Posted: Mon Feb 01, 2021 4:42 pm
by AndrewAPrice
Not really a screenshot, but my kernel was acting very strangly and I wasted a lot of time on debugging it.

I had a very strange heisenbug where local variables in my kernel were being overritten, but commenting out random code or adding extra debugging code either stopped it or made it modify other random variables!!

I was using the QEMU monitor and halting the world and inspecting the memory location of the variables that should not have modified, that they started looking suspiciously like addresses in my kernel address range. They lined up with addresses in my disassembled kernel (in kind of a reverse stack trace of functions that would have called each other.) I printed rsp in the QEMU monitor and it was pointing into my kernel's BSS section!

I discovered this in my interrupt handler:

Code: Select all

    mov rsp, interrupt_stack_top
Instead of:

Code: Select all

    mov rsp, [interrupt_stack_top]
I was setting the stack to the location of the variable 'interrupt_stack_top', rather than the address that the variable 'interrupt_stack_top' was pointing to.

The reason it went undetected was because the linker had been putting 'interrupt_stack_top' at the very start of my BSS section, and BSS is page aligned, so there was a little bit of empty padding and it was never an issue. But, some new code added global variables before 'interrupt_stack_top', and that's when I noticed my bug.

Re: When your OS goes crazy - Screenshots

Posted: Tue Feb 02, 2021 11:40 am
by PeterX
Ha, I didn't know the term "Heisenbug". I had indeed bugs that seem to disappear when trying to isolate them. That was quite puzzling every time it happened. Then you normally have done something wrong where you were sure to do it right. So you have to question what you view as a safe assumption.

Good to see that I'm not the only one who has such problems occasionally. :)

Greetings
Peter

Re: When your OS goes crazy - Screenshots

Posted: Mon Feb 22, 2021 9:41 pm
by sj95126
More of an "OS not going crazy when it should" story. My kernel doesn't do much yet, it's just a learning project. But still, it's 64-bit, paging, protections, preemptive multitasking, etc. I recently implemented fork() in a fairly simplistic way, and after verifying it worked, I figured why not stress test it, so I made it recursively re-fork ad infinitum, and it was juggling something like 2,000 active processes when I finally stopped it. I guess that's a good sign.

Re: When your OS goes crazy - Screenshots

Posted: Fri Feb 26, 2021 5:48 am
by CorruptedByCPU
I am rebuilding the window display system with transparency support, so far I'm doing fine ;)

Image

Re: When your OS goes crazy - Screenshots

Posted: Fri Mar 12, 2021 6:06 pm
by AndrewAPrice
I was seeing random crashes in my userspace window manager. The stack trace was showing seemingly random locations for the crashes. For example:
  • std::map::find was page faulting when my map was global and my key was on the stack.
  • My linked list was pointing to phantom elements, even though I printed the values of every element I was adding to the list.
The cause of my problems: stack overflows. Turns out, 4KB isn't big enough for everybody.

Re: When your OS goes crazy - Screenshots

Posted: Fri Mar 12, 2021 11:27 pm
by nullplan
AndrewAPrice wrote:The cause of my problems: stack overflows. Turns out, 4KB isn't big enough for everybody.
I recommend guard pages. That way, you will notice if someone exceeds the limit. But yeah, 4kB is a bit tight.

Re: When your OS goes crazy - Screenshots

Posted: Tue Mar 16, 2021 8:28 am
by AndrewAPrice
First attempt to draw widgets to the screen.

First attempt for my window manager (which is in userland) to compose the screen using a buffer from a different process.