Intel Quark SoC kullanıyorum ve üç hata oluştuğunda RAM'den bazı verileri okumaya çalışıyorum. Sıfırlama gerçekleşmeden önce bazı verileri kaydediyorum ve programım yeniden başlatıldıktan sonra okumak istiyorum. Bu mümkün mü yoksa RAM temizlendi mi?Sıfırlamadan sonra x86 "32-bit" net RAM'de yumuşak sıfırlama var mı?
cevap
İşletim sistemine göre değişir. Linux'ta, boşaldığında belleği temizleyebilen PaX gibi yamalar vardır. Bilgisayar kendi başına hiçbir şeyi temizlemez, bu yüzden değişken bir başlangıç değerine güvenemezsiniz. Hatta bilgisayar kapalı güç ile RAM kurtarmak için mümkün: http://tdistler.com/2008/02/21/data-in-ram-can-be-recovered-after-power-off
Bilgilerinizi saklamak için sabit bir fiziksel adres kullanabilirsiniz, yeniden başlattığınızda kurtarmak mümkündür. Bir OS (Windows gibi) içinde ring0 seviyesi (çekirdek sürücü izinleri) olmadan çalışıyorsanız, verilerinizin yeniden başlatmadan önce nerede saklanacağını bulamazsınız. Bir örnek vermek gerekirse, Playstation 3'ün korsanlarından biri, konsolun yeniden başlatılmasından sonra bellekte yapılan bir değişikliğin sürekliliğine dayanıyordu.
Özgün sorudan, işletim sistemi bulunmamaktadır. Önyükleme sektörünü sorunluyor gibi geliyor. –
Bilgisayar, POST'un bir parçası olarak belleği sınarken, normal olarak yeniden başlatma sırasında belleğin kendisini temizler. –
Ben downvoters biri değilim.Ben bir cevap üretmek için zaman ayırdığınız için teşekkür ederim ama bu soruya mutlaka cevap olduğunu düşünmüyorum. –
- 1. Değiştirildikten sonra arama sorgusunu sıfırlamadan sayfayı yenileyin
- 2. StackOverflowException; x86
- 3. DropDownList sıfırlama düğmesi c sonra #
- 4. .NET transliteration kütüphanesi var mı?
- 5. .NET FastCGI kitaplığı var mı?
- 6. x64'ten x86 COM erişimi x64 .NET
- 7. Bir "Herhangi bir CPU" derlenmiş uygulama 64bit işletim sistemi üzerinde 32bit modunda çalıştırmak için zorlamak için bir yolu var mı?
- 8. Bir .NET Polimorfik Veri Çerçevesi var mı
- 9. Bir değeri sıfırlamadan nasıl güncelleyebilirim?
- 10. x86 Yapı LibVLC for x86
- 11. .net için ücretsiz printf var mı?
- 12. .Net için iyi ayrıştırma kütüphaneleri var mı?
- 13. Bir Ruby .NET Derleyicisi var mı?
- 14. StreamReader.ReadLineAsync için .NET 4.0 değiştirme var mı?
- 15. rxjava interval() bazı olaylardan sonra sıfırlama süresi
- 16. ? Ben sıfırlama alırsanız saatin posedge anda
- 17. Oracle ODP.NET Yönetilen Sürücü 64bit'de 64bit'de 32bit
- 18. CorFlags.exe/32BIT + nasıl çalışır?
- 19. Yazma, x86'da okunandan daha hızlı mı?
- 20. 32bit ve 64bit yönetilmeyen DLL
- 21. Bugün x86'da kaç tane talimat var?
- 22. Karışık 32Bit ve 64bit paylaşılan nesne/kütüphane
- 23. Kesikli Bağlantı Sıfırlama Android'deki Peer hatalarına sıfırlama .NET REST bitiş noktasına bağlanma
- 24. çalıştırılabilir windows xp 32bit
- 25. CIDR alt ağları için yerel .NET türü var mı?
- 26. MobaXterm - sıfırlama terminali ekranı
- 27. 32bit veya 64bit Android SDK?
- 28. Tamamen işlevsel yumuşak yığın
- 29. Bir jitter_decode bir 32bit sunucuda
- 30. Python - oluşturucu bağımsız değişkenleri adlarını sıfırlamadan döndürme
Evet, mümkün. 286'da OS/2'nin olduğu günlerde, korumalı moddan üçlü faylanma ile gerçek moda geçmek için benzer bir teknik kullandılar (8042 klavye denetleyicisi aracılığıyla sıfırdan daha hızlıydı). Hile, sisteme, ram'ı yok etmeyen sıcak bir sıfırlamaya zorlamak istediğinizi söylemeniz gerektiğidir. Bunu, [hafızaya alınmış çevrimiçi] (http://stanislavs.org/helppc/bios_data_area.html) özellikle bellek adresi 0x40: 0x72 veya fiziksel adres 0x472 olan BDA üzerinden yapabilirsiniz. Bu tekniğin hala üçlü bir arıza üzerinde bile modern donanım üzerinde çalıştığına inanıyorum, ama bir süredir denemedim. –
Bunu bir cevap olarak yazmalısınız, @MichaelPetch –
@DavidHoelzer: Bir cevap yazmak isteyen herkes benim misafirim olabilir. Bunun hala işe yaradığını kesin olarak söyleyemem ve bazı VM'lerin bunu onurlandırmadıklarını (hala yapmamayı) biliyorum. Şimdi olabilirler, ama gerçekten bilmiyorum. Bilgimdeki bir boşluk var ve benim yorumum, eski günlerde daha iyi çalışma şansına sahip. Benim hislerim, bu muhtemelen bir XY problemi. –