OSDev - IOAPIC

Odpowiedz Nowy wątek
2011-08-11 15:33
0

Witam
Post będzie dotyczył architektury x86-64
Otóż jak wiadomo rejestry IOAPIC są w pamięci pod adresem 0xFEC00000. Jednak Bochs twierdzi, że pamięć pod tym adresem nie istnieje. Próba odczytu/zapisu do tego obszaru kończy się wyjątkiem. Tak samo zachowuje się pod Qemu. Co może być powodem bo sam już nie mam pomysłu? Kod: http://4programmers.net/Pastebin/1331

edytowany 1x, ostatnio: lukasz1235, 2011-08-11 15:35

Pozostało 580 znaków

2011-08-11 15:43
0

A czy te bochs i qemu w ogóle emulują IOAPIC, i jest to włączone?

Pozostało 580 znaków

2011-08-11 15:46
0

Fragmenty logu Bochsa:

00000000000i[ ] APIC support: yes
00000000000i[IOAP ] initializing I/O APIC
00000000000i[MEM0 ] Register memory access handlers: 0x00000000fec00000 - 0x00000000fec00fff

edytowany 2x, ostatnio: lukasz1235, 2011-08-11 15:47

Pozostało 580 znaków

2011-08-11 16:58
0

Jesteś pewien, że nie odwołujesz się do 0xfffffffffec00000? Spróbuj odwołać się do 0xfec00000ull.

Pozostało 580 znaków

2011-08-11 18:12
0

Tak, jestem pewien. Zresztą sprawdzam ten adres pod debuggerem, a nie w kodzie.

EDIT: Problem był w stronicowaniu (thx nevar)

edytowany 1x, ostatnio: lukasz1235, 2011-08-12 00:01

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0