local apic of aplication processor

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
kailot2
Posts: 6
Joined: Fri Oct 02, 2015 1:18 am

local apic of aplication processor

Post by kailot2 »

Hi all , I apologize if this topic has already been, my English is not very good.
I am interested in the following questions:
- Do I need a separate IDT for each processor or i can use one?
- Can I use one vector for processing LVT Timer interrupt all CPUs?
-How properly initialize LOCAL APIC processors, I'm doing this so

Code: Select all

mov  ecx, IA32_APIC_BASE
mov  eax,LOCAL_APIC_REG
bts    eax, 11
wrmsr

mov dword [LOCAL_APIC_REG + APIC_LVT_Timer_REG], ((1 shl 17) or 20h)
mov dword [LOCAL_APIC_REG + Divide_Configuration_REG], APIC_TIMER_DIVIDE_BY_4
mov dword [LOCAL_APIC_REG + Initial_Count_REG], 2083333 
digo_rp
Member
Member
Posts: 233
Joined: Sun Jun 05, 2005 11:00 pm

Re: local apic of aplication processor

Post by digo_rp »

First of all I need to say that my english is not good too.

But, I saw in some multprocessing tutorials that each application processor need to have each one structure. like gdt, idt, etc, and this includes a scheduler too.

its better for a good performance, cuz if you share the same structure you need to use spinlock, mutex, etc, and this should make your OS performance bad.

I hope this helps.

good lock.
User avatar
osdever
Member
Member
Posts: 492
Joined: Fri Apr 03, 2015 9:41 am
Contact:

Re: local apic of aplication processor

Post by osdever »

- Do I need a separate IDT for each processor or i can use one?
I think that you need.

P.S. hi, Ozon OS dev :)
Developing U365.
Source:
only testing: http://gitlab.com/bps-projs/U365/tree/testing

OSDev newbies can copy any code from my repositories, just leave a notice that this code was written by U365 development team, not by you.
Post Reply