Chinaunix首页 | 论坛 | 博客
  • 博客访问: 360339
  • 博文数量: 112
  • 博客积分: 5245
  • 博客等级: 大校
  • 技术积分: 1120
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-07 09:20
个人简介

静下来,定好方向,好好干。

文章分类
文章存档

2017年(1)

2012年(1)

2011年(5)

2010年(6)

2009年(16)

2008年(59)

2007年(24)

我的朋友

分类:

2008-06-25 21:39:15

VM_LOCKED is of no use since the remap_pfn_range does not place pages on the LRU.
-
vm_locked-before-remap_pfn_range-and-drop-vm_shm.patch
Remove VM_LOCKED before remap_pfn range from device drivers and get rid of
VM_SHM.
remap_pfn_range() already sets VM_IO.  There is no need to set VM_SHM since
it does nothing.  VM_LOCKED is of no use since the remap_pfn_range does not
place pages on the LRU.  The pages are therefore never subject to swap
anyways.  Remove all the vm_flags settings before calling remap_pfn_range.

2.6内核下,对于为具体设备写驱动的开发人员而言,基本无需使用try_module_get与module_put

 从设备使用的角度出发,当需要打开、开始使用某个设备时,使用try_module_get(dev→owner)去增加管理此设备的
owner模块的使用计数;当关闭、不再使用此设备时,使用module_put(dev→owner)减少对管理此设备的owner模块的使用计
数。这样,当设备在使用时,管理此设备的模块就不能被卸载;只有设备不再使用时模块才能被卸载。
 2.6内核下,对于为具体设备写驱动的开发人员而言,基本无需使用try_module_get与module_put,因为此时开发人员所写
的驱动通常为支持某具体设备的owner模块,对此设备owner模块的计数管理由内核里更底层的代码如总线驱动或是此类设备
共用的核心模块来实现,从而简化了设备驱动开发。
 
 
一些待解的问题:
win下驱动结束了才出来,还是也参与时间片轮换?linux下呢?
两用户线程同时ioctl会造成混乱吗?
ioctl没执行完,另一用户线程有机会被调用吗?
阅读(736) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~