How to make the GUI of my OS?

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
mkfree
Member
Member
Posts: 55
Joined: Thu Apr 30, 2020 6:03 am
Libera.chat IRC: mkfree

Re: How to make the GUI of my OS?

Post by mkfree »

Hello, I have advanced in the construction of the gui, but I am at a crossroads
The window server must be the one who requests the shared memory from the kernel and then deliver it to the client for
that it can render its own components ?.
What happens when you resize the window, destroying this old memory area and creating a new one is a bit
slow, in terms of shared memory ?.
It is possible that the size of the current screen resolution is requested and thus avoid having to change the size?
it consumes a little more shared memory.

For now I have managed to create the windows, maximize them, minimize them, move them, resize them, all this without using
the shared memory, just doing the memory request on the heap (delete and new), and it works fine, but when I do it with
shared memory is where the problem is.

Does anybody have any suggestions?
mkfree
Member
Member
Posts: 55
Joined: Thu Apr 30, 2020 6:03 am
Libera.chat IRC: mkfree

Re: How to make the GUI of my OS?

Post by mkfree »

This is a sample of how it evolves, so far only the one created the windows server,
in the end I opted for the window server to be the one who creates the shared buffer for the window to do the
rendering of its components in the client, the components are rendered in the front
buffer (not shared) and when it is necessary to update the content on the screen, copy the content to the back
buffer (shared buffer) and sends to the server that this memory zone has changed
and then it is displayed on the screen.
I would really like to hear those who have created the gui of their systems what have been their
ideas regarding this, greetings
Attachments
gui1.png
Post Reply