免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3137 | 回复: 12
打印 上一主题 下一主题

硬盘驱动 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-07-02 16:40 |只看该作者 |倒序浏览
各位,

请问谁有硬盘驱动程序的例子?有的请共享一下。

注:本人初入门,简单的例子就行,可以的话加入少量注释,具体我自己调试就行,谢谢。

论坛徽章:
0
2 [报告]
发表于 2009-07-02 16:41 |只看该作者

回复 #1 ts0612 的帖子

先顶一下

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
3 [报告]
发表于 2009-07-02 19:47 |只看该作者
内核源代码中就有啊。

论坛徽章:
0
4 [报告]
发表于 2009-07-02 19:57 |只看该作者

回复 #3 Godbach 的帖子

回楼上,内核中是有,但是已加了很多其他的信息在里面(例如:消息机制等)。我希望有一个简单的代码,里面只有硬盘驱动所必须的代码,这样可以看清楚硬盘驱动到底做了什么。

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
5 [报告]
发表于 2009-07-02 20:07 |只看该作者
原帖由 ts0612 于 2009-7-2 19:57 发表
回楼上,内核中是有,但是已加了很多其他的信息在里面(例如:消息机制等)。我希望有一个简单的代码,里面只有硬盘驱动所必须的代码,这样可以看清楚硬盘驱动到底做了什么。


呵呵,哪有那么现成的东西呢。既然内核代码有,你可以测试一下能不能按照模块的方式进行编译。如果可以,就进一步把你认为多余的代码屏蔽掉,然后再做调试。

论坛徽章:
5
6 [报告]
发表于 2009-07-02 22:23 |只看该作者

回复 #4 ts0612 的帖子

最简单的硬盘驱动起码要做:
申请系统资源:内存/中断等
处理IO请求队列,解析命令
准备scatter/gather表,处理DMA
ISR or polling

论坛徽章:
0
7 [报告]
发表于 2009-07-02 22:49 |只看该作者
如果没看过LDD3的话,可以先看看那本书。里面的16章讲的是BLOCK DRIVERS

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
8 [报告]
发表于 2009-07-02 23:25 |只看该作者
原帖由 accessory 于 2009-7-2 22:49 发表
如果没看过LDD3的话,可以先看看那本书。里面的16章讲的是BLOCK DRIVERS


agreed!

论坛徽章:
0
9 [报告]
发表于 2009-07-03 00:03 |只看该作者

回复 #6 yidou 的帖子

yidou,

谢谢你的回复。

其实目前我在看于渊的书,发现书中可以实现通过键盘输入实现终端的输出。我当时就想,通过键盘“输入”ls指令,该如何实现将目录里的文件信息从终端上输出呢?

找了一些资料之后,发现应该:
1、制作格式化/分区程序
2、实现硬盘启动程序
3、实现文件系统

而文件系统应该经常跟硬盘(或者叫做块设备)打交道,因此想了解如何实现硬盘驱动程序。

或者换个角度说,我的目的就是:实现通过键盘“输入”ls指令将目录里的文件信息从终端上输出

各位,有什么好的点子?

论坛徽章:
0
10 [报告]
发表于 2009-07-03 02:35 |只看该作者
呵呵,你学学计算机组成原理,和系统结构就明白了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP