FXSR
FXSR identifikon mekanizmat FXSAVE/FXRSTOR për ruajtjen dhe rikthimin e gjendjes së trashëguar (legacy) me pikë notuese dhe SIMD. Ai është një aftësi e menaxhimit të gjendjes nga sistemi operativ dhe jo një vlerësim i shpejtësisë së aplikacionit.
Çfarë duhet të dini
FXSR identifikon mekanizmat FXSAVE/FXRSTOR për ruajtjen dhe rikthimin e gjendjes së trashëguar (legacy) me pikë notuese dhe SIMD. Ai është një aftësi e menaxhimit të gjendjes nga sistemi operativ dhe jo një vlerësim i shpejtësisë së aplikacionit.
Si funksionon
FXSAVE shkruan imazhin e përcaktuar të gjendjes x87, MMX, XMM dhe MXCSR, dhe FXRSTOR rikthen gjendjen përkatëse. Imazhi ka një strukturë dhe radhitje të specifikuar. Grupi i saktë i regjistrave dhe formati varen nga regjimi i ekzekutimit dhe kontrollet arkitekturore.
Ku është e dobishme
Një sistem operativ ose mjedis ekzekutues që implementon trajtimin e kontekstit të nivelit të ulët duhet të ruajë gjendjen që lejon mjedisi i tij i ekzekutimit. Aplikacionet e zakonshme zakonisht mbështeten te OS-i dhe ABI në vend që të ruajnë vetë imazhe të çfarëdoshme të kontekstit.
Si të kontrollohet mbështetja dhe aktivizimi
Biti 24 i CPUID.01H:EDX numëron FXSR. Softueri i nivelit të ulët duhet të ndjekë gjithashtu kërkesat e regjistrit të kontrollit, radhitjes dhe privilegjeve në manualin e arkitekturës. Mos e zëvendësoni trajtimin e kontekstit të OS-it me një zgjidhje alternative ruajtjeje/rikthimi në nivel aplikacioni.
Mekanizmat e menaxhimit të gjendjes janë kryesisht përgjegjësi e OS-it dhe mjedisit ekzekutues. Buffer-at, maskat, madhësitë e komponentëve, radhitja dhe rregullat e rikthimit duhet të përputhen me arkitekturën dhe regjimin e ekzekutimit. Ruajtja e vetëm një nënbashkësie mund të korruptojë kodin që përdor gjendje shtesë të aktivizuar.
Çfarë nuk përcakton kjo veçori
Një imazh FXSAVE nuk ruan të gjithë gjendjen e mëvonshme AVX, AVX-512 ose AMX. Trajtimi i tij si një kontekst modern i plotë mund të korruptojë një program edhe kur FXSR mbështetet. Menaxhimi i gjendjes i familjes XSAVE është një mekanizëm i veçantë.
Përputhshmëria dhe performanca në praktikë
Zbulimi i veçorive në nivel aplikacioni duhet të përdorë një ndërfaqe të mirëmbajtur ekzekutimi kur është e mundur. Dalloni mbështetjen harduerike nga aktivizimi i OS-it dhe, për veçoritë dinamike, lejen e procesit. Vetëm një etiketë CPU-je nuk mund të vërtetojë që një sekuencë e çfarëdoshme ruajtjeje/rikthimi është e saktë.
Një listë praktike kontrolli për verifikim
- Regjistroni modelin e saktë të procesorit ose platformës dhe versionet e përfshira të aplikacionit, sistemit operativ dhe mjedisit të ekzekutimit. Ruani formulimin e gabimit ose kërkesës aktuale.
- Kontrolloni referencën e prodhuesit për atë model të saktë, më pas inspektoni aftësinë efektive dhe gjendjen e aktivizuar në mjedisin ku ekzekutohet programi.
- Krahasoni çdo kërkesë të binarit ose prapavijës së zgjedhur. Një veçori me emër të ngjashëm, një pseudonim ose një etiketë e gjerë teknologjike nuk mjafton.
- Konfirmoni që aplikacioni ka zgjedhur implementimin e synuar. Përdorni diagnostikimet e dokumentuara të tij dhe një alternativë të mbështetur kur kërkesat nuk plotësohen.
- Bëni një ndryshim të mbështetur në një moment dhe përsëritni të njëjtën ngarkesë pune. Mbajeni të disponueshme konfigurimin origjinal dhe rrugën e rikuperimit.
Nëse veçoria listohet por softueri nuk mund ta përdorë atë
Filloni me komponentin e saktë që dështon. Një bazë të dhënash harduerike përshkruan aftësinë e regjistruar; sistemi operativ ose hipervizori mund të ekspozojë një mjedis efektiv të ndryshëm. Një gabim instruksioni të paligjshëm kërkon gjithashtu hetim të instruksionit aktual me defekt dhe të ndërtimit të binarit, sepse dëmtimi ose një instruksion i palidhur i pambështetur mund të prodhojë një simptomë të ngjashme.
Instaloni versionin e aplikacionit, drajverit ose mjedisit të ekzekutimit të mbështetur për platformën e saktë, dhe përdorni versionin bazë ose alternativ të dokumentuar nga prodhuesi nëse është e nevojshme. Një përditësim softueri nuk mund të krijojë një instruksion që procesorit i mungon. Ndryshimet në firmware dhe politikat e sigurisë duhet të ndjekin procedurën e prodhuesit të sistemit dhe një plan rikuperimi në vend të një recete të përgjithshme optimizimi.
Burimet dhe fusha e këtij shpjegimi
Intel 64 and IA-32 Architectures Software Developer's Manual · psABI x86-64: nivelet e arkitekturës dhe mikroarkitekturës së procesorit
Këto referenca përcaktojnë sjelljen arkitekturore dhe kërkesat e softuerit. Ato nuk verifikojnë në mënyrë të pavarur çdo vlerë të veçorive në faqen e lidhur të modelit të harduerit. Për mbështetjen e modelit, përdorni dëshmitë e prodhuesit në atë faqe dhe kontrolloni konfigurimin efektiv të sistemit. Ky artikull nuk ofron një test standard vlerësimi, certifikim ose datë shqyrtimi të pavarur.
Burimet dhe verifikimi
Pronësia editoriale: Feex. Nuk është regjistruar asnjë datë shqyrtimi të pavarur. Si hulumtojmë.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Vëllimet 1 dhe 2 përshkruajnë familjet e emërtuara të instruksioneve dhe CPUID; Vëllimi 3 përshkruan gjendjen, faqosjen, VMX dhe kontrollet e mbrojtjes. Dokumentacioni i arkitekturës nuk përcakton mbështetjen për një model të caktuar.
- psABI x86-64: nivelet e arkitekturës dhe mikroarkitekturës së procesorit · Ndërfaqja e makinës, Arkitektura e procesorit: tabela bazë dhe kumulative e veçorive v2/v3/v4, kontrollet e gjendjes së OS-it dhe rekomandimet e vendosjes.
A ishte i dobishëm ky artikull?
Një po ose jo mjafton. Zgjidhni një arsye nëse dëshironi, ose shtoni një shënim të shkurtër.
Faleminderit. Kjo na ndihmon ta përmirësojmë këtë faqe.