What does your OS look like? (Screen Shots..)

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
User avatar
max
Member
Member
Posts: 616
Joined: Mon Mar 05, 2012 11:23 am
Libera.chat IRC: maxdev
Location: Germany
Contact:

Re: What does your OS look like? (Screen Shots..)

Post by max »

Hey Peterbjornx! Really awesome progress, looks great. [-o<

P.S.: it would be imho nice if you added your screenshots as smaller images, maybe with a link to the big image :)
User avatar
Roman
Member
Member
Posts: 568
Joined: Thu Mar 27, 2014 3:57 am
Location: Moscow, Russia
Contact:

Re: What does your OS look like? (Screen Shots..)

Post by Roman »

Now my VM supports calling and returning, plain uselessness.
Test code for VM:

Code: Select all

func testB {
	return 0
}

func testA {
	testB:
	return 0
}

func main {
	testA:
	return 0
}
Byte-code:

Code: Select all

0D F0 0D 80  1B 00 00 00  00 00 00 00  E4 00 00 E3  0C 00 00 00  00 00 00 00  E4 00 00 E3  0F 00 00 00  00 00 00 00  E4 00 00
EDIT: the red number in the top right corner is the current opcode.
EDIT2: status code is yellow, when it's not 0.
EDIT3: on the second screenshot you can see a yellow status code. All return codes are 16-bit.
Attachments
Снимок экрана 2014-09-05 в 20.38.26.png
Снимок экрана 2014-09-05 в 20.24.23.png
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
- Alan Kay
User avatar
sortie
Member
Member
Posts: 930
Joined: Wed Mar 21, 2012 3:01 pm
Libera.chat IRC: sortie

Re: What does your OS look like? (Screen Shots..)

Post by sortie »

I spent some time implementing POSIX regular expressions (<regex.h>) in my libc, so I could use them to implement the regexp matching operator (:) in expr(1):

Image

It's not a time-efficient implementation yet, but it'll do. The main reason is that configure scripts do a lot of expr calls with regular expressions. Well, I implemented this and did a few odd adjustments and hacks, and I got configure scripts running on my OS. I managed to build some simple GNU packages like libiconv and grep fully on my OS. I then looked into the bigger packages like binutils and gcc. With a bunch of effort, I actually just managed to compile binutils and gcc on my OS and install them, and then build a hello world program with the new compiler.

Some screenshots that might be too big to link here inline? (1280x1024):

https://cs.au.dk/~sortie/sortix/screens ... sortix.png
https://cs.au.dk/~sortie/sortix/screens ... lzkthx.png

Yep. I'm going self-hosting big-time. :D
klange
Member
Member
Posts: 679
Joined: Wed Mar 30, 2011 12:31 am
Libera.chat IRC: klange
Discord: klange

Re: What does your OS look like? (Screen Shots..)

Post by klange »

I ported SirCmpwn's z80e (TI graphing calculator emulator) and gave it a native inteface, so here's Phoenix running on KnightOS running under z80e on top of ToaruOS (which is itself running in Qemu on Linux):

Image
SirCmpwn
Member
Member
Posts: 34
Joined: Thu Mar 06, 2014 4:57 pm

Re: What does your OS look like? (Screen Shots..)

Post by SirCmpwn »

Here's a screenshot of my OS :wink:

Image
TorakTu
Posts: 17
Joined: Tue Apr 16, 2013 7:47 pm

Re: What does your OS look like? (Screen Shots..)

Post by TorakTu »

....REMOVED FOR AN UP COMING IMPROVED SHOT....
Last edited by TorakTu on Fri Sep 12, 2014 6:22 pm, edited 2 times in total.
Peterbjornx
Member
Member
Posts: 116
Joined: Thu May 06, 2010 4:34 am
Libera.chat IRC: peterbjornx
Location: Leiden, The Netherlands
Contact:

Re: What does your OS look like? (Screen Shots..)

Post by Peterbjornx »

sortie wrote:I spent some time implementing POSIX regular expressions (<regex.h>) in my libc, so I could use them to implement the regexp matching operator (:) in expr(1):

Image

It's not a time-efficient implementation yet, but it'll do. The main reason is that configure scripts do a lot of expr calls with regular expressions. Well, I implemented this and did a few odd adjustments and hacks, and I got configure scripts running on my OS. I managed to build some simple GNU packages like libiconv and grep fully on my OS. I then looked into the bigger packages like binutils and gcc. With a bunch of effort, I actually just managed to compile binutils and gcc on my OS and install them, and then build a hello world program with the new compiler.

Some screenshots that might be too big to link here inline? (1280x1024):

https://cs.au.dk/~sortie/sortix/screens ... sortix.png
https://cs.au.dk/~sortie/sortix/screens ... lzkthx.png

Yep. I'm going self-hosting big-time. :D
Holy ****, that's amazing!
User avatar
b.zaar
Member
Member
Posts: 294
Joined: Wed May 21, 2008 4:33 am
Location: Mars MTC +6:00
Contact:

Re: What does your OS look like? (Screen Shots..)

Post by b.zaar »

Here's a few screens of BoxOn using the Simple Multiboot boot loader.

This shows the boot loader with a tiny Multiboot kernel, just uses jmp $
Image

This shows the Multiboot specification example kernel and output. The data overview in the debug window shows the Multiboot info block at 0x8000.
Image
"God! Not Unix" - Richard Stallman

Website: venom Dev
OS project: venom OS
Hexadecimal Editor: hexed
User avatar
max
Member
Member
Posts: 616
Joined: Mon Mar 05, 2012 11:23 am
Libera.chat IRC: maxdev
Location: Germany
Contact:

Re: What does your OS look like? (Screen Shots..)

Post by max »

thats awesome sortie. :)
mallard
Member
Member
Posts: 280
Joined: Tue May 13, 2014 3:02 am
Location: Private, UK

Re: What does your OS look like? (Screen Shots..)

Post by mallard »

I don't have anything that I'd really call a "user interface" yet, but I expect this screen will become somewhat familiar to any future users of my OS...
Attachments
btos-bsod-1.png
Image
User avatar
max
Member
Member
Posts: 616
Joined: Mon Mar 05, 2012 11:23 am
Libera.chat IRC: maxdev
Location: Germany
Contact:

Re: What does your OS look like? (Screen Shots..)

Post by max »

mallard wrote:I don't have anything that I'd really call a "user interface" yet, but I expect this screen will become somewhat familiar to any future users of my OS...
Classic BSOD :mrgreen:
Why don't you kill the process and let the rest go on?
User avatar
sortie
Member
Member
Posts: 930
Joined: Wed Mar 21, 2012 3:01 pm
Libera.chat IRC: sortie

Re: What does your OS look like? (Screen Shots..)

Post by sortie »

Probably NULL pointer dereference!
You don't know for sure?
mallard
Member
Member
Posts: 280
Joined: Tue May 13, 2014 3:02 am
Location: Private, UK

Re: What does your OS look like? (Screen Shots..)

Post by mallard »

max wrote: Why don't you kill the process and let the rest go on?
If an error occurs in userspace, I do. The BSOD only happens if kernel code causes the fault.
sortie wrote: You don't know for sure?
Well, the message really just means that a page fault has occurred on page 0, which is left unmapped specifically to catch NULL pointer errors. So, while there's a high probability that it's a NULL dereference, it's not certain. (Although the bug I deliberately triggered to take the screenshot was.)

Also, if anyone's wondering what the "Stored EIP" is, it's the EIP at the time of the last interrupt or context swtich. So, for processor exceptions, it's the location of the faulty code, for other errors it might not be.
Image
User avatar
sortie
Member
Member
Posts: 930
Joined: Wed Mar 21, 2012 3:01 pm
Libera.chat IRC: sortie

Re: What does your OS look like? (Screen Shots..)

Post by sortie »

mallard wrote:Well, the message really just means that a page fault has occurred on page 0, which is left unmapped specifically to catch NULL pointer errors. So, while there's a high probability that it's a NULL dereference, it's not certain.
You can be certain it's a null-pointer access if the exception was a page fault and cr2 is set to 0.
Post Reply