Home
last modified time | relevance | path

Searched refs:alloc_pages (Results 1 – 9 of 9) sorted by relevance

/DragonOS-0.1.5/docs/kernel/core_api/
Dallocate-memory.md3 DragonOS提供了一些用于内存分配的api。您可以使用*kmalloc*来分配小的内存块,也可以使用*alloc_pages*分配连续的2MB大小的内存页面。
13 对于需要大量连续内存的分配,可以使用`alloc_pages()`向页面分配器申请连续的内存页。
15 当内存空间不再被使用时,那么必须释放他们。若您使用的是`kmalloc()`分配的内存,那么您需要使用`kfree()`释放它。若是使用`alloc_pages()`分配的内存,则需要使用`free…
Dmm-api.md64 ### `struct Page *alloc_pages(unsigned int zone_select, int num, ul flags)`
/DragonOS-0.1.5/kernel/src/driver/virtio/
Dvirtio_impl.rs2 alloc_pages, free_pages, memory_management_struct, Page, PAGE_2M_SHIFT, PAGE_2M_SIZE,
24 let pa = alloc_pages(ZONE_NORMAL, page_num, PAGE_SHARED as u64); in dma_alloc()
/DragonOS-0.1.5/kernel/src/mm/
Dslab.c71 slab_pool->cache_pool_entry->page = alloc_pages(ZONE_NORMAL, 1, PAGE_KERNEL); in slab_create()
183 tmp_slab_obj->page = alloc_pages(ZONE_NORMAL, 1, PAGE_KERNEL); in slab_malloc()
440 struct Page *page = alloc_pages(ZONE_NORMAL, 1, 0); in kmalloc_create_slab_obj()
Dmm.h246 struct Page *alloc_pages(unsigned int zone_select, int num, ul flags);
Dmm.c290 struct Page *alloc_pages(unsigned int zone_select, int num, ul flags) in alloc_pages() function
642 … mm_map(current_pcb->mm, i, PAGE_2M_SIZE, alloc_pages(ZONE_NORMAL, 1, PAGE_PGT_MAPPED)->addr_phys); in mm_do_brk()
/DragonOS-0.1.5/kernel/src/libs/libUI/
Dscreen_manager.c47 …struct Page *p = alloc_pages(ZONE_NORMAL, PAGE_2M_ALIGN(video_frame_buffer_info.size) / PAGE_2M_SI… in __create_buffer()
/DragonOS-0.1.5/kernel/src/process/
Dprocess.c289 uint64_t pa = alloc_pages(ZONE_NORMAL, 1, PAGE_PGT_MAPPED)->addr_phys; in process_load_elf_file()
376 uint64_t pa = alloc_pages(ZONE_NORMAL, 1, PAGE_PGT_MAPPED)->addr_phys; in process_load_elf_file()
Dfork.c235 uint64_t pa = alloc_pages(ZONE_NORMAL, 1, PAGE_PGT_MAPPED)->addr_phys; in process_copy_mm()