Konuyu Oyla:
  • Derecelendirme: 5/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Bir Byte Her Zaman 8 Bitten Oluşmaz
#1
Bunu Access violation forumunda bir soru olarak soracaktım ama ya bende bir sıkıntı var, yada yetkim yok konu açmaya.İkinci ihtimal daha kuvvetli geldi bana sanki forumda başka alanlardaki tecrübelerime dayanarak.Tabi  Access violation  forumunda sorulara sıkça,kendimce cevap veren kişilerden biri olarak konu açamamam da ironik ama zaten bu bir ayrıcalıksa istemem.Gerçi bu konudaki fikirlerimi yönetici arkadaşlar biliyor zaten.Bu forumu seviyorum ama saygı çerçevesinde eleştiri yapmaktan da geri kalmam.Neyse biz konuya gelelim.Parity/ECC (Error Correction Code/Hata Düzeltme Kodu) destekli belleklerde bir byte 9 bitten oluşur, 8 bitlik kısmı data içindir, kalan bir bite is parity bit denir.Tek, çift kontrolü yapılarak datanın bozulup bozulmadığı kontrol edilir.Örneğin:
00101111(1)  parantez içindeki parity bitte 1 değeri var çünkü data kısmındaki bitlerdeki birlerin sayısı 5(tek)'tir.Eğer bu bitlerde bozulma olursa örneğin değerimiz şöyle olursa 00100111(1) olursa birlerin sayısı çift ama parity bitte 1(tek) olduğu için anlarız ki veride bir bozulma var.Tabi burada bir değil de iki değer bozulursa hatayı fark edemeyiz ama  yine de bu kontrolün veri hatalarını büyük oranda çözdüğü belirtiliyor.Tabi bunun için anakartın, işlemcinin de parity/ecc'yi desteklemesi gerekir.Bu yüzden ramlerde anakartlarda bu destek varsa genelde başlığında belirtilir.Maliyeti artırdığı ve kontrol mantğından dolayı biraz daha yavaş (%2) olduğu için artık eskisi kadar tercih edilmese de  veri güvenliğinin önemli olduğu mimarilerde ve sunucularda tercih edilebiliyor.Son olarak biz karşılıklı olarak haberleşen programlar yazıyorsak ve verinin doğru bir şekilde karşıya ulaşması önemliyse bunu 8 bit üzerinde 1 biti parity bit yapıp 7 biti data olarak tasarlayarak programatik olarak da yapabiliriz.En başa dönersek Parity/ECC destekli bir bellek kullanılsa da programcıyı ilgilendiren byte kısmı yine 8 bitten oluşur ama aşağıda ne olduğunu bilmek her zaman bizi daha güçlü kılar. Saygılarımla.
Herhangi bir basit problem, hakkında yeterince toplantı yapılarak, çözümsüz hale getirilebilir.
https://play.google.com/store/apps/developer?id=ONGUN
WWW
Cevapla
#2
Merhaba,
Farklı bir konuya değinerek, bizi aydınlattığınız için şahsım adına teşekkür ederim.
Access violation bölümü için tanımlanan herhangi bir kısıtlama kuralımız yok. Farklı bir tarayıcı ile test etmeyi deneyin.
Şu an detaylı inceleme imkanım yok. Yarın bu durumu daha detaylı kontrol edebilirim.
Cevapla
#3
Güzel bir konuya değinmişsiniz teşekkürler. Donanım katmanında olan olayların farkında olmak olaylara bakış açınızı genişletir.
ECC konusundaki sade anlatımınızdan, 1 bitlik parity biti ile bozulan datanın onarılması (doğrusunun elde edilmesi) değilde hatalı olduğunun tesbiti yapılabildiği anlaşılmaktadır.  RAID5 ve RAID6 disk yapılarındaki parity mekanizması ve data en azından 3 diske (raid5 için) bölündüğü için diğer 2 diskdeki veriden bozulan veri tekrar hesaplanabilmektedir.
Benzer şekilde bozuk olan datanın yeniden elde edilebilmesi için, RAM lerdeki ECC mantığıda diğer ram hücrelerinde depolan verilerle bağlantılımıdır?  Veya ramdeki verinin bozulduğu anlaşıldığında, bunu üreten proces donanım tarafınan tekrar çalıştırılırarak, tekrar verileri yazmasımı sağlanıyor? Bu durumda da ramdeki veri dış dünyadaki bir noktadan geliyorsa....
Aklımda deli sorular Smile
Cevapla
#4
(24-11-2017, Saat: 22:16)frmman Adlı Kullanıcıdan Alıntı: Güzel bir konuya değinmişsiniz teşekkürler. Donanım katmanında olan olayların farkında olmak olaylara bakış açınızı genişletir.
ECC konusundaki sade anlatımınızdan, 1 bitlik parity biti ile bozulan datanın onarılması (doğrusunun elde edilmesi) değilde hatalı olduğunun tesbiti yapılabildiği anlaşılmaktadır.  RAID5 ve RAID6 disk yapılarındaki parity mekanizması ve data en azından 3 diske (raid5 için) bölündüğü için diğer 2 diskdeki veriden bozulan veri tekrar hesaplanabilmektedir.
Benzer şekilde bozuk olan datanın yeniden elde edilebilmesi için, RAM lerdeki ECC mantığıda diğer ram hücrelerinde depolan verilerle bağlantılımıdır?  Veya ramdeki verinin bozulduğu anlaşıldığında, bunu üreten proces donanım tarafınan tekrar çalıştırılırarak, tekrar verileri yazmasımı sağlanıyor? Bu durumda da ramdeki veri dış dünyadaki bir noktadan geliyorsa....
Aklımda deli sorular Smile

Yukarda anlattığım parity/ecc destekli sistemlerde parity kontrolüdür ve hatayı tespit eder ama düzeltemez her byteda 1 bit maliyeti vardır.Fakat ecc sistemlerde 2 bite kadar hata düzeltme şansı da vardır ama örneğin 32 bitte extra 7 bite ihtiyac vardır.Bu da maliyeti oldukça artırır.Ayrıca ecc destekli sşstemler parity destekli olduğu gibi non-parity de olabiliyor.
Herhangi bir basit problem, hakkında yeterince toplantı yapılarak, çözümsüz hale getirilebilir.
https://play.google.com/store/apps/developer?id=ONGUN
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  No mapping for the Unicode character exists in the target multi-byte code page powerghost 8 4.350 20-04-2023, Saat: 10:19
Son Yorum: yhackup
  zaman aşımı info@guzelceker.com 4 889 25-11-2022, Saat: 08:32
Son Yorum: info@guzelceker.com
  TUBITAK Zaman Damgası ikurt07 11 2.816 28-01-2022, Saat: 10:56
Son Yorum: mkysoft
  Low Byte, High Byte 41linea41 1 645 21-11-2021, Saat: 00:01
Son Yorum: mrmarman
  Zaman aşımı kontrolü eskalibur_ 2 1.084 11-08-2021, Saat: 12:12
Son Yorum: eskalibur_



Konuyu Okuyanlar: 1 Ziyaretçi