[kerneltech] Re: 问个关于内存映射的问题

  • From: Li Haifeng <omycle@xxxxxxxxx>
  • To: 林汉杰 <linhanjie123@xxxxxxxxx>
  • Date: Wed, 13 Jun 2012 10:44:20 +0800

没关系,讨论嘛 ^_^。非常感谢

在 2012年6月13日 上午9:19,林汉杰 <linhanjie123@xxxxxxxxx>写道:

> 好像真记错了,
> #ifndef CONFIG_MMU
>        error = ramfs_nommu_expand_for_mapping(inode, size);
>        if (error)
>                goto put_dentry;
> #endif
> 算了,名字全出来了。尴尬。。。闪人。。。。
>
> 在 12-6-13,林汉杰<linhanjie123@xxxxxxxxx> 写道:
> > 一般情况mmap的地址通过pagefault来映射的。
> >
> > 共享匿名内存 实现的父子进程共享内存所用的mmap是直接分配内存并建立映射的。我记得是这样的。
> > mmap(NULL,size,PROT_READ|PROT_WRITE,MAP_SHARED|MAP_ANONYMOUS,-1,0);
> >
> > 好像是通过tmpfs实现的吧,具体记不清,可以看代码。
> >
> >
> > 在 12-6-8,Li Haifeng<omycle@xxxxxxxxx> 写道:
> >> mmap映射的文件内容也是通过page fault才建立真正的映射的吧。
> >>
> >> 在 2012年6月8日 下午7:02,Li Haifeng <omycle@xxxxxxxxx>写道:
> >>
> >>> 恩,多谢。除了mmap,还有什么?
> >>> 在 2012年6月8日 下午6:30,林汉杰 <linhanjie123@xxxxxxxxx>写道:
> >>>
> >>> mmap 匿名共享内存。
> >>>> mmap 设备文件,比如framebuffer驱动实现。
> >>>> 。。。
> >>>>
> >>>> 这些情况都是直接映射到物理内存的(或者io内存)
> >>>>
> >>>> 在 12-6-8,Li Haifeng<omycle@xxxxxxxxx> 写道:
> >>>> > user space 地址空间映射内存的方式除了 Page fault,还有哪些?
> >>>> >
> >>>>
> >>>
> >>>
> >>
> >
>

Other related posts: