|
小弟刚开始接触内核,看了《Linux内核设计与实现》这本书,有些问题不太懂,还望高手赐教!
1.从系统调用read()到address_space_operation中的readpage()是如何调用的?路径是不是syscall read()==>struct file->dentry->inode->i_mapping->a_ops->readpage()?
readpage()中有两个参数是如何得到的?
readpage()中的find_get_page()中又有两个参数,又是从何得到?
2.address_space中有一个叫基树的东东,他保存的系统中所有的页缓存?还是本进程的?还是某个用户的?
另外:
syscall:malloc(),mmap();还有内核中的函数:dp_mmap(),kmalloc()取得空间都从slab层中取得吗?内核可以单独从物理内存中取得小于一页的内存吗?
非常感谢! |
|