Прочитанный блок - Большая Энциклопедия Нефти и Газа, статья, страница 2
Если вы считаете, что никому до вас нет дела, попробуйте пропустить парочку платежей за квартиру. Законы Мерфи (еще...)

Прочитанный блок

Cтраница 2


В этот момент все уже сделано. Мы, однако, ускорим ещэ многократные обращения к одному и тому же блоку в случав, если блок в кольце не один, Для этого воспользуемся тем, что в хеш-таблице может быть записан индекс любого элемента кольца, а поиск начинается именно о этого элемента. Таким образом, если в хеш-таблицу записать индеко нового, только что прочитанного блока, то информация о блоках в пуле останется корректной, а при повторном обращении к этому блоку искать в кольце ие при дется - мы сразу получим индекс требуемого блока.  [16]

В первом случае заблокированный драйвер будет активизирован прерыванием. Во втором случае драйвер не блокируется. В любом случае по завершении выполнения операции драйвер должен проверить, завершилась ли операция без ошибок. Если все в порядке, драйверу, возможно, придется предать данные ( например, только что прочитанный блок) независимому от устройств программному обеспечению. Наконец, драйвер возвращает некоторую информацию о состоянии для информирования вызывающей программы о статусе завершения операции. Если в очереди находились другие запросы, один из них теперь может быть выбран и запущен. В противном случае драйвер блокируется в ожидании следующего запроса.  [17]

В первом случае заблокированный драйвер будет активизирован прерыванием. Во втором случае драйвер не блокируется. В любом случае по завершении выполнения операции драйвер должен проверить, завершилась ли операция без ошибок. Если все в порядке, драйверу, возможно, придется предать данные ( например, только что прочитанный блок) независимому от устройств программному обеспечению. Наконец, драйвер возвращает некоторую информацию о состоянии для информирования вызывающей программы о статусе завершения операции. Если в очереди находились другие запросы, один из них теперь может быть выбран и запущен. В противном случае драйвер блокируется в ожидании следующего запроса.  [18]

Кроме основной части программы, дающей приведенные выше значения, существуют еще три части. Первой из них является программа, обеспечивающая корректное завершение обработки при отсутствии записей на входе программы. Ее основная функция состоит в том, чтобы убедиться в правильности обработки и выводе всех записей. Для этого она организует принудительные обращения к основной программе: может оказаться, например, что последний прочитанный блок информации содержит менее пяти записей. Если на блок вывода управление передается только тогда, когда в буфере - пять записей, последний блок в котором содержится от одной до четырех записей, никогда не будет обработан. Программа завершения, в случае, когда в последнем блоке, например, имеется три записи, заставит программу блокирования передать управление программе вывода после обработки трех последних записей.  [19]



Страницы:      1    2