谁有兴趣来讨论一下硬盘分区的问题
登录 | 论坛导航 -> 华新鲜事 -> 技术の宅 | 本帖共有 12 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:百及子 (等级:5 - 略有小成,发帖:3259) 发表:2004-10-10 19:56:37  楼主  关注此帖
谁有兴趣来讨论一下硬盘分区的问题
首先, 我们知道硬盘物理结构上,有柱面,磁头,扇区,磁道等概念。
其次,我们知道柱面是从外向内按0,1,2...标序的,扇区是磁道等分的扇面,磁头的问题我还不很清楚,哪位讲讲?一般的两盘,单面20GB,共80GB的硬盘到底有多少磁头?按照一面一个的说法,只有4个啊,为什么要说有255个呢?如果像扫描仪的CCD光头那样排列,磁头根本不需要沿半径运动,那样的话根本不存在磁头刮擦盘面的问题了,可惜没有厂家这么做,看来工艺还达不到。
再次,0磁道,硬盘上最重要的地方,在盘面最外围,而着陆区,在盘中央,这样开机时,磁头由中央“飞”起,跨过盘面到达0柱面,找到0磁道;关机时,磁头由盘面上任一地方回到中央着陆区,安全关闭。
还有,硬盘分区,不允许跨柱面,也就是说两个连续分区不能共享某个柱面的储存区。并且,通过某些分区工具可以看出,CDEFG...盘是由外到内分布的。
最后,我想知道单硬盘工作环境,要划分一个逻辑盘做备份的话,这个逻辑盘放在哪里比较安全?服务器硬盘一般留出一半空间做备份,这个空间在硬盘的什么地方?内圈还是外圈?

好了,罗嗦了一大堆,可以看出,如果突然断电,又很不幸的话,磁头将由最外圈横扫整个硬盘盘面,最差时可以刮擦多个柱面甚至多个分区,从而造成数据丢失。

问题:如何使风险降到最低?我的一个粗浅的想法是,把操作系统和缓冲文件放到硬盘的最后一个或几个分区,也就是最靠近磁头着陆区的地方。因为通常硬盘的读写操作在系统盘和缓冲文件上,特别对做simulation一类的计算时,如果内存不够,那么硬盘缓冲文件的读写将是很频繁的;如果这时电源负荷过重关闭,或者突然停电,磁头来不及按照正常程序返回着陆区,就有可能刮擦磁盘。这时如果仅由最靠近着陆区的系统盘或缓冲文件区刮擦返回着陆区,那么顶多系统崩溃,不会央及其他在硬盘外圈的数据了。

我想知道我的理解是否正确?还有没有更好的保护硬盘数据的分区方法?或其他?


爱惜无俸禄 糟蹋有乾坤
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:百及子 (等级:5 - 略有小成,发帖:3259) 发表:2004-10-10 20:04:30  2楼
好些地方错了,请多多包涵
比如,第一句,应该是逻辑结构,而非物理结构
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:Wahoo (等级:5 - 略有小成,发帖:1528) 发表:2004-10-10 20:23:34  3楼
move from 疑难 to 软硬兼施
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:Kula (等级:8 - 融会贯通,发帖:22073) 发表:2004-10-10 20:47:29  4楼
use RAID 0+1
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:百及子 (等级:5 - 略有小成,发帖:3259) 发表:2004-10-10 20:50:19  5楼
当然
我贴的意思主要侧重于单硬盘的风险减小,如果多两个,备份了撤下来不更好嘛 嘿嘿
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:逃课专家 (等级:11 - 出神入化,发帖:3794) 发表:2004-10-10 20:55:18  6楼 评分:
磁头数~~
好像硬盘的扇区地址虽然有32bit,但实际用到的只有28bit,“丢失”的4bit就是在磁头数上,磁头数分配到的8bit只有4bit被利用到了,所以实际上最大磁头数是16


硬盘每扇区容量是512bytes,这样28bit扇区地址最大可提供 2^28 * 512 = 137438953472 bytes 的寻址能力,也就是时常提起的137GB clip


至于降低风险,看得出你对数据安全相当重视,最好的办法也许是配置一个硬盘作为数据缓冲区,或者使用RAID子系统
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:百及子 (等级:5 - 略有小成,发帖:3259) 发表:2004-10-10 22:50:19  7楼 评分:
磁头数~~好像硬盘的扇区地址虽然有32bit,但实际用到的只有28bit,“丢失”的4bit就是在磁头数上,磁头数分配到的8bit只有4bit被利用到了,所以实际上最大磁头数是16 硬盘每扇区容量是512bytes,这样28bit扇区地址最大可提供 2^28 * 512 = 137438953472 bytes 的寻址能力,也就是时常提起的137GB clip 至于降低风险,看得出你对数据安全相当重视,最好的办法也许是配置一个硬盘作为数据缓冲区,或者使用RAID子系统
这个有用
搞清楚了,谢谢专家;其实确实是一面一个磁头,而磁头数并不是磁头的数目,呵呵。

---------------------------------------------------------------------------------------------------------------------


现在的硬盘一般都支持逻辑块寻址(LBA)和柱面磁头扇区寻址(CHS),我们以CHS寻址方式来举例:数据传输的开始地址是写到4个8位寄存器里的,分别是:

柱面低位寄存器
  柱面高位寄存器
  扇区寄存器
  设备/磁头寄存器

