A
A
Alexey Milyuta2016-07-04 06:52:59
User interface
Alexey Milyuta, 2016-07-04 06:52:59

Creating a graphical shell for the OS?

Good day dear users!
There is such a situation :
1. The bootloader and the simplest file system are written on the assembler.
2. The kernel is written in C. It can display lines on the screen, read keystrokes, run applications (written in assembler, without headers and other nonsense, that is, pure bin files).
3. Added memory allocation and multitasking.
4. A description of system calls and a compiler of a simple language (Basic) are developed in accordance with these system calls.
Problem :
What are the ways to create a GUI? Because I myself want to write a GUI (practice), and if I let it go out into the world, then without a GUI there is no way ...
Please help, comments like: "There is nothing to do", "It will take over 9000 years", "Throw it in the trash and go sleep" - please do not leave.

Answer the question

In order to leave comments, you need to log in

6 answer(s)
M
Mikhail Usotsky, 2016-07-04
@Aquarius-Michael

It seems to me that you need to understand how the user interface itself works. There should be basic templates, classes and calls. After all, windows and any element of the user interface are also just separate applications that actively interact with the core of another application. Try exploring all element behaviors from within Visual Studio. There they are very well described and make at least a basic set based on the study received. For example, a window has a specific set of code to draw on the display screen, where there may be calls to events, property changes, and so on. And you also need to work with the framebuffer first. It's impossible without him. All graphics engines are redrawn through this buffer. In general, the first thing you need to do is work with the framebuffer.
What you are doing is very good indeed. It is important not to stop and keep an interest in this case. Step by step you can achieve more. Moscow was not built right away.

R
Rou1997, 2016-07-04
@Rou1997

There is nothing to do, it will take over 9000 years, throw it in the trash, but don’t go to sleep, but think with your head, try out your ambitions, start with reverse engineering and create components for existing analogs, including alternative graphical interfaces, here’s the way for you.
Why? Isn't it true that it will take "over 9000 years" and that you have nothing to do?

N
Neron, 2016-07-04
Lordov @Nekto_Habr

in terms of design (I'm not a programmer) - choose a suitable system font, open illustrator and draw. I would advise you to study material design, the principles of interaction with the interface are well described there.

R
Rafael™, 2016-07-04
@maxminimus

I would take web interface building technology as a basis
if you don't like css - you can draw on canvas

K
Konstantin Nagibovich, 2016-07-04
@nki

A real OS does not need graphic design - everything can be done in the console.

F
Fedor Lapshin, 2019-02-26
@FedLapshin06

try to start with VGA...
then write a driver for vidyuha...
then use a driver to render gui...
and also write your own window manager....
PS I'm also working on my OS... and you have a good idea, move on, don't stop... don't listen to others...

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question