mirror of
https://github.com/drasko/codezero.git
synced 2026-02-06 06:53:18 +01:00
Moved all pager page-mapping routines to memory.c
Added a new virtual address pool for contiguous virtual addresses for the pager. This will help in mapping multi-page user buffers and files.
This commit is contained in:
@@ -19,6 +19,8 @@ int file_open(struct tcb *opener, int fd);
|
||||
|
||||
struct vm_file *do_open2(struct tcb *task, int fd, unsigned long vnum, unsigned long length);
|
||||
int flush_file_pages(struct vm_file *f);
|
||||
int read_file_pages(struct vm_file *vmfile, unsigned long pfn_start,
|
||||
unsigned long pfn_end);
|
||||
|
||||
struct vfs_file_data {
|
||||
unsigned long vnum;
|
||||
|
||||
@@ -21,4 +21,12 @@ void init_mm_descriptors(struct page_bitmap *page_map,
|
||||
struct bootdesc *bootdesc, struct membank *membank);
|
||||
void init_physmem(struct initdata *initdata, struct membank *membank);
|
||||
|
||||
int pager_address_pool_init(void);
|
||||
void *pager_new_address(int npages);
|
||||
int pager_delete_address(void *virt_addr, int npages);
|
||||
void *pager_map_pages(struct vm_file *f, unsigned long page_offset, unsigned long npages);
|
||||
void pager_unmap_pages(void *addr, unsigned long npages);
|
||||
void *pager_map_page(struct vm_file *f, unsigned long page_offset);
|
||||
void pager_unmap_page(void *addr);
|
||||
|
||||
#endif /* __MEMORY_H__ */
|
||||
|
||||
Reference in New Issue
Block a user