FXSR
FXSR, eski kayan nokta ve SIMD durumunu kaydetmek ve geri yüklemek için FXSAVE/FXRSTOR olanaklarını tanımlar. Bir uygulama hız derecelendirmesi değil, işletim sistemi durum yönetimi yeteneğidir.
Bilmeniz gerekenler
FXSR, eski kayan nokta ve SIMD durumunu kaydetmek ve geri yüklemek için FXSAVE/FXRSTOR olanaklarını tanımlar. Bir uygulama hız derecelendirmesi değil, işletim sistemi durum yönetimi yeteneğidir.
Nasıl çalışır
FXSAVE tanımlanmış x87, MMX, XMM ve MXCSR durum görüntüsünü yazar; FXRSTOR ise ilgili durumu geri yükler. Görüntünün belirtilmiş bir yerleşimi ve hizalaması vardır. Kesin yazmaç kümesi ve biçimi yürütme moduna ve mimari denetimlere bağlıdır.
Nerede yararlıdır
Düşük düzey bağlam işlemeyi yürüten bir işletim sistemi veya çalışma zamanı, yürütme ortamının izin verdiği durumu korumalıdır. Sıradan uygulamalar, rastgele bağlam görüntülerini kendileri kaydetmek yerine normalde işletim sistemine ve ABI'ye güvenir.
Destek ve etkinleştirme durumu nasıl kontrol edilir
CPUID.01H:EDX 24. biti FXSR'yi listeler. Düşük düzey yazılımlar ayrıca mimari kılavuzundaki denetim yazmacı, hizalama ve ayrıcalık gereksinimlerini de izlemelidir. İşletim sistemi bağlam işlemeyi uygulama düzeyinde bir kaydetme/geri yükleme geçici çözümüyle değiştirmeyin.
Durum yönetimi olanakları öncelikle işletim sisteminin ve çalışma zamanının sorumluluğundadır. Arabellekler, maskeler, bileşen boyutları, hizalama ve geri yükleme kuralları mimari ve yürütme moduyla uyumlu olmalıdır. Yalnızca bir alt kümeyi kaydetmek, ek etkinleştirilmiş durumu kullanan kodu bozabilir.
Özelliğin sağlamadığı durumlar
Bir FXSAVE görüntüsü daha sonraki tüm AVX, AVX-512 veya AMX durumlarını korumaz. FXSR desteklense bile bunu eksiksiz bir modern bağlam olarak ele almak bir programı bozabilir. XSAVE ailesi durum yönetimi ayrı bir mekanizmadır.
Uygulamada uyumluluk ve performans
Uygulama düzeyinde özellik algılama, mümkün olduğunda güncel bir çalışma zamanı arabirimi kullanmalıdır. Donanım desteğini işletim sistemi etkinleştirmesinden ve dinamik özellikler için işlem izninden ayırt edin. Tek başına bir CPU etiketi, rastgele bir kaydetme/geri yükleme dizisinin doğru olduğunu kanıtlayamaz.
Pratik bir doğrulama kontrol listesi
- İlgili tam işlemci veya platform modelini ve uygulama, işletim sistemi ve çalışma zamanı sürümlerini kaydedin. Gerçek hatanın veya gereksinimin metnini koruyun.
- Bu tam model için üretici referansını kontrol edin, ardından programın çalıştığı ortamda geçerli yeteneği ve etkinleştirilmiş durumu inceleyin.
- Seçilen ikili dosyanın veya arka ucun her gereksinimini karşılaştırın. Benzer şekilde adlandırılmış bir özellik, diğer ad veya genel teknoloji etiketi yeterli değildir.
- Uygulamanın hedeflenen uygulamayı seçtiğini onaylayın. Gereksinimler karşılanmadığında belgelenmiş tanılamalarını ve desteklenen bir geri dönüşü kullanın.
- Her seferinde desteklenen bir değişiklik yapın ve aynı iş yükünü tekrarlayın. Orijinal yapılandırmayı ve kurtarma yolunu kullanılabilir durumda tutun.
Özellik listeleniyor ancak yazılım kullanamıyorsa
Hata veren tam bileşenle başlayın. Bir donanım veritabanı kayıtlı yeteneği açıklar; işletim sistemi veya hipervizör farklı bir geçerli ortam sunabilir. Geçersiz komut hatası, gerçek hatalı komutun ve ikili yapının da incelenmesini gerektirir, çünkü bozulma veya ilgisiz, desteklenmeyen bir komut benzer bir belirti üretebilir.
Tam platform için desteklenen uygulama, sürücü veya çalışma zamanı sürümünü yükleyin ve gerekirse satıcının belgelenmiş temel veya geri dönüş derlemesini kullanın. Bir yazılım güncellemesi, işlemcide eksik olan bir komutu oluşturamaz. Bellenim ve güvenlik politikası değişiklikleri, genel bir optimizasyon tarifi yerine sistem üreticisinin prosedürünü ve bir kurtarma planını izlemelidir.
Bu açıklamanın kaynakları ve kapsamı
Intel 64 ve IA-32 Mimarileri Yazılım Geliştirici Kılavuzu · x86-64 psABI: işlemci mimarisi ve mikro mimari seviyeleri
Bu referanslar mimari davranışı ve yazılım gereksinimlerini belirler. Bağlantılı bir donanım modeli sayfasındaki her özellik değerini bağımsız olarak doğrulamazlar. Model desteği için ilgili sayfanın üretici kanıtlarını kullanın ve geçerli sistem yapılandırmasını kontrol edin. Bu makale bir kıyaslama, sertifikasyon veya bağımsız inceleme tarihi sağlamaz.
Kaynaklar ve doğrulama
Editoryal mülkiyet: Feex. Bağımsız bir inceleme tarihi kaydedilmemiştir. Nasıl araştırıyoruz.
- Intel 64 ve IA-32 Mimarileri Yazılım Geliştirici Kılavuzu · Cilt 1 ve 2, adlandırılmış komut ailelerini ve CPUID'yi açıklar; Cilt 3, durum, sayfalama, VMX ve koruma denetimlerini açıklar. Mimari belgeleri belirli bir model için desteği doğrulamaz.
- x86-64 psABI: işlemci mimarisi ve mikro mimari seviyeleri · Makine Arayüzü, İşlemci Mimarisi: temel ve kümülatif v2/v3/v4 özellik tablosu, işletim sistemi durumu kontrolleri ve dağıtım önerileri.
Bu makale yararlı oldu mu?
Evet veya hayır yeterlidir. İsterseniz bir neden seçin veya kısa bir not ekleyin.
Teşekkürler. Bu, bu sayfayı geliştirmemize yardımcı olur.