因此,柱面地址是16位[柱面低位寄存器(8位),柱面高位寄存器(8位)]。扇区地址是8位(注意:扇区寄存器里第一个扇区是1扇区,而不是0扇区)。而磁头地址是4位(没有完全占用8位)。因此,硬盘柱面的最大数是65,536(2的16次方),磁头的最大数是16(2的4次方),扇区的最大数是255(2的8次方-1,注意刚刚我们提到的扇区寄存器问题)。所以,能寻址的最大扇区数是267,386,880 (65,536x16x255)。一扇区又是512字节,也就是说如果以CHS寻址方式,IDE硬盘的最大容量为136.9GB。LBA寻址方式,上述的总共28位可用的寄存器空间(16+8+4)被看作一个完整的LBA地址,因为包括位0(CHS里扇区不能从0开始计算),其能寻址的扇区数是268,435,456 (65,536x16x256),这时IDE硬盘的最大容量为137.4GB。

INT 13管理:INT 13管理其实也是按照寄存器的模式来设计的,它的高层即文件管理器层发布数据读写命令和有关的参数给CPU,然后触发INT 13中断的进行,激活BIOS的磁盘服务来执行数据传输。数据的开始地址被写到3个8位寄存器里,分别是:

柱面低位寄存器
  柱面高位/扇区寄存器
  磁头寄存器

柱面地址是10位(柱面低位寄存器占用8位、柱面高位寄存器占用2位),扇区地址为6位(8位-已经被计算过的高位寄存器的2位)。磁头寄存器为8位。因此如果这样的话:柱面的最大数是1024(2的10次方) ,磁头的最大数是256(2的8次方),扇区的最大数是63(2的6次方-1)。所以,通过INT 13管理能寻址的扇区数是16,515,072 (1,024x256x63)。一扇区是512字节,也就是说如果以CHS寻址方式,IDE硬盘的最大容量为8.456GB。LBA寻址方式能寻址的扇区数是16,777,216(1024x256x64),这时IDE硬盘的最大容量为8.601GB。


出处:http://www.qingdaochina.org/etime/computer/harddisk3.htm
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:Kula (等级:8 - 融会贯通,发帖:22073) 发表:2004-10-10 23:41:11  8楼 评分:
当然我贴的意思主要侧重于单硬盘的风险减小,如果多两个,备份了撤下来不更好嘛 嘿嘿
单硬盘小风险是个问题
可以单分一块逻辑区用来备份,(把它分到一个单独的盘面上,要自己算开始的Cylinder),一般硬盘物理损坏都是坏在0磁道/开始的磁道,剩下的数据有办法救回来。

或者用软RAID 1,听说还不错,空间小一半就是了。
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:SmellsLikeTeenSpirit (等级:11 - 出神入化,发帖:6371) 发表:2004-10-10 23:49:11  9楼
这个有用搞清楚了,谢谢专家;其实确实是一面一个磁头,而磁头数并不是磁头的数目,呵呵。 --------------------------------------------------------------------------------------------------------------------- 现在的硬盘一般都支持逻辑块寻址(LBA)和柱面磁头扇区寻址(CHS),我们以CHS寻址方式来举例:数据传输的开始地址是写到4个8位寄存器里的,分别是: 柱面低位寄存器   柱面高位寄存器   扇区寄存器   设备/磁头寄存器 因此,柱面地址是16位[柱面低位寄存器(8位),柱面高位寄存器(8位)]。扇区地址是8位(注意:扇区寄存器里第一个扇区是1扇区,而不是0扇区)。而磁头地址是4位(没有完全占用8位)。因此,硬盘柱面的最大数是65,536(2的16次方),磁头的最大数是16(2的4次方),扇区的最大数是255(2的8次方-1,注意刚刚我们提到的扇区寄存器问题)。所以,能寻址的最大扇区数是267,386,880 (65,536x16x255)。一扇区又是512字节,也就是说如果以CHS寻址方式,IDE硬盘的最大容量为136.9GB。LBA寻址方式,上述的总共28位可用的寄存器空间(16+8+4)被看作一个完整的LBA地址,因为包括位0(CHS里扇区不能从0开始计算),其能寻址的扇区数是268,435,456 (65,536x16x256),这时IDE (more...)
看得都快晕了.... =_=
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:香陵居士 (等级:16 - 好恐怖呀,发帖:22662) 发表:2004-10-11 09:41:21  10楼
当然我贴的意思主要侧重于单硬盘的风险减小,如果多两个,备份了撤下来不更好嘛 嘿嘿
Buy a good harddisk lor... :P
Those server HDD have MTBF about 10 times longer than the desktop HDD...
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:香陵居士 (等级:16 - 好恐怖呀,发帖:22662) 发表:2004-10-11 09:46:24  11楼
单硬盘小风险是个问题可以单分一块逻辑区用来备份,(把它分到一个单独的盘面上,要自己算开始的Cylinder),一般硬盘物理损坏都是坏在0磁道/开始的磁道,剩下的数据有办法救回来。 或者用软RAID 1,听说还不错,空间小一半就是了。
Can use soft RAID5 also
Or similar mechanism like Solaris, backup super blocks "everywhere" on the disk.
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:Flying (等级:18 - 华新水车,发帖:16849) 发表:2004-10-15 04:28:52  12楼
Not so scary lah.
Even there is sudden power shutdown, modern HDDs can safely park the head one.

I usually designate a special swap partition (of course true for Linux, but I do so for Windows too, leave a minimum 64 MB fixed swap on C:, then the remaining to the oldest HDD in my system in a stand-alone partition).
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
论坛导航 -> 华新鲜事 -> 技术の宅 | 返回上一页 | 本主题共有 12 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码