2
我需要在啓動時分配一些內存。我需要它的物理地址,而不是虛擬地址。另外,我不希望它來自DMA區域,那不是我的目的。獲取啓動時分配的內存
我試過alloc_bootmem(),alloc_bootmem_pages()但他們返回虛擬地址。 我也看着alloc_low_page()...沒有按預期工作。
事情是,我需要某種RAM中的保留區域..不必由內核映射..我將嘗試自己管理該區域。我需要在每次啓動時都使用相同的物理區域。
我也嘗試在init/main.c中分配一些內存:start_kernel(),但是也沒有工作。
現在停留在哪裏/尋找什麼。
我寧願回答作爲指向正確的方向,而不是告訴do_it_here_in_this_way。
謝謝:)
好的,我用virt_to_phys,它證實我在每次啓動時都得到相同的物理位置。仍然有一個問題..不那麼相關,但不能說無關的類型。將與它戰鬥,讓你知道。謝謝:) – Omie
仍在尋找其他問題,但我可以關閉這一個。並使用alloc_bootmem似乎是正確的方式。 virt_to_phys幫助確認了這一點。 – Omie