免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: OstrichFly

[原创] 写一个块设备驱动 [复制链接]

论坛徽章:
0
发表于 2009-02-03 14:00 |显示全部楼层
LZ怎么还没来

论坛徽章:
0
发表于 2009-02-03 17:19 |显示全部楼层
由于内核的虚拟地址空间和用户虚拟地址空间共用4GB,且内核空间只有1GB
所以当内存>1GB时对超过1GB的空间就不能直接访问了,必须先映
为了可以访问高端内存,系统预留了一部分低端地址空间(128M)作为高端内存的临时映射,当然这128M还有别的用途
请问我的理解对吗?如果是,那128M还有些什么具体用途?

论坛徽章:
0
发表于 2009-02-05 20:02 |显示全部楼层
原帖由 Godbach 于 2008-12-31 23:11 发表


呵呵,偶在家里也是这样子。 不知道作者知道咱们这样看书,会不会郁闷。

唉,也就是在卫生间能够不被打扰啊
好在我家卫生间比较大,十几个平方

论坛徽章:
0
发表于 2009-02-05 20:05 |显示全部楼层
原帖由 qiwei9743 于 2009-1-1 19:48 发表
非常感谢楼主的文章!
新的火影和死神看完了!
楼主的文章也看完了,呵呵。
看了一下大概,想先自己做一下,看看自己的手艺。
自己动手太少了,就像学文化课一下。多做题才会理解的更深刻!
然后再仔细看看楼主的,检查一下对楼主的思路是不是理解了。
呵呵!再次感谢楼主的无私奉献!

最后,敢问楼主是80后还是70后?

谢谢支持!
严格来说属于70后,在70、80的分界位置,就像南京跨越了江南江北一样。

论坛徽章:
0
发表于 2009-02-05 20:06 |显示全部楼层
原帖由 aaaaa5aa 于 2009-1-2 00:45 发表
看完有点晕乎乎的,~~~~

没事,再看看就清醒了

论坛徽章:
0
发表于 2009-02-05 20:20 |显示全部楼层
原帖由 pigcrying 于 2009-1-4 10:12 发表

呵呵。。。很好的欣赏完一个人的作品就是对创作者最好的支持。
虽然可以协商轮着搞,但是目前好像两个男的都想占为己有,都想让女的怀上自己的孩子。
而且针对开灯问题,目前的情况是大灯全部坏掉了,而整个 ...

在内核中对数据访问的同步,必须由访问数据的代码遵循一定规则访问来解决。
当然我们可以通过一些方法加以限制,让代码无法去做破坏数据完整性的事情,比如不允许代码直接访问数据,
而必须通过指定的函数访问,这时可以在函数中处理同步问题。
但大多数情况下,还是要求访问数据的代码去遵循约定的规则的(比如获取锁)。

对于“两个男的都想占为己有”的情况,大概可以解释为程序Bug了,
对于这种情况,要做的大概是让他们投胎吧,也就是改正这段代码。

在读写块设备时没有加锁,假设用户态的2个进程同时读写块设备的相邻区域,确实会出现数据混乱,
但这不是块设备驱动程序需要处理的,而是这两个进程本身的问题。
应该改的是这两个进程的代码(比如加文件锁),避免它们同时读写块设备的相同区域,
这与两个进程同时读写普通文件是一个概念。

不过在将来的章节中确实将出现需要同步的问题,到时我们将做一个示例。

论坛徽章:
0
发表于 2009-02-05 20:21 |显示全部楼层
原帖由 itaomail 于 2009-1-7 20:40 发表
楼主哥哥写的真好,大师

过奖过奖,希望能对你有用哦。

论坛徽章:
0
发表于 2009-02-05 20:27 |显示全部楼层
原帖由 fly6 于 2009-1-7 21:35 发表
LZ入行入错了,应该去写网络小说,而不应该做IT
呵呵,支持!!!!!!!!!

确实觉得写网络小说倒是比写IT教程爽不少。
前者写得好,会有好多mm崇拜者,甚至...(口水ing......)
后者充其得到一些同行的认可,而且99%都是爷们

论坛徽章:
0
发表于 2009-02-05 20:50 |显示全部楼层
原帖由 fishswimming 于 2009-1-11 22:41 发表
今天也试着写了一个块设备驱动来加密磁盘,有个地方可被折腾坏了:
如果是用blk_init_queue()来指定函数foo()来为请求队列服务,而又需要在foo()函数中进行非原子操作,一定要用spin_lock_irq()来释放请求队列 ...

不错哦。
希望国内的linux爱好者、特别是能编程的爱好者能多起来。
前些天总书记看望军队的新闻中,部队专用设备的屏幕上出现的居然是熟悉的蓝天白云,不免有些担忧,
但往好的方面想,军队里的电脑高手应该早已知道其中的隐患、并准备好破解之道吧。

论坛徽章:
0
发表于 2009-02-05 20:59 |显示全部楼层
原帖由 fly6 于 2009-2-3 14:00 发表
LZ怎么还没来

不好意思让大家久等了,
年前为对得起奖金,把单位的活儿做得快了一些,
然后是9天的假,沉醉于睡觉和看电影之中,家门口的小店也关门了,导致为每顿吃饭发愁
上班时身体极度虚弱,连爬楼的力气都没了
不过在你的督促下,我又来了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP