当前位置:首页 » 硬盘大全 » c硬盘信息
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c硬盘信息

发布时间: 2022-12-28 05:49:39

⑴ linux下怎么用c获取硬盘物理序列号

1、在Linux系统中通过C语言获取硬盘序列号,可以借助于ioctl()函数,该函数原型如下:

intioctl(intfd,unsignedlongrequest,...);
ioctl的第一个参数是文件标识符,用open()函数打开设备时获取。
ioctl第二个参数为用于获得指定文件描述符的标志号,获取硬盘序列号,一般指明为HDIO_GET_IDENTITY。
ioctl的第三个参数为一些辅助参数,要获取硬盘序列号,需要借助于structhd_driveid结构体来保存硬盘信息,该结构体在Linux/hdreg.h中,structhd_driveid的声明如下
structhd_driveid{
unsignedshortconfig;/lotsofobsoletebitflags*/
unsignedshortcyls;/*Obsolete,"physical"cyls*/
unsignedshortreserved2;/*reserved(word2)*/
unsignedshortheads;/*Obsolete,"physical"heads*/
unsignedshorttrack_bytes;/*unformattedbytespertrack*/
unsignedshortsector_bytes;/*unformattedbytespersector*/
unsignedshortsectors;/*Obsolete,"physical"sectorspertrack*/
unsignedshortvendor0;/*vendorunique*/
unsignedshortvendor1;/*vendorunique*/
unsignedshortvendor2;/*Retiredvendorunique*/
unsignedcharserial_no[20];/*0=not_specified*/
unsignedshortbuf_type;/*Retired*/
unsignedshortbuf_size;/*Retired,512byteincrements
*0=not_specified
*/
……
};


2、源代码如下

#include<stdio.h>
//ioctl()的声明头文件
#include<sys/ioctl.h>
//硬盘参数头文件,hd_driveid结构声明头文件
#include<linux/hdreg.h>
//文件控制头文件
#include<sys/fcntl.h>
intmain()
{
//用于保存系统返回的硬盘数据信息
structhd_driveidid;
//这里以第一块硬盘为例,用户可自行修改
//用open函数打开获取文件标识符,类似于windows下的句柄
intfd=open("/dev/sda",O_RDONLY|O_NONBLOCK);
//失败返回
if(fd<0){
perror("/dev/sda");
return1;}
//调用ioctl()
if(!ioctl(fd,HDIO_GET_IDENTITY,&id))
{
printf("SerialNumber=%s ",id.serial_no);
}
return0;
}

编译完成后,执行效果如下:

⑵ C语言 获取硬盘物理号

