PCI && PCIe (Peripheral Component Interconnect,PCI)外设部件互联标准。...(Peripheral Component Interconnect Express,PCIe)高速串行计算机扩展总线标准,旨在替代旧的 PCI。主要优势是数据传输速率高。...mSATA 标准出现,利用 Mini PCIe 接口传 SATA 信号。 SATA 作为目前应用最多的硬盘接口,SATA 接口最大的优势就是成熟。...SATA 接口的版本是向下兼容的,高版本的 SATA 接口兼容低版本的 SATA 接口。...SATA 数据 位置。
这款转接板还可以用做msata接口转ngff sata ssd固态盘,一样的转接安装方法,只是转ngff sata ssd的就这只能安装到msata接口上。...安装了nvme固态盘或者ngff sata ssd固态盘后,几乎会关心一个问题,能不能做系统盘?
pcibios_init x86 BIOS专门提供了针对PCI总线的操作,这些操作里就包括了总线枚举的整个过程,Linux kernel中的宏CONFIG_PCI_BIOS。...在系统加电以后自检时,就会完成对PCI总线的枚举,之后Linux对PCI配置空间的访问都是通过BIOS调用的形式进行,提供有这些功能和服务的BIOS就称之为PCI BIOS 。...需要注意的是Linux x86_64是不采用PCI BIOS访问PCI配置空间的,而是内核实现了直接访问PCI配置空间的函数(CONFIG_PCI_DIRECT)。...所以Linux x86驱动程序中pci_read_config_byte()最终调用的是pci_bios_read_config_byte()。...Android libpci库 external/pciutils 5.2 libpci判断一个PCI设备是不是PCIe capability ID参考:include/uapi/linux/pci_regs.h
PCI总线常见于x86体系,本文默认面向的体系为x86,注意x86架构下IO与内存是独立编址的。 附: 本文默认读者熟悉Linux设备驱动模型,不熟悉的可以先阅读这两篇blog。...Linux驱动之I2C子系统剖析 Linux驱动之SPI子系统剖析 PCI寻址 PCI系统总体布局组织为树状,从CPU连接的Host Bridge引出PCI主桥,主桥连接的是PCI总线0,可以直接连接PCI...设备,或者再挂上PCI桥引出下一级PCI总线。...Linux内核启动时会从PCI设备的配置寄存器里读取内存/IO起始地址以及irq,并把这些信息赋值给struct pci_dev的相应成员来生成软件描述的PCI设备。...当linux系统启动时,会探测系统中的所有PCI设备,并为探测到的每个PCI设备做如下操作: 1.分配一个struct pci_dev结构体,用来表示相应的PCI设备 2.为这个结构体填充设备vendor
https://blog.csdn.net/xuzhina/article/details/43969499 有的时候,开发时需要用到设备的pci ID,如用dpdk来绑定某个网卡,需要用网卡的...pci ID。...下面有一些方法是可以获取pci ID的。 1.使用lspci命令。...可以看到以太网卡的PCI ID是02:01.0 但有时候在一些嵌入式的系统里,lspci命令并不是由pciutils提供,而是由其它软件包提供,或者是修改过,输出结果可能如下: ?...Intel(R) PRO/1000 Network Connection 也可以看到以太网卡的PCI ID是02:01.0 这种方法无论是在通用的发行版或是定制的嵌入式系统,都适用。
新一代的固态硬盘普遍采用SATA-2接口、SATA-3接口、SAS接口、MSATA接口、PCI-E接口、NGFF接口、CFast接口、SFF-8639接口和M.2 NVME/SATA协议。...可以把它看作标准SATA接口的mini版,而在物理接口上(也就是接口类型)是跟mini PCI-E接口是一样的。...NVMe(图片来自网络) NVMe标准的出现解决了不同PCIe SSD之间的驱动适用性问题,NVMe SSD可以很方便的匹配不同的平台、系统,无需厂家提供相应的驱动就可以正常工作,目前Windows、Linux...简单的说,我们可以把两种通道理解成两辆相同的汽车,PCI-E通道的汽车就像是在高速上行驶,而SATA通道的汽车就像是在崎岖山路上行驶。很显然,PCI-E SSD传输速度远远大于SATA SSD。...虽然PCI-E SSD有诸多好处,但也不是每个人都适合。PCI-E SSD由于闪存颗粒和主控品质问题,总体成本较高,相比传统SATA固态硬盘价格贵一些。
这些数据的确切意义没有在此手册页中解释,如果你想知道更多,请参照 /usr/include/linux/pci.h 或者 PCI 规范。...-m 以机器可读的方式转储 PCI 设备数据 (支持两种模式:普通和冗余),便於稿本解析。 -M 使用总线映射模式,这种模式对总线进行全面地扫描以查明总线上的所有设备,包括配置错误的桥之后的设备。...-P 使用 linux 2.1 风格的配置,直接访问目录 而非 /proc/bus/pci 目录。...Family) SMBus Controller (rev 02) 00:1f.5 IDE interface: Intel Corporation 82801I (ICH9 Family) 2 port SATA...:所有已知 PCI ID 的清单 (厂商,设备名,类,子类) /proc/bus/pci:linux 2.1.82 之后版本核心提供的 PCI 总线配置空间的接口。
PCI-E技术发展 PCI-E1.0:速率 250MB/s PCI-E2.0:速率 500MB/s PCI-E3.0:速率1GB/s 硬盘技术 常见硬盘参数 主轴转速 SATA/NL SAS7200 SAS...目前一般的硬盘转速为5400转/分和7200转/分 最高的转速则可达到10000转/分以上。.../s SATA2.0 3Gb/s SATA3.0 6Gb/s ?...SATA 连线接口 ?...常见的热插拔设备:硬盘,电源,PCI设备,风扇等。
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
PCI-E 跟 SATA3 简单说就是数据走的“路”。PCI-E 就像是特别宽大的路,数据可以走的特别快,而 SATA3 与之相比更像是一条崎岖的小路,数据走的特别慢。...但是CPU内部就那么大一点,修不了特别多的大路,所以PCI-E通道也就仅有那么几条。 通常 SATA 的插槽只能走 SATA3 的通道。...M.2(Socket 2)的固态可以走 SATA3 或者 PCI-E 3.0×2 通道(就是两条PCI-E),而 M.2(Socket 3)的固态则可以走 PCI-E 3.0×4 通道。...需要说的是每条 PCI-E 3.0 的带宽是 8Gbps,而 SATA 3.0 的带宽则只有 6Gbps。 最后要说的就是经常被商家拿来当作卖点的 NVMe 了。...总结:M.2 跟 SATA 其实可以说是插槽的形状,而 PCI-E 跟 SATA3 就是数据从硬盘到 CPU 或者内存走的通道,而 NVME 跟 AHCI 就是针对 PCI-E 跟 SATA 通道的“交通规则
机械硬盘最快的当属15000转/分的scsi接口磁盘,理论读写220MB/S。 固态硬盘:新型硬盘,采用电信号存储,速度更快,深受广大计算机用户的喜爱。...目前固态硬盘容量相对较小,价格较贵,还没有深度普及 固态硬盘有sata固态、m.2固态、pci-e固态三种 而m.2固态又有nvme的m.2和sata的m.2两种 目前不同厂家的固态硬盘读写速度不同,最快的...nvme.m2 告诉SSD磁盘理论读写速度为3400MB/S 磁盘类型:按接口分类:IDE、scsi、sata、sas ?
PCI-E供电接口主要提供12V供电,其中PCI-E6Pin供电有2组12V供电,而PC-E62Pin则有3组12V供电,一般而言每组能承担8A供电,因此PCI-E6Pin供电的最大输出功率为192,而...PCI-E62Pin的有288W。...优势: PCI-E的最大优势是总线结构简单、成本低、设计简单; SATA优势是非常成熟,主控具备了强大的纠错能力,与PATA相比其最大的区别在于能对传输指令进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性...CMR磁盘普遍是7200转,而到了叠瓦盘则变成了5400转,因为叠瓦盘数据密度变大,转速务必要降低,而转速直接影响读写速度,所以即便数据密度变大了由于转速的降低使其读写性能不增反降。...怎么避免买到SMR瓦楞式堆叠磁盘 至于怎么分辨SMR也很简单,选购机械硬盘的时候尽量选择7200转64MB缓存的,不要选5400转256缓存的就可以了。
因此显卡的规格由早期的PCI导向AGP,近期AGP又被PCI-Express规格所取代了。这些插槽最大的差异是在数据传输的带宽!如下所示: ? ...当盘片转一圈时,外圈的扇区数量比较多,因此如果数据写入在外圈,转一圈能够读写的数据量比内圈要多!因此通常数据的读写会由外往内写!这是默认值! ...因为SATA传输接口传输时,通过的数据演算法的关系,当传输10位编码时,仅有 8位为数据,其余2位为检验之用。因此带宽的计算上面,使用的换算(bit转Byte)为1:10而不是1Byte=8bits!...主流的台式机硬盘为每分钟7200转,笔记本电脑则是5400转。有的厂商也有推出高达10000转的硬盘,若有高性能的数据存取需求,可以考虑购买高转速硬盘。...举例来说,如果需要一部个人电脑连接多个网域时(Linux服务器用途),恐怕就得要有多个网卡。当你想要买网卡时,大卖场上面有好多!而且速度一样都是giga网卡(Gbit/s),但价格差很多!
lscpu运行该命令会看到下面输出:lspcilspci是另一个命令行工具,可以用来列出所有的 PCI 总线,还有与 PCI 总线相连的设备的详细信息,比如 VGA 适配器、显卡、网络适配器、usb 端口...、SATA 控制器等。...lshw -short通过运行上面的命令可以看到下面的信息:lsscsi通过运行下面的命令可以列出像硬盘和光驱等 scsi/sata 设备的信息:lsscsi会得到类似下面的输出:lsusblsusb命令能够列出...Hdparmhdparm命令可以用来显示像硬盘这样的 sata 设备的信息。sudo hdparm可以看到下面的输出:总结每个命令都有不同的方式来获取硬件的信息。...上面所有的命令行工具在大部分的 Linux 发行版本中都是可以使用的,可以很容易的从仓库中获取安装。
PCI-E 支持情况 除了核数,你还需要注意 PCI-E 支持情况,一般显卡是 PCI-E 3.0 x16,比如 i9-9820X 的 PCI-E 通道数是 44 ,配置四卡的话,只能支持 1x16+3x8...---- 主板 主板需要注意: CPU 接口是否能对上,如LGA2066 和 SocketTR4 PCI-E 插槽的高度是否够插显卡,比如 PCI-E 插口之间的距离至少要满足双槽宽显卡的高度 PCI-E...www.supermicro.org.cn/support/resources/gpu/ https://www.geforce.com/drivers/license/geforce ---- 硬盘 硬盘类型 常用硬盘接口有三种: SATA3.0...注: 4K 随机读写的队列深度为 32 SATA3 机械硬盘没有太好的数据来源,所以数据是经验值 SATA3 固态硬盘数据来源:三星(SAMSUNG)1TB SSD固态硬盘 SATA3.0接口 860...一般墙上的插座只支持 220V 10A,也就是 2200W 的交流电,由于电源要把交流电转直流电,所以会有一些损耗,最高只有1600W,因此如果想要支持八卡,最好不要在家尝试。
SATA接口走的的SATA的通道和AHCI协议,读取速度上限是500MB/s M.2接口支持SATA通道和PCI-e通道,PCI-e通道支持AHCI协议和NVMe协议。...不同的 妙喻接口&协议 把磁盘上的数据比喻为东西,需要搬运到目的地CPU.其中经过SATA接口或者M.2接口这个大门(SATA接口大门长和宽是1m*1m和M.2接口大门长宽是2m*2m),SATA总线或者...PCI-e总线比喻为进入大门后的路,这个路上是能跑自行车(AHCI协议)还是跑车NVMe协议。...如下是SSD磁盘不同接口和不同协议的读写的理论上限 物理接口 总线类型 协议 读写速度 SATA SATA AHCI 理论上限500MB/s M.2 SATA AHCI 理论上限500MB/s M.2...PCI-e NVMe 理论上限3200MB/s
由于实在找不到MSI-X在x86上实现的教程或文档,只能分析Linux的PCI驱动程序了。希望能得到一些启发。...本文基于linux 5.17.5进行分析 __pci_enable_msix_range static int __pci_enable_msix_range(struct pci_dev *dev,...该函数原型如下: int pci_msi_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) 该函数首先获取msi的domain,校验是否为继承的...(我还不明白这里是干啥意思的) 然后就会去调用pci_msi_legacy_setup_msi_irqs函数,去设置msix。...pci_msi_legacy_setup_msi_irqs 该函数的作用很简单:调用arch_setup_msi_irqs方法,去设置msi,然后通过pci_msi_setup_check_result
此外,M.2接口可以同时支持SATA及PCI-E通道,后者更容易提高带宽,如果是采用SATA通道的M.2接口固态硬盘,则读写速度在550MB/s左右。 ...上面两款都是M.2接口,如何分辨出哪个是PCI-ESSD哪个是SATASSD?在弄清楚这个问题之前,我们先来解答几个常见问题。 1、同是M.2接口,为什么会有PCI-E和SATA之分? ...Socket2支持SATA、PCI-EX2通道的SSD,Socket3专为高性能存储设计,支持PCI-EX4。...非也非也,不同主板的M.2接口所支持的通道是不同的,有的仅持PCI-E通道,其规格说明里关于M.2的描述有标明。而有的则兼容SATA和PCI-E两种通道。...主控决定了接入M.2接口的SSD是走PCI-E通道还是SATA通道。
前言: 随着Linux的版本升高,存储栈的复杂度也随着增加。作者在这里简单介绍目前Linux存储栈。...通常所说的scsi类型的磁盘,但是目前,包括sata,sas,ide,甚至usb磁盘,都会接入到scsi层,用户态看到的就是/dev/sdx设备。...物理上,是一块SATA盘。...物理上,HBA卡,RAID卡,或者其他的scsi控制器,通过PCI / PCI-e接口连接到主板上。接到PCI请求之后,解释数据,最后把scsi cmd发送给磁盘控制器 。...12,其他问题 scsi已经是 很成熟的框架了,但是在Linux4.14上,作者还是看到了scsi引起的kernel die。
安装完XP系统,设备管理器有个黄色感叹号的未知PCI设备,ID是:PCI\VEN_15AD&DEV_07E0&SUBSYS_07E015AD&REV_00\4&47B7341&0&2088,这是什么设备...是PCI SATA硬盘设备。...尝试安装vmtools并重启虚机,这个未知PCI设备仍然存在,而系统功能一切正常,回想操作过程:我在创建vmware虚拟机的时候选了sata硬盘,但由于32位XP ISO中没有适合vmware sata...硬盘的驱动(找到了一个sata驱动,适用32位2003、64位2003、64位XP,就是不适用32位XP),因此系统安装中止了,然后我删掉了这块硬盘,添加了ide和scsi硬盘重新安装系统成功,而虚机的....vmx配置文件中记录了最初的那个sata0:0设备,导致出现PCI未知设备。
领取专属 10元无门槛券
手把手带您无忧上云