64-bit (x86-64)
x86-64 з'яўляецца 64-бітнай назвай архітэктуры інструкцый x86. Яна вызначае рэжымы выканання, рэгістры і правілы адрасацыі; сама па сабе яна не вызначае поўныя патрабаванні праграмы да CPU або аперацыйнай сістэмы.
Што вам трэба ведаць
x86-64 з'яўляецца 64-бітнай назвай архітэктуры інструкцый x86. Яна вызначае рэжымы выканання, рэгістры і правілы адрасацыі; сама па сабе яна не вызначае поўныя патрабаванні праграмы да CPU або аперацыйнай сістэмы.
Як гэта працуе
У 64-бітным рэжыме рэгістры агульнага прызначэння могуць змяшчаць 64-бітныя аперанды, а архітэктура дае дадатковыя рэгістры і іншае асяроддзе праграмавання ў параўнанні з састарэлай 32-бітнай x86. Рэжым сумяшчальнасці дазваляе аперацыйнай сістэме падтрымліваць прыдатныя састарэлыя праграмы, але АС сама вырашае, якія фарматы і інтэрфейсы праграм яна прадастаўляе. 64-бітны CPU не прымушае кожную інструкцыю выкарыстоўваць 64-бітныя даныя.
Дзе гэта карысна
Праграма, сабраная для x86-64 ABI, чакае рэгістры, пагадненне аб выкліках і базавае асяроддзе інструкцый гэтага ABI. Бінарны файл Arm64 належыць да іншай архітэктуры, нават калі абедзве называюць сябе 64-бітнымі. Трансляцыя або эмуляцыя з'яўляецца асобным праграмным сродкам, а не вынікам наяўнасці 64-бітных рэгістраў.
Як праверыць падтрымку і актыўнасць
Для апаратнага забеспячэння x86 пашыраная функцыя CPUID 80000001H, EDX біт 29 пералічвае падтрымку long-mode. Падтрымліваемая аперацыйная сістэма павінна ўключыць адпаведную старонкавую арганізацыю і асяроддзе выканання. Правярайце як архітэктуру запушчанай АС, так і магчымасці працэсара.
Апаратныя магчымасці, дзеючае аперацыйнае асяроддзе і бінарныя патрабаванні праграмы адносяцца да розных узроўняў. Назвы архітэктур і ўзроўні ABI варта разглядаць як дакладныя кантракты, а не як агульнае правіла «наўвейшае значыць сумяшчальнае».
Чаго гэта функцыя не гарантуе
Пазнака 64-bit не вызначае рэалізаваную шырыню фізічнага або віртуальнага адраса, ліміт усталяванай RAM, падтрымку x86-64-v2/v3/v4, права на выкарыстанне Windows ці сумяшчальнасць з канкрэтным драйверам. Правярайце кожнае патрабаванне асобна.
Сумяшчальнасць і прадукцыйнасць на практыцы
Правярайце поўны пералік атрыманых у спадчыну патрабаванняў і фактычнае асяроддзе, бачнае працэсу. Для віртуальнай машыны правярайце госця, а не мяркуйце, што мадэль хоста прадастаўляецца без змен. Падтрымліваемая рэзервовая зборка павінна дакладна заяўляць свае базавыя патрабаванні.
Практычны чэк-ліст для праверкі
- Зафіксуйце дакладную мадэль працэсара або платформы, а таксама задзейнічаныя версіі праграмы, АС і асяроддзя выканання. Захавайце дакладную фармулёўку памылкі або патрабавання.
- Звярніцеся да дакументацыі вытворцы для гэтай канкрэтнай мадэлі, затым праверце фактычныя магчымасці і ўключаны стан у асяроддзі, дзе выконваецца праграма.
- Супастаўце кожнае патрабаванне выбранага выканальнага файла або бэкэнда. Аналагічнай назвы функцыі, псеўданіма або агульнай назвы тэхналогіі недастаткова.
- Пацвердзіце, што праграма выбрала патрэбную рэалізацыю. Выкарыстоўвайце яе задакументаваныя сродкі дыягностыкі і падтрымліваемы запасны варыянт, калі патрабаванні не выконваюцца.
- Уносьце па адным падтрымліваемым змяненні за раз і паўтарайце тую ж нагрузку. Захоўвайце зыходную канфігурацыю і магчымасць адкату.
Калі функцыя пазначана, але праграмнае забеспячэнне не можа яе выкарыстоўваць
Пачніце з канкрэтнага кампанента, які выклікае збой. Апаратная база даных апісвае зафіксаваныя магчымасці; аперацыйная сістэма або гіпервізар могуць прадастаўляць іншае фактычнае асяроддзе. Памылка недапушчальнай інструкцыі (illegal instruction) таксама патрабуе даследавання канкрэтнай інструкцыі, якая выклікала збой, і зборкі бінарнага файла, паколькі пашкоджанне даных або іншая непадтрымліваемая інструкцыя могуць выклікаць аналагічны сімптом.
Усталюйце версію праграмы, драйвера або асяроддзя выканання, якая падтрымліваецца для дадзенай платформы, і пры неабходнасці выкарыстоўвайце задакументаваную вытворцам базавую або запасную зборку. Абнаўленне ПЗ не можа стварыць інструкцыю, якой няма ў працэсары. Змяненні ў мікрапраграме (firmware) і палітыках бяспекі павінны адпавядаць працэдурам вытворцы сістэмы і плану аднаўлення, а не агульным рэцэптам аптымізацыі.
Крыніцы і межы прымянення гэтага тлумачэння
Intel 64 and IA-32 Architectures Software Developer's Manual · x86-64 psABI: узроўні архітэктуры і мікраархітэктуры працэсараў
Гэтыя даведнікі вызначаюць архітэктурныя паводзіны і патрабаванні да праграмнага забеспячэння. Яны не пацвярджаюць незалежна кожнае значэнне функцыі на звязанай старонцы мадэлі абсталявання. Для праверкі падтрымкі мадэллю выкарыстоўвайце даныя вытворцы на адпаведнай старонцы і правярайце фактычную канфігурацыю сістэмы. Гэты артыкул не змяшчае вынікаў тэсціравання (benchmark), сертыфікацыі або даты незалежнага агляду.
Крыніцы і праверка
Рэдакцыйная прыналежнасць: Feex. Дата незалежнай праверкі не зафіксавана. Як мы даследуем.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Тамы 1 і 2 апісваюць названыя сямействы інструкцый і CPUID; Том 3 апісвае стан, старонкавую арганізацыю памяці, VMX і элементы кіравання абаронай. Архітэктурная дакументацыя не пацвярджае падтрымку канкрэтнай мадэлі.
- x86-64 psABI: узроўні архітэктуры і мікраархітэктуры працэсараў · Machine Interface, Processor Architecture: табліца базавых і кумулятыўных магчымасцей v2/v3/v4, праверкі стану АС і рэкамендацыі па разгортванні.
Ці быў гэты артыкул карысным?
Дастаткова адказаць "так" або "не". Выберыце прычыну, калі хочаце, або дадайце кароткую нататку.
Дзякуй. Гэта дапамагае нам паляпшаць гэтую старонку.