flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > can't enable paging :-( |
Author |
|
thomasantony 07 May 2005, 04:12
Hi,
You should point CR3 to the start of your page directory and not start of your program Thomas |
|||
07 May 2005, 04:12 |
|
othername 07 May 2005, 09:20
Page directory entry ---- 0x00FE000
Page table entry --------- 0x00FF000 My program starts ------ 0x0100000 This is what i do: mov eax,0x000FE000 mov cr3,eax this points to Page Directory Entry, look at source. _________________ Sorry for my bad English |
|||
07 May 2005, 09:20 |
|
CodeWorld 07 May 2005, 09:55
You map only part of mem? I think some interrupt handler may not mapped in necessary addresses, and their selectors (ID) after creating new gdt would not be correct too. #PF or #GP. Insert "CLI" and test it.
ps: sorry for my english, too =) |
|||
07 May 2005, 09:55 |
|
othername 07 May 2005, 11:32
Yes, i map just first 4Mb of mem. I tried with CLI, didn't work.
Now i changed to: Page directory entry ---- 0x00001000 PDE Page table entry --------- 0x00002000 PTE My program starts ------ 0x00100000 and now it works, i think that was a broblem of overwriting my code with page tables, but iam stil confused why it could be. _________________ Sorry for my bad English |
|||
07 May 2005, 11:32 |
|
CodeWorld 07 May 2005, 11:52
Quote: iam stil confused why it could be Maybe. But where? =) What if 0x00FE000 mem used by some device? |
|||
07 May 2005, 11:52 |
|
othername 07 May 2005, 17:32
Don't know. I havo no info about how memory looks at boot time, i think it would be easier
to do everything above 1Mb. _________________ Sorry for my bad English |
|||
07 May 2005, 17:32 |
|
CodeWorld 07 May 2005, 17:43
ACPI and SMI above 1 mb. Because i dont think that it is overwriting. Where? =)
|
|||
07 May 2005, 17:43 |
|
othername 07 May 2005, 18:31
I know anything about ACPI and SMI.
|
|||
07 May 2005, 18:31 |
|
CodeWorld 07 May 2005, 18:35
ok. i mean trouble is not in hardware. but where then? ^)
|
|||
07 May 2005, 18:35 |
|
othername 07 May 2005, 19:04
I don't know.
Iam not sure about the following sentence, but if it's true then it's that "overwriting" : If i do at link time -Ttext 0x100000, it means that _start is located at this position, then elf header is propably 0x100000-some_bytes (am i right?) |
|||
07 May 2005, 19:04 |
|
CodeWorld 07 May 2005, 19:10
I think it is true. Tell me about your os =) What plans do you have?
|
|||
07 May 2005, 19:10 |
|
othername 07 May 2005, 21:29
I started to write just for experimenting PM, and wanted to know more about how kernel works. I think i would not go far with this my "OS". I am to lazy to read much, and i have lack of knowledge, i can tell that i haven't write'n any serious program. I think i'll try to write just MINIMAL kernel, and iam not convinced that i'll succeed.
S prazdnikom, Rusak!! _________________ Sorry for my bad English |
|||
07 May 2005, 21:29 |
|
CodeWorld 08 May 2005, 04:32
Quote: I think i'll try to write just MINIMAL kernel, and iam not convinced that i'll succeed. Clear, you whant microkernel? What will be in it? Mem manager, process manager, ipc... and? Quote: S prazdnikom, Rusak!! Thanks! ps: do yous speak russian? =) |
|||
08 May 2005, 04:32 |
|
Mota 08 May 2005, 08:03
0xF0000 to 0x0xFFFFF is used by the BIOS, so it is an overwriting error.
About the elf header, maybe grub only loads the text, data, and sets the bss segment, but doesn't load the whole file together. I dunno cos I dont use GRUB, i just make my own bootsectors to avoid any complication. |
|||
08 May 2005, 08:03 |
|
othername 08 May 2005, 11:28
Mota: havo more info about what memory uses BIOS?
CodeWorld: Now iam thinking to read about memory management, what will be more, don't know, i didn't think much about that. I don't think that i will write my own working kernel or OS. But everything could be. Yes: i speak russian, lithuanian, english. _________________ Sorry for my bad English |
|||
08 May 2005, 11:28 |
|
CodeWorld 10 May 2005, 09:34
Ты получил письмо? А то я те намылил и чё то ответа нет =(
|
|||
10 May 2005, 09:34 |
|
othername 10 May 2005, 10:28
уже есть
_________________ Sorry for my bad English |
|||
10 May 2005, 10:28 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.