Sophie

Sophie

distrib > Mageia > 3 > x86_64 > by-pkgid > 5b8b7282a0674663570f3b1d72f69b05 > files > 1228

dvdisaster-0.72.4-3.mga3.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 <title>исправление ошибок</title>
 <link rel="stylesheet" type="text/css" href="../include/dvdisaster.css">
</head>
<body>

<!-- Title header -->
<table width="100%" cellpadding="0" border="0">
  <tr>
     <td align="left">
       <span class="fxxl"><b>dvdisaster</b></span>
       <i>Версия 0.72.4 / 0.72 (pl4)</i>
  </td>
  <td align="right">
     <span class="fxxl">&nbsp;</span><a href="http://dvdisaster.net/ru/">К интернет-версии</a>
       <a href="../cs/howtos61.html"></a> 
       <a href="../de/howtos61.html"></a> 
       <a href="../en/howtos61.html"></a> 
        
     </td>
  </tr>
</table>

<!-- Language chooser or separator -->
<table width="100%" cellpadding="0" border="0">
  <tr>
    <td colspan="2" class="hsep"></td>
  </tr>
  <tr><td colspan="2" style="height: 10px">
  </td></tr>
</table>
  
<!-- Main body (Navigation, actual page content, optional news column) --> 
<table width="100%" cellspacing=0>
 <tr>
  <!-- Navigation -->
  <td style="background-color:#f0f0f0; vertical-align:top; width:20%;">
    <table width="100%" cellpadding="10">
      <tr>
        <td>
         <span class="fs"><b>Содержание</b></span>
          <table width="100%" cellpadding="0" cellspacing="0">
	    <tr>
	      <td class="hsep"></td>
	    </tr>
	  </table><p>

          <table width="100%">
            <tr><td colspan=3><span class="fs"><a href="news.html">Новости</a></span></td></tr>
            <tr><td></td><td></td><td style="height:10px;"></td></tr>
            <tr><td colspan=3><span class="fs"><a href="index.html">Обзор</a></span></td></tr>
            <tr><td></td><td></td><td style="height:10px;"></td></tr>
            <tr><td colspan=3><span class="fs"><a href="howtos.html">Howto's</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos60.html">Общая картина</a></span></td></tr>
            <tr><td></td><td style="vertical-align:top; font-size:small;">-</td><td><span class="fs">исправление ошибок</span></td></tr>
        <tr><td></td><td style="vertical-align:top; font-size:small;">-</td><td><span class="fs"><a href="howtos62.html">правильное использование</a></span></td></tr>
        <tr><td></td><td style="vertical-align:top; font-size:small;">-</td><td><span class="fs"><a href="howtos63.html">неправильное использование</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos10.html">Поиск ошибок на носителях</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos20.html">Размещение данных для исправления ошибок в отдельном файле</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos30.html">Размещение данных для исправления ошибок на носителе</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos40.html">Восстановление образов носителей</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos50.html">Получение информации об образах и данных для исправления ошибок</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtos90.html">Проверка совместимости образов</a></span></td></tr>
            <tr><td style="width:1%; vertical-align:top;">&middot;</td><td colspan=2><span class="fs"><a href="howtosa0.html">Диалоги и кнопки</a></span></td></tr>
            <tr><td></td><td></td><td style="height:10px;"></td></tr>
            <tr><td colspan=3><span class="fs"><a href="download.html">Скачать</a></span></td></tr>
            <tr><td></td><td></td><td style="height:10px;"></td></tr>
            <tr><td colspan=3><span class="fs"><a href="qa.html">Вопросы и ответы</a></span></td></tr>
            <tr><td></td><td></td><td style="height:10px;"></td></tr>
            <tr><td colspan=3><span class="fs"><a href="feedback.html">Сообщения об ошибках</a></span></td></tr>
	  </table>
        </td>
      </tr>
    </table>
  </td>
  <td></td>

  <!-- Actual page contents -->
  <td style="vertical-align:top; width:77%;" rowspan="2">

<!-- Insert actual page content below -->

<h3 class="top">Идея, лежащая в основе исправления ошибок</h3>

<table width="100%">
<tr valign="top">
<td><img src="../images/bad-cd.png" alt="Icon: Damaged medium (partially unreadable)"></td>
<td> </td>
<td><img src="../images/ecc.png" alt="Icon: Separate file with error correction data"></td>
<td> &nbsp; </td>
<td rowspan="3">
Из примера на предыдущей странице мы знаем, как dvdisaster воссоздает
данные, используя всё еще читаемые части носителя в совокупности с
данными для исправления ошибок.<p>

Чтобы получить максимум отдачи от dvdisaster, полезно понимать основы 
метода исправления ошибок. Пользуясь случаем, мы можем опровергнуть
неправильное предположение, которое можно то и дело услышать - данные для
исправления ошибок <b>не</b> являются просто копией последних 20% секторов носителя.
Это был бы и в самом деле дешевый трюк ;-)
</td>
</tr>

<tr>
<td align="right" class="w65x">80%<img src="../images/rdiag-arrow.png" alt="Icon: Diagonal arrow right"></td>
<td> </td>
<td align="left" class="w65x"><img src="../images/ldiag-arrow.png" alt="Icon: Diagonal arrow left">20%</td>
<td> </td>
</tr>

<tr>
<td> </td>
<td> <img src="../images/good-image.png" alt="Icon: Complete image"></td>
<td> </td>
<td> </td>
</tr>
</table><p>

<b>Пример: Пин-код для ящика письменного стола Анны</b><p>

У Анны есть стол, в котором ящики открываются, только если ввести в кодовый замок
числа "8 6 2 3". Поскольку в этих ящиках нет какой-либо деликатной
информации, она решает записать числа прямо на поверхности стола:<p>

<img src="../images/ecc-example1.png" alt="8 6 2 3"><p>

Анна предусмотрительна и предполагает, что одно из чисел станет нечитаемым, 
если на него случайно капнут чернила. Поэтому она записывает также и
сумму этих четырех чисел ("+" и "=" - добавлены только для ясности):<p>

<img src="../images/ecc-example2.png" alt="8+6+2+3=19"><p>

Через какое-то время на числа, действительно, попало чернильное пятно:<p>

<img src="../images/ecc-example3.png" alt="8+&nbsp;+6+2+3=19"><p>

Но это не проблема, раз Анна может вновь вычислить недостающее число <i>x</i>,
переписав все еще читаемые части уравнения:<p>

8 + x + 2 + 3 = 19, отсюда<p>

x = 19 - 8 - 2 - 3, и, следовательно, x = 6.<p>

Легко видеть, что любое из первоначальных пяти чисел может быть
восстановлено по оставшимся четырем. Этот пример также демонстрирует
некоторые важные свойства исправления ошибок:
<p>

<table><tr><td><img src="../images/ecc-example4.png" alt="8+6+2+3 (medium)=19 (ecc)"></td><td>&nbsp;&nbsp;</td>
<td class="valignt">
Для данного набора данных (например, числа "8 6 2 3")
дополнительные данные для исправления ошибок (например, сумма "19") могут быть созданы
таким образом, что потерянное данное может быть вновь рассчитано по оставшимся данным.<p>

Такой же принцип используется в dvdisaster; защищаемая последовательность чисел
есть ничто иное, как ISO-образ CD, DVD или BD.</td>
</tr></table><p>

Концепция <b>избыточности</b> может быть объяснена следующим образом:

<ul>
<li>Одно "число для исправления ошибок" рассчитывается для четырех входных чисел.
1 из 4 (или 1/4) соответствует избыточности в 25%.</li>
<li> По одному числу для исправления ошибок мы можем вновь рассчитать точно одно
недостающее число, или самое большее 25% данных. 
Избыточность эквивалентна максимальной возможности исправления ошибок.</li>
<li> Дополнительное место, требуемое для размещения данных для исправления ошибок,
также определяется избыточностью (25% в примере).</li>
</ul>

В dvdisaster понятие избыточности используется соответствующим образом. Кроме того,
обратите внимание, что
<ul>
<li>никакие данные не могут быть восстановлены, когда потеря данных превышает избыточность
(уравнение в примере нельзя решить для двух и более неизвестных).</li>
<li>данные для исправления ошибок должны быть рассчитаны тогда, когда все данные
еще присутствуют / читаются.</li>
</ul><p>

Приведенный выше пример не обобщается на схему исправления ошибок
для восстановления более одного недостающего значения данных. Чтобы сделать это,
требуется более мощная система уравнений, которая может быть решена для более чем
одного недостающего значения. dvdisaster использует 
<a href="http://de.wikipedia.org/wiki/Reed-Solomon-Code">код Рида-Соломона</a>, 
у которого есть такие качества; однако необходимая для этого математика не преподается
в школе. Поэтому заинтересованные читатели отсылаются к соответствующим
книгам по теории кодирования.


<!-- do not change below -->

  </td> <!-- end of page contents -->

 </tr>

<!--
 <tr valign="bottom">
   <td style="background-color:#f0f0f0;">
      <table cellpadding="10"><tr><td><a href="http://dvdisaster.net/legacy/en/index.html"><span class="fs"></span></a></td></tr></table>
   </td>
   <td></td>
   <td></td>
 </tr>
-->
</table> <!-- end of main body table -->


<!-- Page footer -->
<table width="100%" cellpadding="0" border="0">
 <tr><td colspan="2" style="width:100%; height:10px;"></td>
 </tr>
 <tr><td colspan="2" class="hsep"></td>
 </tr>
 <tr>
  <td align="center">
   <span class="fs">
     <i> Copyright 2007-2009 Igor Gorbounov.<br>
         Дословное копирование и распространение всей этой статьи разрешается на любом носителе, при условии, что это уведомление сохраняется.
    </i>
   </span>
  </td>
 </tr>
 <tr><td colspan="2" class="hsep"></td>
 </tr>
</table>
</body>
</html>