kernel icon indicating copy to clipboard operation
kernel copied to clipboard

Gramado 64bit

Open frednora opened this issue 3 years ago • 4 comments

Im rebuilding Gramado operating system for the 64bit archtechture. I'm just copying all the files from the old 32bit version of Gramado, creating or changing some files . This is gonna be easier to port the ring3 stuff. I guess. This is a work in progress ;)

frednora avatar Jun 27 '21 14:06 frednora

Hi Fred,

is it possible to run Gramado 64bit version?

I tried, but after type boothome (or boot) in Gramado Boot Maneger I got a lot of messagens like: THREAD 1 sc0: write: Calling sc82 sci2: [TODO] sci2: [19] write sys_write: [TODO]

amgodoi avatar Aug 01 '21 12:08 amgodoi

Hi Fred,

is it possible to run Gramado 64bit version?

I tried, but after type boothome (or boot) in Gramado Boot Maneger I got a lot of messagens like: THREAD 1 sc0: write: Calling sc82 sci2: [TODO] sci2: [19] write sys_write: [TODO]

Hi amgodoi :)

Yes, it is possible to run Gramado 64bit version, which is not yet complete. The messages are just informing about the execution of the threads, it's normal.

zBl4ckUser avatar Aug 01 '21 16:08 zBl4ckUser

Hi,

tanks for your reply.

I am not able to boot yet. After type boothome I get a lot of chars like 1111111122222222111111111222222 (see image) and the shell never appears.

I added some printfs to the code and see that the problem could be in spawn_enter_usermode function.

At this point the code appears to be in loop: asm volatile ( " movq $0, %%rax \n" " mov %%ax, %%ds \n" " mov %%ax, %%es \n" " mov %%ax, %%fs \n" " mov %%ax, %%gs \n" " movq %0, %%rax \n" " movq %1, %%rsp \n" " movq $0, %%rbp \n" " pushq $0x23 \n" " pushq %%rsp \n" " pushq $0x3202 \n" // Interrupts enabled for the thread that is not the first. " pushq $0x1B \n" " pushq %%rax \n" " iretq \n" :: "D"(entry), "S"(rsp3) ); I am not good at assembly, but could it be some kind of bug?

image

amgodoi avatar Aug 01 '21 20:08 amgodoi

It's not a bug, it's that there are still things that need to be ported to run the shell again (the shell still 32bits)

And these chars are just for testing threads in usermode

zBl4ckUser avatar Aug 01 '21 22:08 zBl4ckUser

zBl4ckUser was right .... it was not a bug ... at this time i was working to port the kernel to 64bit. The new kernel was able to do just some few things at this time ... but now i have my kernel running very well in 64bit.

frednora avatar Sep 07 '22 17:09 frednora

gramado-64bit

Now the whole system is running very well in 64bit.

frednora avatar Sep 07 '22 17:09 frednora