获取的大多数是磁盘序列号而已
物理号不容易获取
可以参考下
http://hiker2008.blog.51cto.com/10867/77918
就于逻辑序列号而言
我把VB改写成C的,可以参考下:
#include
#include
main()
{
DWORD
VolumeSerialNumber;
char
VolumeName[256];
GetVolumeInformation(
"c:\\
",
VolumeName,12,
&VolumeSerialNumber,
NULL,NULL,NULL,10
);
printf("c盘的卷标:%s
\n",VolumeName);
printf("c盘的序列号:%ld
\n",VolumeSerialNumber);
}

⑶ 硬盘的参数基础知识大全

硬盘是电脑缺一不可的硬件之一,在电脑中起着存储的作用。目前 DIY 装机在选购的硬盘时候,一般固态硬盘是目前装机首选,而机械硬盘多数作为存储盘使用。下面就让我带你去看看硬盘的参数 知识大全 吧,希望能帮助到大家!

硬盘的接口类型

硬盘按数据接口不同,大致分为ATA(IDE)和SATA以及SCSI和SAS。接口速度不是实际硬盘数据传输的速度,目前非基于闪存技术的硬盘数据实际传输速度一般不会超过300MB/s。

1.IDE硬盘接口

IDE的英文全称为“Integrated Drive Electronics”。 IDE接口,也称之为ATA接口,即“电子集成驱动器”,,是用传统的 40-pin 并口数据线连接主板与硬盘的,接口速度最大为133MB/s,因为并口线的抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被 SATA 所取代。

2.SATA硬盘接口

SATA,全称Serial ATA,也就是使用串口的ATA接口,因抗干扰性强,且对数据线的长度要求比ATA低很多,支持热插拔等功能,SATA-II的接口速度为375MB/s,而新的SATA-III标准可达到750MB/s的传输速度。SATA的数据线也比ATA的细得多,有利于机箱内的空气流通,整理线材也比较方便。

3.SCSI硬盘接口

SCSI,全称是Small Computer System Interface(小型机系统接口),经历多代的发展,从早期的 SCSI-II,到目前的 Ultra320 SCSI 以及 Fiber-Channel (光纤通道),接口型式也多种多样。SCSI 硬盘广为工作站级个人电脑以及服务器所使用,因此会使用较为先进的技术,如盘片转速15000rpm的高转速,且资料传输时CPU占用率较低,但是单价也比相同容量的 ATA 及 SATA 硬盘更加昂贵。

4.SAS硬盘接口

SAS(Serial Attached SCSI)是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到6Gb/s。此外也透过缩小连接线改善系统内部空间等。

此外,由于SAS硬盘可以与SATA硬盘共享同样的背板,因此在同一个SAS存储系统中,可以用SATA硬盘来取代部分昂贵的SAS硬盘,节省整体的存储成本。但SATA存储系统并不能连接SAS硬盘。

5.USB硬盘接口

常见于移动硬盘中,如图为usb3.0的接口。

6.ZIF硬盘接口

ZIF接口硬盘是Imprimis公司推出Wren系列5.25英寸硬盘(当时Compaq PC机所使用的 硬盘)专用的“PCAT”接口,后来的3.5英寸硬盘也采用这项规格,ZIF: 零中频;零插入力;ZIF硬盘符合并口接口规范。 PATA标准规范产生于上个世纪80年代中期,1989年 希捷并购了“Imprimis科技-大容量硬盘和部件”公司。 A__D ZIF接口硬盘ZIF接口机械硬盘基本上已经消失了,取而代之的是速度更快、更稳定、性能更好的ZIF电子硬盘, 兼容IDE 传输接口。ZIF接口电子盘是具备高效能,高稳定度的快速记忆体储存媒体元件, 为时下效能成本比最优异的记忆体储存媒体解决方案。

7.CF硬盘接口

CF(Compact Flash)接口主要应用在移动等小型设备里面,CF接口遵循ATA标准制造,不过它的接口是50针而不是68针,分成两排,每排25个针脚。

8.CE硬盘接口

CE接口是东芝公司出的1.8寸硬盘接口,与CF接口类似。

9.光纤硬盘接口

FC(Fibre Channel,光纤通道接口),拥有此接口的硬盘在使用光纤联接时具有热插拔性、高速带宽(4Gb/s或10Gb/s)、远程连接等特点;内部传输速率也比普通硬盘更高。限制于其高昂的售价, 通常用于高端服务器领域。

选购机械硬盘需要注意什么参数?

机械硬盘

1、按需选择适合的容量

选购机械机械硬盘机械硬盘,首先要考虑的就是容量的大小,它直接决定了用户使用存储空间的大小,所以在机械硬盘的容量选择上主要看用途而定。如今,1TB机械硬盘已经是主流首选,如果存储量大,可以按需搭配适合自己的容量,例如2T、3T、4T等。

对于主流用户来说,在众多机械硬盘容量中,目前性价比最高的机械硬盘容量是1TB和2TB,也是最佳之选。

2、机械硬盘转速

机械硬盘转速以每分钟多少转来表示的,单位表示为RPM,RPM是Revolutions Perminute的缩写,转/每分钟。RPM值越大,那么内部传输率就越快,访问时间就越短,机械硬盘的整体性能也就越好。机械硬盘的转速越高,机械硬盘的寻道时间就越短,数据传输率就越高,机械硬盘的性能就越好。目前市面上的机械硬盘主流转速为7200RPM。

机械硬盘的转速指的是内部电机主轴的旋转速度,也就是机械硬盘盘片在一分钟内所完成的最大转速,而转速的快慢是决定机械硬盘的速度重要参数之一,它是决定机械硬盘内部传输率的关键因素之一,直接影响到机械硬盘的速度,机械硬盘转速越快,则读写速度越快,不过发热量也随之增加。

机械硬盘转速的不同,性能差别主要在随机读取/写入寻道时间的性能上。随机寻道性能这个参数的数值是越低越好,也是日常机械硬盘应用在速度上最能直接体验的一个性能。无论是Windows系统启动、大量零碎文件的读写、各种软件的启动时间等等,都和随机读取/写入时间有着直接的关系。这是CPU、内存性能再高都无法改变的,所以不少用户开始选择固态硬盘。

3、机械硬盘缓存大小

除了转速影响机械硬盘的速度以外,机械硬盘的缓存大小也是影响速度的重要参数,机械硬盘存取零碎数据的时候需要不断的在硬盘与内存之间交换数据,如果机械硬盘具备大缓存,可以将零碎数据暂时存储在缓存中,减小对系统的负荷,也能够提升数据传输速度。

目前的市场中的主流1T、2T、3T容量的机械硬盘一般缓存容量为64MB,不过还是有一些低容量的机械硬盘为32MB,比如500GB的,而一些大容量的机械硬盘达到了256MB,例如4T机械硬盘,缓存越大,速度越快。

4、单碟容量越大性能越高

在日常的应用中,机械硬盘的性能好坏的区别能够直接感受到的,除了寻道性能就是持续传输速率,它们性能表现在不同的的应用上也作用各不相同。在说明持续传输速率之前,先要说一下和它性能表现有密切关系的——单碟容量。

垂直记录技术出现之前,机械硬盘盘片的容量和性能到达了一个瓶颈,直到2006年采用垂直记录技术的机械硬盘产品开始量产,这个瓶颈才得到缓解。

目前,主流机械硬盘的单碟容量,单盘片容量越大,机械硬盘可储存的数据就越多。传统机械硬盘主要由磁盘和磁头组成,由于体积的限制,每个机械硬盘腔体所能安放的盘片也有限。要在有限的盘片里增大机械硬盘的容量,就只能靠提升盘片的存储密度。通过垂直记录技术,不但盘片的容量提到了一个新高度。与此同时,由于盘片数据密度的增加,机械硬盘的持续传输速率也获得了质的提升。

由于采用了磁道密度更高、单碟容量更大的盘片,在软件测试上的平均持续传输速率获得了超过25%的性能提升。而最能体验这种性能提升的应用就是机械硬盘间的大体积文件拷贝。像一些光盘镜像、高清视频文件,在两个机械硬盘之间对拷时,这25%的性能提升就意味着可以比原来节省了1/4的等待时间,大大提高了效率。

5、机械硬盘接口类型

机械硬盘的接口与主板连接的部件,作用时是机械硬盘缓存与内存之间的传输数据。机械硬盘的接口决定了与电脑的连接速度。

目前的机械硬盘主流接口是sata3类型的,老接口还有IDE、sata1、sata2,目前新款机械硬盘都是SATA3接口的。一般来说,无论是sata1、sata2还是sata3接口,都可以相互兼容,SATA1、SATA2、SATA3外观上是没区别的,接口外观相同,线也相同,主要是传输速率不一样,控制芯片不一样。

SATA1.0:理论传输速度为1.5Gbit/s

SATA2.0:理论传输速度为3Gbit/s

SATA3.0:理论传输速度为6Gbit/s

此外,IDE接口属于老式的硬盘接口,IDE是接口理论传输速度为100或166MB/S,传输速度较慢,因此已被淘汰,目前的主板都不支持IDE。

总结 :

以上就是装机之家分享的机械硬盘选购知识,我们在选购机械硬盘的时候除了需要关心容量方面,还需要注意一下缓存和转速的,它决定了传输速度。至于机械硬盘品牌方面,我们优先选用希捷与西部数据两大品牌。

电脑硬盘错误以及处理 方法

第一个:系统不承认硬盘

首先讲一种常见的故障问题,就是硬盘无法启动,从a盘启动不可以进入c盘,用cmos中的自动监测功能也不可以发现硬盘的存在.这种故障都会出现在连接电缆或ide口端口上,硬盘本身的故障率是很少的,重新插拔硬盘电缆或者改换ide口及电缆等进行替换试验,会很快发现故障的所在.新接上的硬盘不承认,还有一种原因就是硬盘上的主从条线,如果硬盘接在ide的主盘位置,那硬盘必须跳为主盘状,跳线错误一般无法检测到硬盘.

第二个:主引导程序引起的启动故障

接下来我们说第二种问题,硬盘的主引导扇区是硬盘中的最为敏感的一个部件,里面主引导程序是它的一部分,主要用于检测硬盘分区的正确性,并确定活动分区,负责把引导权移交给活动分区的dos或其他 操作系统 .这个程序损坏将无法从硬盘引导,但是从软区或光区之后可对硬盘进行读写.修复方法也很简单,用高版本dos的fdisk最为方便,当带参数/mbr运行时,会直接更换(重写)硬盘的主引导程序.实际上硬盘的主引导扇区正是此程序建立的,fdisk.e__e之中包含有完整的硬盘主引导程序.虽然dos版本不断更新,但硬盘的主引导程序一直没有变化,从dos 3.__到目前有windos 95的dos,所以只要找到一种dos引导盘启动系统并运行此程序就可以修复了.此外,像kv300等其他工具软件也有此功能.

第三个:cmos引起的故障

cmos引起的故障主要是指硬盘类型.现在的机器都可自动检测硬盘的类型.连接新的硬盘或者更换新的硬盘都要通过此功能重新进行设置类型.当然,现在有些类型的主板能自动识别硬盘的类型.如果硬盘类型错误,严重的就是 不能启动 系统,但有时是能够启动的,也会发生读写错误.比如cmos中的硬盘类型小于实际的硬盘容量,则硬盘后面的扇区将无法读写.如果是多分区状态则个别分区将丢失,那还有一种原因,由于目前的ide都支持逻辑参数类型,硬盘可采用normal,lba, large等.如果在一般的模式下安装了数据,而又在cmos中改为其他的模式,则会发生硬盘的读写错误故障,因为其物理地质的映射关系已经改变,所以不能读取原来的正确硬盘位置.

第四个:分区表错误引导的启动故障

分区表错误的故障严重程度是不同的,如果是没有活动分区标志,计算机就不能启动.但从软区或光区引导系统后可对硬盘读写,可通过fdisk重置活动分区进行修复.如果是某一分区类型错误,可造成某一分区的丢失.分区表的第四个字节为分区类型值,正常的可引导的大于32mb的基本dos分区值为06,而扩展的dos分区值是05.如果把基本dos分区类型改为05则无法启动系统, 而且就不能读写其中的数据.如果把06改为dos不识别的类型如efh,则dos认为改分区不是 dos分区,就不能读写.很多人会利用此类型值实现单个分区的加密技术,恢复原来的正确类型值即可使该分区恢复正常.分区表中还有其他数据用于纪录分区的起始或终止地址.这些数据的损坏会造成该分区的混乱或丢失,是不能进行手工恢复的,唯一的方法就是用备份的分区表数据重新写回,或者从其他的相同类型的并且分区状况相同的硬盘上获取分区表数据,否则将导致其他的数据永久的丢失.在对主引导扇区进行操作时,可采用nu等工具软件,操作非常的方便,可直接对硬盘主引导扇区进行读写或编辑.也可以采用debug进行操作,要注意的是不仅操作繁琐而且这是有风险的.

第五个:dos引导系统引起的启动故障

dos引导系统主要由dos引导扇区和dos系统文件组成.系统文件主要包括io.sys, msdos.sys,command.com,而command.com是dos引导系统的外壳文件,用其他的文件替换也是可行的.缺省状态下是dos启动的必备文件,在windows 95携带的dos 系统中,msdos.sys是一个文本文件,是启动windows必须的文件.但只启动dos时可不用此文件.当dos引导出错时,可从软盘或光盘引导系统,再用sys c:传送系统即可修复故障,包括引导扇区及系统文件都能自动修复到正常状态.

第六个:分区有效标志错误引起的 硬盘故障

硬盘中有一个重要的问题就是其最后的两个字节:55aah,此字为扇区的有效标志.当从硬盘,软盘或光区启动时,将检测这两个字节,如果存在则认为有硬盘存在,否则将不承认硬盘.这个标志从硬盘启动将转入rom basic或提示放入软盘.从软盘启动时无法转入硬盘.此处可用于整个硬盘的加密技术.可采用debug方法进行恢复处理.此外,dos引导扇区仍有这样的标志存在,当dos引导扇区无引导标志时,系统启动将显示为:"missing operating system".其修复的方法可采用的主引导扇区修复方法,只是地址不同,更方便的方法是使用下面的dos系统通用的修复方法.

第七个:fat表引起的读写故障

fat表有存储数据地址的作用,里面每一个文件都有一组连接的fat链指定其存放的簇地址.fat表的损坏意味着数据的丢失.庆幸的是dos系统本身提供了两个fat表,如果目前使用的fat表损坏,可用第二个进行覆盖修复.但由于不同规格的磁盘其 fat表的长度及第二个fat表的地址也是不固定的,所以修复时必须正确查找其正确位置,因为一些工具软件如nu等本身具有这样的修复功能,所以用起来也非常方便.采用debug也可实现这种操作,即采用其m命令把第二个fat表移到第一个表处.如果第二个fat表也损坏了,则也无法把硬盘恢复到原来的状态,但文件的数据仍然存放在硬盘的数据区中,可采用chkdsk或scandisk命令进行修复,最终得到__.chk文件,丢失fat链的扇区数据就在这里.如果是文本文件则可从中提取并可合并完整的文件,如果是二进制的数据文件,就很难恢复出完整的文件.

第八个:目录表损坏引起的引导故障

目录表是记录硬盘中文件的文件名等数据的地方,里面最重要的一项就是这个文件的起始簇号,目录表没有自动备份的功能,如果目录损坏就会丢失大量的文件.解决方法是采用上面的chkdsk或scandisk程序的方法,从硬盘中搜索出chk文件,因为目录表损坏时是首簇号丢失,所以在fat为损坏的情况下所形成的chk文件一般都比较完整的文件数据,每一个chk文件都是一个完整的文件,只要把其改为原来的名字可恢复大多数文件.

第九个:格式化硬盘数据的恢复

通常在dos高版本状态下,格式化操作format在缺省状态下都建立了用于恢复格式化的磁盘信息,实际上是把磁盘的dos引导扇区,由于后面的扇区很少使用,所以fat分区表及目录表的所有内容复制到了磁盘的最后几个扇区中,但是数据区中的内容不会改变.这样通过运行;即可恢复原来的文件分配表及目录表,从而完成硬盘信息的恢复.另外dos还提供了一个miror命令用于纪录当前的磁盘的信息,为格式化或删除之后的恢复使用,这种方法还是很有用的.

第十个:误删分区时数据的恢复

误删分区时,数据表面现象是硬盘中的数据已经完全消失,在没有格式化时进入硬盘会显示无效驱动器.fdisk只是重新改写了硬盘的主引导扇区(0面0道1扇区)中的内容,这是它工作原理的体现.具体的来说就是删除了硬盘分区表信息,但是硬盘中的任何分区的数据都不会改变,这时可以按照上面分区表错误的修复方法,想办法恢复分区表数据就可以恢复原来的分区即数据,但是只限于除分区或重建分区之后.如果分区已经用format格式化,必须要先恢复分区,才能继续恢复分区数据.


硬盘的参数基础知识大全相关 文章 :

★ 2019超详细电脑硬件及电脑配置知识大全讲解

★ 计算机硬件基础知识学习

★ 电脑入门基本知识大全

★ 计算机常识及技巧大全

★ 电脑硬件有哪些高配置

★ 电脑入门基本知识有哪些

★ 毕业论文调查报告范文3篇

★ 互联网年度工作总结范文大全

★ 磁盘碎片基础知识大全

★ 毕业论文调查报告范文3篇