Как соотносятся «64-разрядная операционная система», «64-разрядный процессор» и размер слова? - PullRequest
0 голосов
/ 30 октября 2018

Мне было интересно, означает ли 64-разрядная операционная система и процессор на базе x64, что размер слова (т. Е. Размер передачи памяти между процессором и физической памятью) составляет 64 бита? Что делать, если операционная система 32-разрядная и процессор x64? А как насчет процессоров на базе x86? Как эти две спецификации (XX-разрядная операционная система и процессор на основе xXX) связаны с фактическим размером слова в аппаратном обеспечении?

1 Ответ

0 голосов
/ 30 октября 2018

Нет, это не значит. современные процессоры x86 имеют 64-байтовые строки кэша и могут осуществлять доступ к кэшу с любой шириной степени 2 от 1 байта до 32-байтового вектора SIMD или 64 байта в процессорах с AVX512. См. Также Что каждый программист должен знать о памяти?

«размер слова» на самом деле не имеет смысла для x86 ; это вовсе не слово-ориентированный ISA.

В документации Intel «слово» составляет 16 бит, просто для обеспечения согласованности с документацией, восходящей к 8086. Ширина шины и регистра в аппаратном обеспечении не связана с этим.


x86-64 имеет 64-битные целочисленные регистры при работе в длинном режиме (64-битный режим). И поддерживает 64-битные адреса. (Фактически 48-битные виртуальные адреса и до 52-битных физических в зависимости от аппаратного обеспечения из-за формата таблицы страниц. Почему в 64-битном виртуальном адресе 4-битные (48-битные) короткие по сравнению с физическим адресом (52 немного длиннее)? )

x86 ЦП, поскольку 32-разрядный процессор Pentium способен выполнять 64-разрядную передачу данных. Почему целочисленное присваивание для естественно выровненной переменной атомарно в x86?

...