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.
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 »

Finally got a framework for pseudofilesystems working, started work on an implementation of procfs using it. Upto this point, there was no way for a process running on my kernel to know about other processes (except for maybe something like kill()'s status return or waitpid())
Image
PeterX
Member
Member
Posts: 590
Joined: Fri Nov 22, 2019 5:46 am

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

Post by PeterX »

Looks really good. But the link in your signature isn't working.

Greetings
Peter
User avatar
Kazinsal
Member
Member
Posts: 559
Joined: Wed Jul 13, 2011 7:38 pm
Libera.chat IRC: Kazinsal
Location: Vancouver
Contact:

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

Post by Kazinsal »

Nothing terribly exciting out of this neck of the woods. Runtime configuration is coming together, as can be seen here:

Image

Meanwhile I'm also working on laying out some documentation once again for compilation into a book to go along with the system:

Image
Click for big.
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 »

PeterX wrote:Looks really good. But the link in your signature isn't working.
Hmm. I need to fix that, https://github.com/posnk/posnk/ is the kernel.

Also, getting pretty close to being able to implement an userland debugger in my OS
Image
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 »

Peterbjornx wrote:
PeterX wrote:Looks really good. But the link in your signature isn't working.
Hmm. I need to fix that, https://github.com/posnk/posnk/ is the kernel.
Do you have any pre-built release downloads?
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 »

klange wrote:
Peterbjornx wrote:
PeterX wrote:Looks really good. But the link in your signature isn't working.
Hmm. I need to fix that, https://github.com/posnk/posnk/ is the kernel.
Do you have any pre-built release downloads?
Not any good ones, at the moment, unfortunately. Things are still somewhat broken after some major kernel refactoring. (i started the project back in '14 when i was still in high school, needless to say, i've learnt a lot since then.)

My testing at the moment uses a pretty barebones rootfs, and I also haven't yet added a lot of the new features to my busybox port.

I'll throw together a quick image without a gui or VIM. Don't have a bootloader setup script handy so you'll have to use "-kernel" on qemu.
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 »

Peterbjornx wrote:I'll throw together a quick image without a gui or VIM. Don't have a bootloader setup script handy so you'll have to use "-kernel" on qemu.
To run using ATA harddrive (RW root):

Code: Select all

qemu-system-i386 -m 512M -vga std -kernel vmpos -append "= console=/dev/tty1 root=1000 con.sink.sercon.level=debug" -hda demoroot.img -serial stdio -s -enable-kvm
To run using ramdisk (slow boot, but can be used on real HW too):

Code: Select all

qemu-system-i386 -m 512M -vga std -kernel vmpos -append "= console=/dev/tty1 con.sink.sercon.level=debug " -initrd demoroot.img -serial stdio -s -enable-kvm

Kernel: https://pbx.sh/upl/vmpos (<2M)
Root FS: https://pbx.sh/upl/demoroot.img (128M)

This is still a pretty damn unstable build, and one of the things on top of the To Do list is to add a UBSAN runtime and clear out some of the code rot.
I had signals working fully before I added multithreading to the kernel, they are somewhat buggy now.

If you want to debug some program, set the sercon level to trace, and you'll get a strace-like output from the serial console
User avatar
eekee
Member
Member
Posts: 872
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

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

Post by eekee »

@Kazinsal: What's the .\\pipe\compipe in Putty's title? If that's a way for Putty to connect to a VM's serial port, I'm super-interested! ;)

I might go for asymmetric multiprocessing myself.
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
User avatar
Kazinsal
Member
Member
Posts: 559
Joined: Wed Jul 13, 2011 7:38 pm
Libera.chat IRC: Kazinsal
Location: Vancouver
Contact:

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

Post by Kazinsal »

eekee wrote:@Kazinsal: What's the \\.\pipe\compipe in Putty's title? If that's a way for Putty to connect to a VM's serial port, I'm super-interested! ;)

I might go for asymmetric multiprocessing myself.
\\.\pipe\ is the NT namespace for named pipes, and PuTTY can open named pipes as serial ports like so:
Image

On the VirtualBox side, it's configured like this:
Image

Make sure to uncheck "Connect to existing pipe/socket" so VirtualBox creates the named pipe when the VM starts and closes it when it stops. It'll keep it open if the OS restarts the VM or if you "hard reset" it, so you won't lose any scrollback on a restart. I use it when testing changes, as I can build a new ISO, tab back over to PuTTY, type "reload" into my console, and then once it finishes rebooting I can run my test and scroll up to compare output.
User avatar
eekee
Member
Member
Posts: 872
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

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

Post by eekee »

@Kazinsal: Thanks! I was hoping NT had something like this.
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
astralorchid
Posts: 6
Joined: Sun Nov 29, 2020 10:24 pm

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

Post by astralorchid »

Image
User avatar
eekee
Member
Member
Posts: 872
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

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

Post by eekee »

@astralorchid: Is that 3 programs? (terminal, test, and shell?) Whether it is or it isn't, it looks like you're getting somewhere. :)
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
astralorchid
Posts: 6
Joined: Sun Nov 29, 2020 10:24 pm

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

Post by astralorchid »

eekee wrote:@astralorchid: Is that 3 programs? (terminal, test, and shell?) Whether it is or it isn't, it looks like you're getting somewhere. :)
the terminal is the shell and loads like a program, but it's a bit more connected to the kernel.

I also took Terry's advice and looked into INT 0x13/AH 0x42. Now the OS is booting on everything from an old 32bit BIOS to a UEFI with CSM from this year.
User avatar
eekee
Member
Member
Posts: 872
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

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

Post by eekee »

astralorchid wrote:
eekee wrote:@astralorchid: Is that 3 programs? (terminal, test, and shell?) Whether it is or it isn't, it looks like you're getting somewhere. :)
the terminal is the shell and loads like a program, but it's a bit more connected to the kernel.
That's fair enough. I'm not keen on normal terminals anyway.
astralorchid wrote:I also took Terry's advice and looked into INT 0x13/AH 0x42. Now the OS is booting on everything from an old 32bit BIOS to a UEFI with CSM from this year.
Cool. :)
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
Gigasoft
Member
Member
Posts: 855
Joined: Sat Nov 21, 2009 5:11 pm

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

Post by Gigasoft »

New progress:
- Debugger is now accessible from very early on during booting, using text mode
- Many debugger improvements
- Drivers are now dynamically loaded instead of being compiled into the kernel. Drivers for boot media are loaded using function provided by boot sector.
- Doesn't crash as much
- Can run more DOS programs
Attachments
emulators.png
Post Reply