What does your OS look like? (Screen Shots..)
Re: What does your OS look like? (Screen Shots..)
Those menus look sooo COD4
Not sane
Just remember, FIND Is Not DOS
Just remember, FIND Is Not DOS
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: What does your OS look like? (Screen Shots..)
Or actually, like a menu redesigned with stolen images
Re: What does your OS look like? (Screen Shots..)
Not actually a screenshot, but a serial port dump generated by Hyphen, the coming successor of Hydrogen, an AMD64 kernel loader.
Pay special attention to the memory map: As the exact usage of memory is tracked (info field is processor id for stacks and module id for modules), memory can be reclaimed when it is not used anymore. The loader's code and data pages are marked as free, as they are no longer needed when the kernel is loaded, so it is automatically reclaimed.
Additionally Hyphen does not use the PIC, but the IO APIC for setup requiring IRQs and will support setting up an IDT from a much simpler structure in the kernel binary to reduce the effort of writing simple kernels even more.
The code printing the info tables to the serial port currently is integrated in the loader, but will be moved to a small test kernel, that prints it to VGA (maybe using the keyboard to switch between tables, as they do not fit on the screen entirely); this way the loader can easily be tested on multiple machines.
Pay special attention to the memory map: As the exact usage of memory is tracked (info field is processor id for stacks and module id for modules), memory can be reclaimed when it is not used anymore. The loader's code and data pages are marked as free, as they are no longer needed when the kernel is loaded, so it is automatically reclaimed.
Additionally Hyphen does not use the PIC, but the IO APIC for setup requiring IRQs and will support setting up an IDT from a much simpler structure in the kernel binary to reduce the effort of writing simple kernels even more.
The code printing the info tables to the serial port currently is integrated in the loader, but will be moved to a small test kernel, that prints it to VGA (maybe using the keyboard to switch between tables, as they do not fit on the screen entirely); this way the loader can easily be tested on multiple machines.
Code: Select all
Hyphen Info Tables
================================================================================
Root Table
================================================================================
Flags: 0x01
LAPIC Address: 0x00000000FEE00000
RSDP Address: 0x00000000000FC0B0
CPU Count: 0x04
IO APIC Count: 0x01
MMAP Entry Count: 0x0C
Module Count: 0x01
================================================================================
CPU List
================================================================================
APIC ID | ACPI ID | Present | BSP | Stack Vaddr | Stack Length | LAPIC Freq
----------------------------------------------------------------------------------
0x00 | 0x00 | Yes | Yes | 0x000000000014A000 | 0x00001000 | 0x00000000
0x01 | 0x01 | Yes | No | 0x0000000000000000 | 0x00000000 | 0x00000000
0x02 | 0x02 | Yes | No | 0x0000000000000000 | 0x00000000 | 0x00000000
0x03 | 0x03 | Yes | No | 0x0000000000000000 | 0x00000000 | 0x00000000
================================================================================
Memory Map
================================================================================
Address | Length | Type | Info
--------------------------------------------------------------
0x0000000000000000 | 0x000000000009F000 | Free | 0x0000
0x000000000009F000 | 0x0000000000061000 | Unavailable | 0x0000
0x0000000000100000 | 0x0000000000007000 | Free | 0x0000
0x0000000000107000 | 0x0000000000042000 | Page | 0x0000
0x0000000000149000 | 0x0000000000001000 | IDT | 0x0000
0x000000000014A000 | 0x0000000000001000 | Stack | 0x0000
0x000000000014B000 | 0x000000000001F000 | Free | 0x0000
0x000000000016A000 | 0x0000000000003000 | Info | 0x0000
0x000000000016D000 | 0x0000000000001000 | Free | 0x0000
0x000000000016E000 | 0x0000000000001000 | Module | 0x0000
0x000000000016F000 | 0x0000000001E81000 | Free | 0x0000
0x0000000001FF0000 | 0xFFFFFFFFFE010000 | Unavailable | 0x0000
================================================================================
Module List
================================================================================
Address | Length | Name
----------------------------------------------------------------
0x000000000016E000 | 0x000000000000005C | kernel64
================================================================================
IO APICs
================================================================================
APIC ID | GSI Base | GSI Count | MMIO Address
------------------------------------------------------
0x04 | 0x00000000 | 0x00000017 | 0x00000000FEC00000
https://github.com/qero/Hydrogen (Loader for AMD64 kernels running on top of GRUB2)
Re: What does your OS look like? (Screen Shots..)
After fixing some ridiculously obvious and stupid bugs (due to coding while sleep deprived ) I've fixed my output code.
Compiled with -DCONFIG_SPLASH=0
Compiled with -DCONFIG_SPLASH=1
This needs fixing...
(p.s. I had no idea QEMU was made by AMD (maybe it uses the vendor string of the host CPU?)).
Compiled with -DCONFIG_SPLASH=0
Compiled with -DCONFIG_SPLASH=1
This needs fixing...
(p.s. I had no idea QEMU was made by AMD (maybe it uses the vendor string of the host CPU?)).
Re: What does your OS look like? (Screen Shots..)
No, that's just the default CPU for qemu-system-x86_64. The 32 bit default CPU is an Intel.Synon wrote:(p.s. I had no idea QEMU was made by AMD (maybe it uses the vendor string of the host CPU?)).
Re: What does your OS look like? (Screen Shots..)
Makes sense.Kevin wrote:No, that's just the default CPU for qemu-system-x86_64. The 32 bit default CPU is an Intel.Synon wrote:(p.s. I had no idea QEMU was made by AMD (maybe it uses the vendor string of the host CPU?)).
Edit: Even with 'qemu-system-i386' or 'qemu -cpu' it still says AuthenticAMD.
- Brynet-Inc
- Member
- Posts: 2426
- Joined: Tue Oct 17, 2006 9:29 pm
- Libera.chat IRC: brynet
- Location: Canada
- Contact:
Re: What does your OS look like? (Screen Shots..)
QEMU pretends to be the host processor, this caused some problems with OpenBSD in Linux KVM recently.
IMHO, It's a pretty silly feature as they're not accurately emulating the processors they claim to be.
IMHO, It's a pretty silly feature as they're not accurately emulating the processors they claim to be.
Re: What does your OS look like? (Screen Shots..)
Right, with -enable-kvm I get an AMD vendor string even for i386, it's Intel only for good old emulation. I think it makes a lot of sense to use the host CPU for virtualization because the code really runs on the host processor rather than on some emulator.
Re: What does your OS look like? (Screen Shots..)
After much work and annoyance, I now have a shared-memory and stream pipe -based windowing environment. It needs a bunch of work, of course, but it's rather smooth and quick. It lacks any window management capabilities, so once a window is spawned you can't move it or resize it (programmatically speaking, the code and API directives are there, but the window compositor doesn't do any of it).
I also spent some time messing with some bilinear filtering in an application that starts fullscreen (using a window) with triple buffering (between the application's double buffer and the compositor's access to the frame buffer). There's a (relatively) smooth animation of my logo pulsating in size:
(click for bigger, full-sized PNG)
I can also spawn other windowed applications, like this demo that randomly fills itself with lines:
(click for full-sized JPG...)
All together, getting the windowing environment working well took implementing shared memory, signals, and threads. I already had working stream pipes from when I wrote my terminal. I have my teammate Markus to thank for most of the shared memory implementation, as well as a good chunk of the threading.
Next steps: Porting the terminal to the windowing environment and writing a GUI toolkit.
I also spent some time messing with some bilinear filtering in an application that starts fullscreen (using a window) with triple buffering (between the application's double buffer and the compositor's access to the frame buffer). There's a (relatively) smooth animation of my logo pulsating in size:
(click for bigger, full-sized PNG)
I can also spawn other windowed applications, like this demo that randomly fills itself with lines:
(click for full-sized JPG...)
All together, getting the windowing environment working well took implementing shared memory, signals, and threads. I already had working stream pipes from when I wrote my terminal. I have my teammate Markus to thank for most of the shared memory implementation, as well as a good chunk of the threading.
Next steps: Porting the terminal to the windowing environment and writing a GUI toolkit.
Re: What does your OS look like? (Screen Shots..)
-
- Posts: 1
- Joined: Mon Feb 27, 2012 1:55 am
Re: What does your OS look like? (Screen Shots..)
Hello everyone Wassup??
.......From NooB
here is my Eva Operating system screenshot
mod13 VGA 320x200
http://eva-os.blogspot.com
http://www.vishalmishra.tk
.......From NooB
here is my Eva Operating system screenshot
mod13 VGA 320x200
http://eva-os.blogspot.com
http://www.vishalmishra.tk
- bellezzasolo
- Member
- Posts: 110
- Joined: Sun Feb 20, 2011 2:01 pm
Re: What does your OS look like? (Screen Shots..)
Here is mine:
Bootloader (HDD): Test version: Panic:
Bootloader (HDD): Test version: Panic:
Whoever said you can't do OS development on Windows?
https://github.com/ChaiSoft/ChaiOS
https://github.com/ChaiSoft/ChaiOS
Re: What does your OS look like? (Screen Shots..)
New screen-shot with FreeType device-driver using the non-seriff free font:
Re: What does your OS look like? (Screen Shots..)
That is awesome. You have to provide locations for those things when it goes live, I'll take a road trip to southern Sweden to fill up on petrol/gas and go back home, haha.
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: What does your OS look like? (Screen Shots..)
I wonder if that exploit still worksbubach wrote:I'll take a road trip to southern Sweden to fill up on petrol/gas and go back home, haha.