What does your OS look like? (Screen Shots..)
-
- Member
- Posts: 116
- Joined: Thu May 06, 2010 4:34 am
- Libera.chat IRC: peterbjornx
- Location: Leiden, The Netherlands
- Contact:
- max
- 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..)
Hey Peterbjornx! Really awesome progress, looks great.
P.S.: it would be imho nice if you added your screenshots as smaller images, maybe with a link to the big image
P.S.: it would be imho nice if you added your screenshots as smaller images, maybe with a link to the big image
Re: What does your OS look like? (Screen Shots..)
Now my VM supports calling and returning, plain uselessness.
Test code for VM:
Byte-code:
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.
Test code for VM:
Code: Select all
func testB {
return 0
}
func testA {
testB:
return 0
}
func main {
testA:
return 0
}
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
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.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
- Alan Kay
- Alan Kay
Re: What does your OS look like? (Screen Shots..)
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):
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.
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.
Re: What does your OS look like? (Screen Shots..)
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):
Re: What does your OS look like? (Screen Shots..)
Here's a screenshot of my OS
Re: What does your OS look like? (Screen Shots..)
....REMOVED FOR AN UP COMING IMPROVED SHOT....
Last edited by TorakTu on Fri Sep 12, 2014 6:22 pm, edited 2 times in total.
-
- 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..)
Holy ****, that's amazing!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):
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.
Re: What does your OS look like? (Screen Shots..)
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 $
This shows the Multiboot specification example kernel and output. The data overview in the debug window shows the Multiboot info block at 0x8000.
This shows the boot loader with a tiny Multiboot kernel, just uses jmp $
This shows the Multiboot specification example kernel and output. The data overview in the debug window shows the Multiboot info block at 0x8000.
"God! Not Unix" - Richard Stallman
Website: venom Dev
OS project: venom OS
Hexadecimal Editor: hexed
Website: venom Dev
OS project: venom OS
Hexadecimal Editor: hexed
Re: What does your OS look like? (Screen Shots..)
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...
- max
- 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..)
Classic BSODmallard 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...
Why don't you kill the process and let the rest go on?
Re: What does your OS look like? (Screen Shots..)
You don't know for sure?Probably NULL pointer dereference!
Re: What does your OS look like? (Screen Shots..)
If an error occurs in userspace, I do. The BSOD only happens if kernel code causes the fault.max wrote: Why don't you kill the process and let the rest go on?
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.)sortie wrote: You don't know for sure?
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.
Re: What does your OS look like? (Screen Shots..)
You can be certain it's a null-pointer access if the exception was a page fault and cr2 is set to 0.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.