Paritásbit

Egyszerűsége miatt a paritást számos olyan hardveres alkalmazásban használják, ahol egy művelet nehézség esetén megismételhető, vagy ahol egyszerűen a hiba észlelése hasznos. Például a SCSI- és a PCI-buszok paritást használnak az átviteli hibák észlelésére, és számos mikroprocesszor utasítás gyorsítótárában paritásvédelem található. Mivel az I-cache adatai csak a főmemória másolatai, figyelmen kívül hagyhatók és újra lekérdezhetők, ha hibásnak bizonyulnak.

A soros adatátvitelben az általános formátum 7 adatbit, egy páros paritásbit és egy vagy két stopbit. Ez a formátum egy 8 bites bájtban az összes 7 bites ASCII karaktert elfér. Más formátumok is lehetségesek; 8 bit adat plusz egy paritásbit az összes 8 bites bájtértéket közvetítheti.

A soros kommunikációban a paritást általában az interfész hardver (pl. UART) generálja és ellenőrzi, és vételkor az eredményt az interfész hardveres regiszterében lévő állapotbiten keresztül egy processzor, például a CPU (és így például az operációs rendszer) számára elérhetővé teszik. A hibából való helyreállítás általában az adatok újraküldésével történik, amelynek részleteit általában szoftverek (pl. az operációs rendszer I/O rutinjai) kezelik.

Ha az átvitt bitek teljes száma, beleértve a paritásbitet is, páros, a páratlan paritásnak az az előnye, hogy a teljesen nullás és a teljesen egyes mintát egyaránt hibaként érzékeli. Ha a bitek teljes száma páratlan, csak az egyik mintát észleli hibaként, és a választás aszerint történhet, hogy várhatóan melyik lesz a gyakoribb hiba.

Független lemezek redundáns tömbjeSzerkesztés

A paritásos adatokat egyes független lemezek redundáns tömbje (RAID) szintek használják a redundancia elérésére. Ha a tömb egyik meghajtója meghibásodik, a többi meghajtón megmaradt adatok a paritásadatokkal kombinálva (a Boolean XOR függvény segítségével) rekonstruálhatók a hiányzó adatok.

Tegyük fel például, hogy egy három meghajtóból álló RAID 5 tömb két meghajtója a következő adatokat tartalmazza:

1. meghajtó: 01101101
2. meghajtó: 11010100

A két meghajtó paritásadatainak kiszámításához XOR-t kell végrehajtani az adatokon:

01101101
XOR 11010100
_____________
10111001

A kapott paritásadat, 10111001, a 3. meghajtóra kerül.

Ha a három meghajtó bármelyike meghibásodik, a meghibásodott meghajtó tartalma rekonstruálható a helyettesítő meghajtón, ha a többi meghajtó adatait ugyanennek az XOR műveletnek vetjük alá. Ha a 2. meghajtó meghibásodna, adatai a két megmaradt meghajtó, az 1. és a 3. meghajtó tartalmának XOR-eredményeivel állíthatók helyre:

1. meghajtó: 01101101
3. meghajtó: 10111001

a következőképpen:

10111001
XOR 01101101
_____________
11010100

Az XOR-számítás eredménye adja a 2. meghajtó tartalmát. A 11010100 ezután a 2. meghajtóra kerül, teljesen helyreállítva a tömböt. Ugyanez az XOR koncepció hasonlóan alkalmazható nagyobb tömbökre is, tetszőleges számú lemezt használva. Egy 12 meghajtóból álló RAID 3 tömb esetében 11 meghajtó vesz részt a fenti XOR-számításban, és egy olyan értéket kap, amelyet a dedikált paritásmeghajtón tárolnak.

A RAID-DP-ben a paritásbit-mechanizmus kiterjesztései és változatai, a “dupla”, “kettős” vagy “diagonális” paritás használatos.

A RAID-DP-ben a “dupla”, “kettős” vagy “diagonális” paritást használják.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük