Como posso saber qual versão do SATA minha placa-mãe do laptop suporta?

1

Estou planejando instalar um SSD no meu Acer Aspire E5-511 C7X7 ( link ) substituindo a unidade óptica de 9,5 mm por um caddy de disco rígido, mas não tenho certeza se valerá a pena, pois não sei se a placa-mãe suporta SATA I, II ou III. Como posso verificar isso?

Eu estou rodando o Kubuntu 16.10 e o hardinfo me diz que meu disco rígido principal que estava incluído no laptop é o HDD ATA WDC WD10JPVX-22J de 1TB da Western Digital. O HDD em si é especificado para ter a interface SATA de 6 Gb / s, da qual eu entendo ser SATA III.

O dmesg no console me diz que meus dois controladores SATA estão conectados a 1.5Gbps e 3.0Gbps. Eu assumo que o primeiro é o meu drive óptico e o segundo é o meu HDD. Isso está me levando a acreditar que meu HDD é SATA II e meu drive ótico é SATA I. Essas informações estão corretas?

Eu diria que a Acer não enviaria um disco rígido SATA III em um laptop cuja placa-mãe suporte menos que isso. Estou seguro nesta suposição? E é possível que o meu HDD e drive óptico usem uma interface SATA diferente? Eu suponho que eles usam o mesmo e espero que seja compatível com SATA III, mas, novamente, quero ter certeza.

    
por Tristan Batchler 10.01.2017 / 08:21

1 resposta

0

Supondo que você tenha um controlador AHCI padrão, é possível procurar a velocidade máxima suportada em um registro de configuração. É possível que esse valor seja visível em algum lugar é /sys ou /proc , mas se esse for o caso, eu não estou ciente disso.

Isso envolve brincar com o espaço de E / S dos dispositivos, então tome cuidado para não cometer erros, ou você pode danificar o material.

Veja como isso funciona no meu sistema:

1) Encontre o seu controlador AHCI usando lspci :

$ lspci
...
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05)

2) Veja os recursos, verifique se ele é usado pelo módulo do kernel ahci :

$ lspci -vk -s 0:1f.2
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05) (prog-if 01 [AHCI 1.0])
    Subsystem: ASRock Incorporation 6 Series/C200 Series Chipset Family SATA AHCI Controller
    Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 26
    I/O ports at f0b0 [size=8]
    I/O ports at f0a0 [size=4]
    I/O ports at f090 [size=8]
    I/O ports at f080 [size=4]
    I/O ports at f060 [size=32]
    Memory at f7e06000 (32-bit, non-prefetchable) [size=2K]
    Capabilities: <access denied>
    Kernel driver in use: ahci
    Kernel modules: ahci

3) As regiões da BARRA PCI podem agora ser encontradas em /sys/devices/pci0000:00/0000:00:1f.2/resource* (onde você precisa substituir 0:1f.2 pelo endereço do seu controlador). Meu cartão tem 5 regiões para portas de E / S (número 0-4) e a região mapeada de memória é o número 5. Essa é a que precisamos.

4) Faça o download e compile algumas ferramentas para mapear e ler a região, por exemplo, este .

5) Leia a primeira palavra de 4 bytes no deslocamento 0 com a ferramenta que você acabou de baixar (novamente, substitua o endereço e o recurso PCI pelos do seu sistema). Você precisa ser root para fazer isso. Aqui está o lugar onde coisas engraçadas podem acontecer se você cometer um erro, então tenha certeza que você não fez uma.

$ sudo ./pcimem /sys/devices/pci0000\:00//0000\:00\:1f.2/resource5  0 w
Target offset is 0x0, page size is 4096
mmap(0, 4096, 0x3, 0x1, 3, 0x0)
PCI Memory mapped to address 0xb778e000.
Value at offset 0x0 (0xb778e000): 0xC330FF45
                                      ^

6) Conforme descrito no especificação AHCI da Intel, os bits 23-20 são chamados de Suporte à Velocidade de Interface e indicam a velocidade máxima (1 = Gen 1 / 1,5 Gbps, 2 = Gen / 3 Gbps , 3 = Gen 3/6 Gbps). Esses bits são representados pelo terceiro dígito hexadecimal marcado acima, no meu caso 3 , então meu controlador suporta 6 Gbps.

    
por 10.01.2017 / 13:16

Tags